{"id":27240728,"url":"https://github.com/nelsogi/horlogegraphics","last_synced_at":"2025-04-10T19:49:33.333Z","repository":{"id":284716344,"uuid":"955831941","full_name":"nelsogi/HorlogeGraphics","owner":"nelsogi","description":"Simple Clock whit Graphics in C#","archived":false,"fork":false,"pushed_at":"2025-03-27T09:16:45.000Z","size":15,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-27T10:26:44.407Z","etag":null,"topics":["csharp","graphics","winform"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nelsogi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-27T09:13:47.000Z","updated_at":"2025-03-27T09:18:06.000Z","dependencies_parsed_at":"2025-03-27T10:36:51.369Z","dependency_job_id":null,"html_url":"https://github.com/nelsogi/HorlogeGraphics","commit_stats":null,"previous_names":["nelsogi/horlogegraphics"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nelsogi%2FHorlogeGraphics","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nelsogi%2FHorlogeGraphics/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nelsogi%2FHorlogeGraphics/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nelsogi%2FHorlogeGraphics/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nelsogi","download_url":"https://codeload.github.com/nelsogi/HorlogeGraphics/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248282353,"owners_count":21077621,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["csharp","graphics","winform"],"created_at":"2025-04-10T19:49:32.743Z","updated_at":"2025-04-10T19:49:33.304Z","avatar_url":"https://github.com/nelsogi.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Horloge en Graphics C# WinForm\n\nCe projet est une application d'horloge analogique développée en C# avec Windows Forms. L'horloge utilise le dessin graphique pour afficher un cadran et trois aiguilles (heure, minute et seconde) qui se mettent à jour en temps réel.\n\n---\n\n## Fonctionnalités\n\n- **Affichage du cadran** : Un cercle avec 12 graduations représentant les heures.\n- **Aiguilles personnalisées** : Trois aiguilles colorées pour l'heure (rouge), la minute (bleu) et la seconde (vert), avec des longueurs proportionnelles à la taille du cadran.\n- **Rafraîchissement automatique** : Utilisation d'un `Timer` pour rafraîchir l'horloge chaque seconde.\n- **Double buffering** : Pour un rendu graphique fluide sans scintillement.\n- **Redimensionnement dynamique** : L'horloge s'adapte automatiquement à la taille de la fenêtre.\n\n---\n\n## Structure du Projet\n\nLe projet est organisé en plusieurs classes :\n\n- **`Cadran`**  \n  Gère le dessin du cercle de l'horloge et des graduations horaires.\n\n- **`Aiguille`**  \n  Représente une aiguille de l'horloge. Chaque instance possède une longueur, une couleur et une épaisseur. La méthode `Dessiner` calcule et trace l'aiguille selon l'angle donné.\n\n- **`Vecteur`**  \n  Fournit une méthode statique pour la rotation, utile pour le calcul des positions des aiguilles.\n\n- **`Horloge`**  \n  Contrôle l'affichage de l'horloge. Elle initialise les aiguilles, le cadran et le timer pour mettre à jour l'affichage en fonction de l'heure actuelle. Elle utilise également le double buffering pour éviter les scintillements lors du rendu.\n\n- **`Form1`**  \n  Fenêtre principale de l'application qui contient l'horloge. La fenêtre définit un fond noir et ajoute le contrôle horloge en mode plein écran.\n\n---\n\n## Prérequis\n\n- **.NET Framework** (version compatible avec Windows Forms)\n- **Visual Studio** ou tout autre environnement de développement C# supportant Windows Forms\n\n---\n\n## Compilation et Exécution\n\n1. **Cloner le dépôt :**\n\n   ```bash\n   git clone https://votre-repository-url.git\n   cd nom-du-repertoire\n   ```\n\n2. **Ouvrir le projet dans Visual Studio :**\n\n   - Lancez Visual Studio.\n   - Ouvrez le fichier de solution (*.sln*) correspondant au projet.\n\n3. **Compiler le projet :**\n\n   - Cliquez sur **Build \u003e Build Solution** ou utilisez le raccourci `Ctrl+Shift+B`.\n\n4. **Exécuter l'application :**\n\n   - Cliquez sur **Debug \u003e Start Debugging** (ou `F5`) pour lancer l'application.\n\n---\n\n## Personnalisation\n\n- **Couleurs et styles** :  \n  Vous pouvez modifier les couleurs des aiguilles et du cadran dans le code des classes `Aiguille` et `Cadran`.\n  \n- **Dimensions** :  \n  La taille de l'horloge est dynamique et s'adapte à la taille de la fenêtre. Pour fixer une taille particulière, modifiez les propriétés du contrôle `Horloge` dans `Form1`.\n\n- **Intervalle du Timer** :  \n  Par défaut, l'horloge se rafraîchit toutes les secondes (1000 ms). Vous pouvez ajuster cet intervalle dans le constructeur de la classe `Horloge`.\n\n---\n\n## Remarques\n\n- Assurez-vous d'avoir un environnement de développement compatible avec Windows Forms.\n- Pour toute question ou suggestion, n'hésitez pas à ouvrir une issue dans le dépôt Git.\n\nProfitez de ce projet et bon codage !\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnelsogi%2Fhorlogegraphics","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnelsogi%2Fhorlogegraphics","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnelsogi%2Fhorlogegraphics/lists"}