From 502802c2d8f833295542089ca3a004ed3b1c3a0f Mon Sep 17 00:00:00 2001 From: Geoffrey Frogeye Date: Thu, 27 Mar 2014 19:03:14 +0100 Subject: [PATCH] Ajout des instructions de compilation Windows MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 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 --- .gitattributes | 22 ++++++++++++ .gitignore | 3 ++ README.md | 18 ++++++++-- TODO.md | 5 +-- src/affichageFenetreBGI.cpp | 24 ++++++------- src/affichageFenetreBGI.h | 24 ++++++------- src/affichageFenetreSDL.cpp | 14 ++++---- src/affichageFenetreSDL.h | 24 ++++++------- src/image.h | 58 +++++++++++++++--------------- src/main.cpp | 34 ++++++++++++------ src/traitementImage.cpp | 72 ++++++++++++++++++------------------- 11 files changed, 172 insertions(+), 126 deletions(-) create mode 100644 .gitattributes create mode 100644 .gitignore diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..412eeda --- /dev/null +++ b/.gitattributes @@ -0,0 +1,22 @@ +# Auto detect text files and perform LF normalization +* text=auto + +# Custom for Visual Studio +*.cs diff=csharp +*.sln merge=union +*.csproj merge=union +*.vbproj merge=union +*.fsproj merge=union +*.dbproj merge=union + +# Standard to msysgit +*.doc diff=astextplain +*.DOC diff=astextplain +*.docx diff=astextplain +*.DOCX diff=astextplain +*.dot diff=astextplain +*.DOT diff=astextplain +*.pdf diff=astextplain +*.PDF diff=astextplain +*.rtf diff=astextplain +*.RTF diff=astextplain diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..349e8c3 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +compile.* +bin/* +*.sublime-* diff --git a/README.md b/README.md index a013395..83a9808 100644 --- a/README.md +++ b/README.md @@ -1,17 +1,29 @@ #Projet d'ISN de Lucas et Geoffrey -##À propos de ce dépôt +##À propos... + +###De ce dépôt Ce dépôt a été crée pour faciliter le développement du projet. Son caractère public n'est que lié aux nécessité de GitHub. Si vous ne savez pas de quel projet il s'agit, vous perdez votre temps ici. L'absence de license (du moins jusqu'aux épreuves) vous interdit de distribuer ou de réutiliser le code, qui de toute façon ne vous aurait pas été utile. -##À propos de ce projet +###De ce projet Ceci est la création de Lucas et de Geoffrey pour l'option Informatique et Sciences du Numérique qui sera présenté lors du Baccalauréat 2013/2014. Nos noms complets et le nom du lycée sont masqués pour des raisons d'intimité. Les personnes devant nous reconnaître nous reconnaîtront. -##À propos du programme +###Du programme Ce programme est un éditeur basique d'images [PBM/PGM/PPM](http://fr.wikipedia.org/wiki/Portable_pixmap) s'éxecutant en ligne de commande. *Status :* Prétotype +##Compilation +###Windows +1. Télecharger et installer [MinGW](http://www.mingw.org/) +2. Inclure **MinGW** dans la variable d'environnement ```%PATH%``` : ```set path=%path%;C:\MinGW\bin``` +3. Créer le dossier *bin* à la racine du dépôt : ```mkdir bin``` +4. Télécharger la [bibliothèque de développement SDL 1.2.15](http://www.libsdl.org/release/SDL-devel-1.2.15-mingw32.tar.gz), copier le contenu des dossier *lib* et *include* de l'archive téléchargée dans le dossier de **MinGW** +5. Télécharger la [bibliothèque d'execution de SDL 1.2.15](http://www.libsdl.org/release/SDL-1.2.15-win32.zip) et placer *SDL.dll* dans le dossier *bin* +6. Compiler : ```g++ src/main.cpp -o bin/main.exe -lmingw32 -lSDLmain -lSDL -static-libgcc -static-libstdc++``` + +L'executable se trouvera dans le dossier *bin* ---------- *Copyright 2014 Lucas et Geoffrey* diff --git a/TODO.md b/TODO.md index 7252ccb..a58b51a 100644 --- a/TODO.md +++ b/TODO.md @@ -5,9 +5,6 @@ **A** Algorithme réalisé **C** Code réalisé -####Liste immédiate -* Déterminer le mode d'utilisation des fonctions (méthode de l'objet image avec/sans sortie/entrée ou fonction indépendante ?) - ####Liste générale *Ordre donné à titre indicatif* @@ -53,4 +50,4 @@ * Niveaux de gris * Couleur * Aide -* Documentation \ No newline at end of file +* Documentation diff --git a/src/affichageFenetreBGI.cpp b/src/affichageFenetreBGI.cpp index 1cd612f..b0f178b 100644 --- a/src/affichageFenetreBGI.cpp +++ b/src/affichageFenetreBGI.cpp @@ -1,12 +1,12 @@ -class Fenetre { - -public: - int Fenetre(int dimensionX, int dimensionY, string nom); // Crée une fenêtre - int setNom(string nom); // Change le nom de la fenêtre - int point(int x, int y); -private: - int dimensionX; // Stocke les dimensions X de la fenêtre - int dimensionY; // Stocke les dimensions Y de la fenêtre - string m_nom; // Stocke le nom de la fenêtre - vector< vector< int[3] > > tab; // Tableau qui stocke les pixels -}; \ No newline at end of file +class Fenetre { + +public: + int Fenetre(int dimensionX, int dimensionY, string nom); // Crée une fenêtre + int setNom(string nom); // Change le nom de la fenêtre + int point(int x, int y); +private: + int dimensionX; // Stocke les dimensions X de la fenêtre + int dimensionY; // Stocke les dimensions Y de la fenêtre + string m_nom; // Stocke le nom de la fenêtre + vector< vector< int[3] > > tab; // Tableau qui stocke les pixels +}; diff --git a/src/affichageFenetreBGI.h b/src/affichageFenetreBGI.h index 1cd612f..b0f178b 100644 --- a/src/affichageFenetreBGI.h +++ b/src/affichageFenetreBGI.h @@ -1,12 +1,12 @@ -class Fenetre { - -public: - int Fenetre(int dimensionX, int dimensionY, string nom); // Crée une fenêtre - int setNom(string nom); // Change le nom de la fenêtre - int point(int x, int y); -private: - int dimensionX; // Stocke les dimensions X de la fenêtre - int dimensionY; // Stocke les dimensions Y de la fenêtre - string m_nom; // Stocke le nom de la fenêtre - vector< vector< int[3] > > tab; // Tableau qui stocke les pixels -}; \ No newline at end of file +class Fenetre { + +public: + int Fenetre(int dimensionX, int dimensionY, string nom); // Crée une fenêtre + int setNom(string nom); // Change le nom de la fenêtre + int point(int x, int y); +private: + int dimensionX; // Stocke les dimensions X de la fenêtre + int dimensionY; // Stocke les dimensions Y de la fenêtre + string m_nom; // Stocke le nom de la fenêtre + vector< vector< int[3] > > tab; // Tableau qui stocke les pixels +}; diff --git a/src/affichageFenetreSDL.cpp b/src/affichageFenetreSDL.cpp index 172b8f5..f439093 100644 --- a/src/affichageFenetreSDL.cpp +++ b/src/affichageFenetreSDL.cpp @@ -1,7 +1,7 @@ -int creerFenetre(int dimensionX, int dimensionY, string nom) { - return 1; -} - -int point(int x, int y) { - return 1; -} +int creerFenetre(int dimensionX, int dimensionY, string nom) { + return 1; +} + +int point(int x, int y) { + return 1; +} diff --git a/src/affichageFenetreSDL.h b/src/affichageFenetreSDL.h index 1cd612f..b0f178b 100644 --- a/src/affichageFenetreSDL.h +++ b/src/affichageFenetreSDL.h @@ -1,12 +1,12 @@ -class Fenetre { - -public: - int Fenetre(int dimensionX, int dimensionY, string nom); // Crée une fenêtre - int setNom(string nom); // Change le nom de la fenêtre - int point(int x, int y); -private: - int dimensionX; // Stocke les dimensions X de la fenêtre - int dimensionY; // Stocke les dimensions Y de la fenêtre - string m_nom; // Stocke le nom de la fenêtre - vector< vector< int[3] > > tab; // Tableau qui stocke les pixels -}; \ No newline at end of file +class Fenetre { + +public: + int Fenetre(int dimensionX, int dimensionY, string nom); // Crée une fenêtre + int setNom(string nom); // Change le nom de la fenêtre + int point(int x, int y); +private: + int dimensionX; // Stocke les dimensions X de la fenêtre + int dimensionY; // Stocke les dimensions Y de la fenêtre + string m_nom; // Stocke le nom de la fenêtre + vector< vector< int[3] > > tab; // Tableau qui stocke les pixels +}; diff --git a/src/image.h b/src/image.h index 03a5bbf..8b51cc1 100644 --- a/src/image.h +++ b/src/image.h @@ -1,29 +1,29 @@ -class Pixel { -public: - int Pixel(int typeComposantes, int maxComposante); // Crée l'objet Pixel - int getR(); // Récupère la composante Rouge - int getV(); // Récupère la composante Vert - int getB(); // Récupère la composante Bleu - int getG(); // Récupère la composante Gris - bool getN(); // Récupère la composante Noir - int setR(int R); // Change la composante Rouge - int setV(int V); // Change la composante Vert - int setB(int B); // Change la composante Bleu - int setG(int G); // Change la composante Gris - int setN(bool N); // Change la composante Noir - -private: - int m_typeComposantes; // 0 : N&B, 1 : Niveaux de gris, 2 : RVB - int m_maxComposante; // Maximum de composante (inutilisé pour binaire) - int m_R; - int m_V; - int m_B; - int m_G; - bool m_N; -}; - -class Image { -public: - int Image(int dimensionX, int dimensionY, int maxComposante); // Crée l'objet Image - int point(int x, int y, Pixel pixel); // Définit une couleur au point -}; \ No newline at end of file +class Pixel { +public: + int Pixel(int typeComposantes, int maxComposante); // Crée l'objet Pixel + int getR(); // Récupère la composante Rouge + int getV(); // Récupère la composante Vert + int getB(); // Récupère la composante Bleu + int getG(); // Récupère la composante Gris + bool getN(); // Récupère la composante Noir + int setR(int R); // Change la composante Rouge + int setV(int V); // Change la composante Vert + int setB(int B); // Change la composante Bleu + int setG(int G); // Change la composante Gris + int setN(bool N); // Change la composante Noir + +private: + int m_typeComposantes; // 0 : N&B, 1 : Niveaux de gris, 2 : RVB + int m_maxComposante; // Maximum de composante (inutilisé pour binaire) + int m_R; + int m_V; + int m_B; + int m_G; + bool m_N; +}; + +class Image { +public: + int Image(int dimensionX, int dimensionY, int maxComposante); // Crée l'objet Image + int point(int x, int y, Pixel pixel); // Définit une couleur au point +}; diff --git a/src/main.cpp b/src/main.cpp index 57e89d0..69b4aa2 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1,11 +1,23 @@ -#include - -using namespace std; - -int main() { - -} - -int analyserCommande(string commande) { - -} \ No newline at end of file +#include +#include +#include "SDL/SDL.h" + +using namespace std; + +int main(int argc, char* args[]) { + +#if defined(WIN32) // Permet de refaire fonctionner cin et cout sous Windows après démarrage de SDL + freopen("CON", "w", stdout); + freopen("CON", "w", stderr); +#endif + + SDL_Init(SDL_INIT_EVERYTHING); + + SDL_Quit(); + + return 0; +} + +int analyserCommande(string commande) { + +} diff --git a/src/traitementImage.cpp b/src/traitementImage.cpp index f1eb738..48ba959 100644 --- a/src/traitementImage.cpp +++ b/src/traitementImage.cpp @@ -1,36 +1,36 @@ -// Gestion de fichiers -int creer(int dimensionX, int dimensionY, int typeComposante, int maxComposante); -int ouvrir(string nomFichier); -int sauver(string nomFichier); -int import(string nomFichier, int x, int y); - -// Edition -int copier(); -int couper(); -int coller(); -int annuler(); -int refaire(); - -// Couleur -int teinte(int teinte); -int saturation(int saturation); -int luminosite(int luminosite); -int contraste(int contraste); - -// Dessin -int trait(int x1, int y1, int x2, int y2); -int rectangle(int x1, int y1, int x2, int y2); -int cercle(int x, int y, int r); - -// Geométrie -int zoom(); -int pivoter(); -int redimensionner(); - -// Modification couleur -int convBIN(); -int convNIV(); -int convRVB(); - -//Help -int aide(); +// Gestion de fichiers +int creer(int dimensionX, int dimensionY, int typeComposante, int maxComposante); +int ouvrir(string nomFichier); +int sauver(string nomFichier); +int import(string nomFichier, int x, int y); + +// Edition +int copier(); +int couper(); +int coller(); +int annuler(); +int refaire(); + +// Couleur +int teinte(int teinte); +int saturation(int saturation); +int luminosite(int luminosite); +int contraste(int contraste); + +// Dessin +int trait(int x1, int y1, int x2, int y2); +int rectangle(int x1, int y1, int x2, int y2); +int cercle(int x, int y, int r); + +// Geométrie +int zoom(); +int pivoter(); +int redimensionner(); + +// Modification couleur +int convBIN(); +int convNIV(); +int convRVB(); + +//Help +int aide();