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
This commit is contained in:
Geoffrey Frogeye 2014-05-03 19:57:33 +02:00
parent 22bcfb2b2f
commit f237beee15
7 changed files with 103 additions and 31 deletions

6
.travis.yml Normal file
View file

@ -0,0 +1,6 @@
language: cpp
compiler: gcc
before_install:
- sudo apt-get update -qq
- sudo apt-get install -y libsdl1.2-dev
script: make && make testing

View file

@ -13,7 +13,7 @@ SRCPATH = src/
main: main.o image.o main: main.o image.o
$(CXX) $(OBJPATH)main.o $(OBJPATH)image.o -o $(EXEPATH)$@ $(CXXFLAGS) $(CXX) $(OBJPATH)main.o $(OBJPATH)image.o -o $(EXEPATH)$@ $(CXXFLAGS)
test: test.o image.o testing: test.o image.o
$(CXX) $(OBJPATH)test.o $(OBJPATH)image.o -o $(EXEPATH)$@ $(CXXFLAGS) $(CXX) $(OBJPATH)test.o $(OBJPATH)image.o -o $(EXEPATH)$@ $(CXXFLAGS)
# Dépendances # Dépendances

View file

@ -12,7 +12,9 @@ Nos noms complets et le nom du lycée sont masqués pour des raisons d'intimité
###Le programme ###Le programme
Ce programme est un éditeur basique d'images [PBM/PGM/PPM](http://fr.wikipedia.org/wiki/Portable_pixmap) sexécutant en ligne de commande. Ce programme est un éditeur basique d'images [PBM/PGM/PPM](http://fr.wikipedia.org/wiki/Portable_pixmap) sexécutant en ligne de commande.
*Statut :* Prétotype *Version :* Prétotype
*Status :* [![Build Status](https://travis-ci.org/GeoffreyFrogeye/PILG.svg?branch=master)](https://travis-ci.org/GeoffreyFrogeye/PILG)
##Compilation ##Compilation
Il n'existe pas de fichier binaire à télécharger pour le moment, le seul moyen d'avoir un aperçu du programme est de le compiler. Il n'existe pas de fichier binaire à télécharger pour le moment, le seul moyen d'avoir un aperçu du programme est de le compiler.

View file

@ -1,3 +1,3 @@
function analyserCommande(string nom) { int analyserCommande(string nom) {
} }

View file

@ -2,6 +2,7 @@
#include <string> #include <string>
#include "affichageFenetreSDL.cpp" #include "affichageFenetreSDL.cpp"
#include "image.h"
using namespace std; using namespace std;

View file

@ -13,38 +13,103 @@ int main(int argc, char *args[]) {
freopen("CON", "w", stderr); freopen("CON", "w", stderr);
#endif #endif
cout << "TEST AFFICHAGE FENETRE" << endl; // Message d'entrée et de test cout << "PILG - Debug" << endl; // Message d'entrée et de test
int dimX = 640, dimY = 480; int dimX = 640, dimY = 128;
ouvrirFenetre(dimX, dimY, "Test affichage fenêtre"); ouvrirFenetre(dimX, dimY, "PILG - Fenêtre de debug");
Image image(dimX, dimY, 255, PILG_RVB); // Création imageRoue
int x, y, c; Image imageRoue(dimX, dimY, 255, PILG_RVB);
Pixel point; Pixel pointRoue = imageRoue.g_pixelVide();
point = image.g_pixelVide(); int x, y, step;
// cout << "R : " << point.r << " - V : " << point.v << " - B : " << point.b << endl; // DEBUG float substep, lum;
for (x = 0; x < dimX; x++) {
for (y = 0; y < dimY; y++) {
step = (x * 6.0) / dimX;
substep = (x - step * (dimX / 6.0)) / (dimX / 6.0)*255;
lum = 1-((float) y)/dimY;
switch (step) {
case 0:
pointRoue.r = 255;
pointRoue.v = substep;
pointRoue.b = 0;
break;
case 1:
pointRoue.r = 255-substep;
pointRoue.v = 255;
pointRoue.b = 0;
break;
case 2:
pointRoue.r = 0;
pointRoue.v = 255;
pointRoue.b = substep;
break;
case 3:
pointRoue.r = 0;
pointRoue.v = 255-substep;
pointRoue.b = 255;
break;
case 4:
pointRoue.r = substep;
pointRoue.v = 0;
pointRoue.b = 255;
break;
case 5:
pointRoue.r = 255;
pointRoue.v = 0;
pointRoue.b = 255-substep;
break;
}
// Dégradé vers le noir
pointRoue.r = pointRoue.r*lum;
pointRoue.v = pointRoue.v*lum;
pointRoue.b = pointRoue.b*lum;
// // Ajout de luminosité
// pointRoue.r = pointRoue.r + 50;
// pointRoue.v = pointRoue.v + 50;
// pointRoue.b = pointRoue.b + 50;
// Remise dans l'intervalle
pointRoue.r = (pointRoue.r > 255 ? 255 : pointRoue.r);
pointRoue.v = (pointRoue.v > 255 ? 255 : pointRoue.v);
pointRoue.b = (pointRoue.b > 255 ? 255 : pointRoue.b);
if (imageRoue.s_point(x, y, pointRoue) == 1) {
cerr << "Erreur : s_point() a été entré avec des valeurs incorrectes" << endl;
cout << "X : " << x << " - Y: " << y << " - R : " << pointRoue.r << " - V : " << pointRoue.v << " - B : " << pointRoue.b << endl; // DEBUG
return 1;
}
imageRoue.g_point(x, y, pointRoue);
pointFenetre(x, y, pointRoue.r, pointRoue.v, pointRoue.b);
}
}
afficherFenetre();
// Cycle de couleurs avec utilisation d'Image // Cycle de couleurs avec utilisation d'Image
for (c = 0; c < 256; c++) { // À peu près 28 FPS avec SDL // Image imageRoue(dimX, dimY, 255, PILG_RVB);
for (x = 0; x < dimX; x++) { // Pixel pointRoueRoue = imageRoue.g_pixelVide();
for (y = 0; y < dimY; y++) { // int x, y, c;
point.r = c; // for (c = 0; c < 256; c++) { // À peu près 28 FPS avec SDL
point.v = image.g_maxComposante() - c; // for (x = 0; x < dimX; x++) {
point.b = 0; // for (y = 0; y < dimY; y++) {
if (image.s_point(x, y, point) == 1) { // point.r = c;
cerr << "Erreur : s_point() a été entré avec des valeurs incorrectes" << endl; // point.v = image.g_maxComposante() - c;
cout << "X : " << x << " - Y: " << y << " - R : " << point.r << " - V : " << point.v << " - B : " << point.b << endl; // DEBUG // point.b = 0;
return 1; // if (image.s_point(x, y, point) == 1) {
} // cerr << "Erreur : s_point() a été entré avec des valeurs incorrectes" << endl;
image.g_point(x, y, point); // cout << "X : " << x << " - Y: " << y << " - R : " << point.r << " - V : " << point.v << " - B : " << point.b << endl; // DEBUG
pointFenetre(x, y, point.r, point.v, point.b); // return 1;
} // }
} // image.g_point(x, y, point);
afficherFenetre(); // pointFenetre(x, y, point.r, point.v, point.b);
} // }
// }
// afficherFenetre();
// }
// // Cycle de couleurs sans utilisation d'Image // // Cycle de couleurs sans utilisation d'Image
// int x, y, c;
// for (c = 0; c < 256; c++) { // À peu près 75 FPS avec SDL // for (c = 0; c < 256; c++) { // À peu près 75 FPS avec SDL
// for (x = 0; x < dimX; x++) { // for (x = 0; x < dimX; x++) {
// for (y = 0; y < dimY; y++) { // for (y = 0; y < dimY; y++) {
@ -54,8 +119,6 @@ int main(int argc, char *args[]) {
// afficherFenetre(); // afficherFenetre();
// } // }
cout << "Éxecution du programme terminée. Vous pouvez quitter la fenêtre." << endl; cout << "Éxecution du programme terminée. Vous pouvez quitter la fenêtre." << endl;
attendreFenetre(); attendreFenetre();
fermerFenetre(); fermerFenetre();

View file

@ -107,7 +107,7 @@ int contraste(Image entree, Image &sortie, float contraste) { // Accentue les co
} }
// Dessin // Dessin
int trait(Image entree, Image &sortie, int x1, int y1, int x2, int y2, Pixel, pixel) { // Dessine un trait d'un point (x1,y1 à un point (x2,y2) int trait(Image entree, Image &sortie, int x1, int y1, int x2, int y2, Pixel pixel) { // Dessine un trait d'un point (x1,y1 à un point (x2,y2)
} }
int rectangle(Image entree, Image &sortie, int x1, int y1, int x2, int y2) { int rectangle(Image entree, Image &sortie, int x1, int y1, int x2, int y2) {