Commit graph

19 commits

Author SHA1 Message Date
Geoffrey Frogeye 077ef18a41 Finalisation de ouvrir() et sauver()
Les fonctions marchent mais ne sont pas inclues dans les commandes disponibles, on fera ça avec tout le reste.
* traitementImage.cpp
	* La fonction créer est désormais complète
	* La fonction sauver est désormais complète
* utilitaires.cpp
	* Ajout d'une fonction caraVersEntier() pour convertir manuellement un octet vers un int. Nécessaire car la conversion par type était assez difficile à maitriser
* test.cpp
	* Ajout d'une fonction appliquer afin de faire des tests en série
* image.h
	* Les unsigned int sont désormais remis en int
Cela a permis d'éviter quelques bugs lors de l'ouverture et de la fermeture de fichiers. Ils pourraient potentiellement être remis, mais ils ne servent pas à grand chose au final à par compliquer la tâche.
* Rajout de utilitaires.cpp aux dépendances du Makefile
2014-05-19 22:43:59 +02:00
Geoffrey Frogeye 68b61139b8 Avancement sur l'ouverture et la fermeture de fichiers (demi-commit)
Contient les travaux de la séance du 19/05/2014 ainsi que de précédents travaux
* traitementImage.cpp
	* Ajout de la détection de l'en-tête et de ses informations dans la fonction ouvrir()
	* Ajout de la fonction sauver() (non-fonctionelle)
	* Mise en commentaire de la fonction trait() pour le moment
	* Correction des fonctions cercle(), disque() et redimensionner() (non-testées)
* Ajout d'un fichier utilitaires.cpp
	* Fonction presentation() qui montre un joli ASCII art
	* Déplacement de imageDefaut()
	* Déplacement de chaineVersXXX()
* testing.cpp
	* Ajout d'un dossier tests avec différentes images de test
	* Ajout d'instructions pour tester l'ouverture et la sauvegarde de fichiers
2014-05-19 17:37:00 +02:00
LuKiLL fbf5df1888 FAIL DE COMMIT 2014-05-19 11:41:42 +02:00
LuKiLL f06c222fa7 Update 3/4 séance 19/05/2014
Code de certaines fonctions.
2014-05-19 11:40:08 +02:00
Geoffrey Frogeye 1f5f2f9c91 [ALPHA] Fin du travail du 12/05/14
Des commandes qui fonctionnent vraiment ainsi quelques conversions entre types de composantes, cela suffit pour passer en alpha !
* Passage au stade d'alpha
Certaines commandes peuvent désormais être executées pleinement. On ne rajoutera pas de fonctionnalités (hormis les commandes) majeures.
* traitementImage.cpp
	* Mise en fonction de convBIN et convNIV
		* Correction de certaines erreurs
			* Travis devrait être content
		Note : convNIV et convRVB auront des valeurs par défaut en tant que maximum de composante, les fonctions n'étant pas très utiles à la base rien ne sert de les compliquer
	* Enième modification du type de fonctions
		* Resteront des int
		* Permet de prendre en compte les erreurs qui ne devraient normalement pas arriver
	* Passage de certaines lignes oubliées au formatteur
	* pivoter()
		* Suppression d'une stupidité mathématique (modulo 2π)
		(Semble plus rapide, sans raison apparente)
* analyseCommande.cpp
	* Les arguments sont désormais correctement analysés
	* pivoter, convBIN et convNIV peuvent désormais être appelé
	* Mise en fonction de chaineVersEntier()
	* Ajout de chaineVersFlottant()
	* Ajout de l'analyse de l'argument -angle
	* Ajout de l'analyse de l'argument -couleur
	* Ajout de messages d'erreurs correspondant à ce qui a été ennoncé précédement
2014-05-13 22:23:45 +02:00
Geoffrey Frogeye 425af05430 Update fin séance 12/05/2014
* Commencement des travaux sur l'analyse des arguments
* Ajout d'un Makefile pour Windows fonctionnel
On verra pour la correction du code plus tard.
2014-05-12 12:01:56 +02:00
LuKiLL 9bbdb6b3ee Update 3/4 séance 12/05/2014
Ajout des fonctions suivantes :
- Cercle ;
- Disque ;
- Conversion Binaire ;
- Conversion Niveaux de gris.
2014-05-12 11:33:32 +02:00
Geoffrey Frogeye 2af24e2cc8 Ajout de la fonction pivoter
* Ajout de la fonction pivoter()
* Ajout de Image::g_dupplicata()
* Corrections diverses, au Makefile notamment
2014-05-10 12:13:06 +02:00
Geoffrey Frogeye 43550b265f Avancement dans l'éxecution de commandes
Le programme dispose désormais d'une image par défaut affichée à l'écran. L'analyse de commandes a été travaillé, pour la tester la fonction rectangle fonctionne, sans arguments cependant, ce sera donc un carré prédéfini qui apparaitra sur l'image de test. Diverses améliorations notables cependant.

* Modifié main.cpp
	* Ajout d'une Image par défaut (sorte de roue chromatique horizontale) aux proportions d'or
* Modifié analyserCommande.cpp
	* Ajout d'une fonction d'affichage d'une Image à l'écran
	* Ajout d'un objet Commande pour faciliter le transfert entre les fonctions
	* Ajout d'executerCommande()
		* Vérifie si les arguments requis sont présents grâce à argumentPresent()
		* Execute la fonction correspondante dans traitementImage.cpp
	* Ajout de procederCommande() qui gère l'execution d'analyserDecoupe() et d'executerCommande()
