Éditeur de dessin vectoriel en C avec SFML, pour créer et manipuler des formes (rectangles, cercles, lignes).
Telecharger & tester
make && ./my_paint (application graphique en CSFML avec fenetre native, non portable en WebAssembly navigateur)
mypaint est un projet Epitech (Tek1) qui introduit le developpement d'interface graphique en C avec la CSFML, sous la forme d'un logiciel de dessin proche d'un mini editeur type Paint ou GIMP.
Le programme doit fournir une fenetre redimensionnable et fermable, au moins les outils crayon et gomme, des boutons geres avec plusieurs etats (survol, appui, clic), ainsi qu'une barre de menus deroulants Fichier / Edition / Aide couvrant respectivement nouveau/ouvrir/enregistrer un fichier, la selection des outils crayon et gomme, et une aide affichant le login de l'auteur et le mode d'emploi.
La selection d'un outil doit faire apparaitre un sous-menu contextuel permettant de le parametrer (epaisseur du trait pour le crayon, forme cercle/carre et taille pour la gomme), le dessin se faisant a la souris et l'image devant pouvoir etre enregistree au format JPEG par defaut.
Les niveaux d'exigence superieurs ajoutent progressivement la saisie du nom de fichier, la gestion de calques, une palette de couleurs, l'export en BMP/PNG, des formes de base, le zoom, un outil de selection avec couper/copier/coller, puis en bonus des masques de calque, l'import d'image, la gestion de brosses, les transformations geometriques et l'annuler/refaire, en s'inspirant explicitement de logiciels comme GIMP ou Photoshop.
Toute la CSFML et la bibliotheque mathematique sont autorisees, mais la libc est restreinte a malloc, free, memset, (s)rand, (f)open/(f)read/(f)write/(f)close, getline, opendir, readdir, closedir et (f)stat, toute autre fonction etant interdite.
Projet suivant
