* @brief La classe Image contient un tableau 1D, utilisé comme un tableau 2D, de Pixel. Les dimensions dimx et dimy sont les dimensions de l'image concernée, en nombre de pixels
*/
classImage{
private:
intdimx;
intdimy;
Pixel*tab;
intdimx;///< entier représentant la dimension horizontale de l'image
intdimy;///< entier représentant la dimension veticale de l'image
Pixel*tab;///< tableau contenant les pixels de l'image
public:
/**
* @brief Constructeur de la classe : initialise dimx et dimy à 0 n’alloue aucune mémoire pour le tableau de pixel
*
* @return pas de valeur de retour
*/
Image();
/**
* @brief Constructeur de la classe : initialise dimx et dimy (après vérification) puis alloue le tableau de pixel dans le tas (image noire)
*
* @param dimensionX entier représentant la dimension horizontale de l'image créée
* @param dimensionY entier représentant la dimension verticale de l'image créée
* @return pas de valeur de retour
*/
Image(intdimensionX,intdimensionY);
/**
* @brief Destructeur de la classe : déallocation de la mémoire du tableau de pixels et mise à jour des champs dimx et dimy à 0
*
* @return pas de valeur de retour
*/
~Image();
/**
* @brief Récupère le pixel original de coordonnées (x,y) en vérifiant sa validité.
*
* @param x entier représentant la position horizontale du pixel récupéré
* @param y entier représentant la position verticale du pixel récupéré
* @return retourne le pixel de coordonnées x y
*/
PixelgetPix(intx,inty);//renvoie le piexl original, pas une copie
/**
* @brief Récupère une copie du pixel de coordonnées (x,y) en vérifiant sa validité.
*
* @param x entier représentant la position horizontale du pixel copié récupéré
* @param y entier représentant la position verticale du pixel copié récupéré
* @return retourne une copie du pixel de coordonnées x y
*/
PixelgetPixc(intx,inty)const;//renvoie une copie du pixel
/**
* @brief Modifie le pixel de coordonnées (x,y)
*
* @param x entier représentant la position horizontale du pixel à modifier
* @param y entier représentant la position verticale du pixel à modifier
* @param couleur Pixel représentant la couleur que prendra le pixel de coordonnées x y
* @return pas de valeur de retour
*/
voidsetPix(intx,inty,Pixelcouleur);
/**
* @brief Dessine un rectangle plein de la couleur dans l'image
*
* @param Xmin entier représentant la coordonnée horizontale à partir de laquelle le rectangle à dessiner doit commencer
* @param Ymin entier représentant la coordonnée verticale à partir de laquelle le rectangle à dessiner doit commencer
* @param Xmax entier représentant la coordonnée horizontale du pixel où le rectangle à dessiner doit s'arrêter
* @param Ymax entier représentant la coordonnée verticale du pixel où le rectangle à dessiner doit s'arrêter
* @param couleur Pixel représentant la couleur que prendra le rectangle dessiné