* Modifié traitementImage.cpp
	* Puisque chaque fonction n'est pas censé échouer, les types de retour sont des void
	* rectangle() codé
* Modifié affichageFenetre.cpp
	* attendreFenetre() autorise une action sur le clavier
	* Ajout de la valeur globale booléenne fenetreOuverte
	* Corrigé un éventuel bug pouvant arriver lorsque les dimensions étaient rectangulaires
* Modifié l'objet Image
	* Les validateurs sont désormais au nombre de deux, v_pixel() et v_dimensions() pour chaque Image, et sont publics
* Modifié testing.cpp
	* Ajout fonctions génératrices d'images de test pour chaque type de composante
* Mis à jour TODO.md
* Amélioration du Makefile
* Modification de .travis.yml pour placer le `make testing` en post-script
2014-05-08 19:44:09 +02:00
Geoffrey Frogeye 2e5cbafa3c Analyse syntaxique de la commande
Code de la séance du 05/05/14 + Code à la maison
* Différenciation entre flags de production et flags de tests
* Mise à jour de TODO.md
* Abandon de BGI
* Définition partielle de l'analyse de commande
* Ajout de la fonction decoupeCommande()
* Ajout de la fonction boucleDeCommandes()
* Modification de l'appel des fichiers externes
* Ajout d'un mode hors-REPL
* Ajout du code correct pour creer()
* Changement de l'indentation de traitementImage.cpp
2014-05-05 21:00:08 +02:00
LuKiLL c65e17bc7b Update fin-séance 05/05/14
Ajout de la fonction redimensionner.
2014-05-05 12:01:42 +02:00
LuKiLL 1bdea35e4f Update 3/4-séance 05/05/2014
Ajout des fonctions copier, import, trait et rectangle.
MàJ de la liste des fonctions.
2014-05-05 11:29:04 +02:00
Geoffrey Frogeye f237beee15 Instructions pour Travis CI
* Ajout de .travis.yml
* Modification de l'instruction test en testing (ne fait pas la même chose que les test habituels)
* Ajout d'une image par défaut dans test.cpp
* Corrections d'erreurs qui empêchaient la compilation
2014-05-03 19:57:33 +02:00
Geoffrey Frogeye 22bcfb2b2f Mise en fonction de l'objet Image
Import du code de Geoffrey lors de la séance du 14/02/14, la plupart étant du travail à la maison
* Ajout d'un Makefile
	* Seul l'objet image a été découpé
	* Instruction test
* Modification de l'objet Image
	* Initialisation du tableau dans le constructeur
	* Changement de certains int en unsigned int (puisque ne pouvant pas avoir de valeurs négative)
	* typeComposantes est maintenant un ensemble de constantes
	* Correction de diverses fautes
	* Ajout de g_pixelVide pour créer un objet Pixel déjà compatible avec une image
* Modification de test_affichageFenetre.cpp en test.cpp
	* Vérifie désormais si l'objet Image est fonctionnel
* Changement de la façon dont la surface est bloquée dans affichageFenetreSDL.cpp
* Passage de tous les fichiers C++ au formatteur (d'où le nombre exageré de lignes modifiées)
* Correction de README.md
	* Syntaxe
	* Message de mise en garde sur la non-disponibilité d'un fichier binaire
* Mise à jour de TODO.md
* Correction de LICENCE.md
	* Respect de l'ordre alphabétique, et de la cohérence vis-à-vis des autres fichiers
* Ajout des dossiers bin/ et obj/ pour éviter de les créer après un clone
2014-04-28 15:01:14 +02:00
LuKiLL f5a82baaf6 Definition des algos de traitement d'image
Import du code de Lucas des séances du 14/04 et du 07/04.
2014-04-14 12:02:13 +02:00
Geoffrey Frogeye 015aa04a56 Codage de l'objet Image et test BGI
Import du code de Geoffrey de la séance du 7/04/14
* Création et ajout de code essentiel dans l'objet Image
* Modification de l'objet Pixel en type
* Implémentation non-fonctionelle d'affichageFenetre pour BGI
2014-04-14 00:16:49 +02:00
Geoffrey Frogeye 7786bb4454 Mise en fonction de l'objet Fenetre via SDL
* affichageFenetreSDL.cpp est désormais fonctionnel
Note : Vu la possibilité de ne pouvoir afficher qu'une seule fenêtre avec SDL, la POO pour l'objet fenêtre a été supprimée
* Ajout de test_affichageFenetre.cpp pour tester cet ajout
* Suppression de ce qui était relatif à SDL dans main.cpp
* Mise de analyserCommande() dans un autre fichier pour faciliter l'édition
2014-03-31 19:12:27 +02:00
Geoffrey Frogeye 502802c2d8 Ajout des instructions de compilation Windows
- Ajout des instructions de compilation Windows dans README.md
- Impossibilité d'utiliser la console avec Windows fixée
- Liste immédiate de TODO.md supprimée (utilisation des Issues de
GitHub)
- Rajout de saut de ligne à la fin des fichiers
2014-03-27 19:03:14 +01:00
Geoffrey Frogeye f5b32a9a4e Légère réorganisation
Mise des fichiers de programmation dans /src
Petite modification de TODO.md
2014-03-24 18:48:08 +01:00