gKit2 light
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members

representation d'une image. More...

#include <image.h>

Public Member Functions

 Image (const int w, const int h, const Color &color=Black())
 
Coloroperator() (const int x, const int y)
 
Color operator() (const int x, const int y) const
 renvoie la couleur d'un pixel de l'image (image non modifiable). More...
 
const void * buffer () const
 renvoie un pointeur sur le stockage des couleurs des pixels. More...
 
int width () const
 renvoie la largeur de l'image. More...
 
int height () const
 renvoie la hauteur de l'image. More...
 
std::size_t size () const
 renvoie le nombre de pixels de l'image. More...
 
bool operator== (const Image &im) const
 comparaison avec la sentinelle. More...
 

Static Public Member Functions

static Imageerror ()
 

Protected Attributes

std::vector< Colorm_data
 
int m_width
 
int m_height
 

Detailed Description

representation d'une image.

Definition at line 18 of file image.h.

Member Function Documentation

Color& Image::operator() ( const int  x,
const int  y 
)
inline

renvoie une reference sur la couleur d'un pixel de l'image. permet de modifier et/ou de connaitre la couleur d'un pixel :

Image image(512, 512);
image(10, 10)= make_red(); // le pixel (10, 10) devient rouge
image(0, 0)= image(10, 10); // le pixel (0, 0) recupere la couleur du pixel (10, 10)

Definition at line 38 of file image.h.

39  {
40  std::size_t offset= y * m_width + x;
41  assert(offset < m_data.size());
42  return m_data[offset];
43  }
Color Image::operator() ( const int  x,
const int  y 
) const
inline

renvoie la couleur d'un pixel de l'image (image non modifiable).

Definition at line 46 of file image.h.

47  {
48  std::size_t offset= y * m_width + x;
49  assert(offset < m_data.size());
50  return m_data[offset];
51  }
const void* Image::buffer ( ) const
inline

renvoie un pointeur sur le stockage des couleurs des pixels.

Definition at line 54 of file image.h.

55  {
56  assert(!m_data.empty());
57  return &m_data.front();
58  }
int Image::width ( ) const
inline

renvoie la largeur de l'image.

Definition at line 61 of file image.h.

61 { return m_width; }
int Image::height ( ) const
inline

renvoie la hauteur de l'image.

Definition at line 63 of file image.h.

63 { return m_height; }
std::size_t Image::size ( ) const
inline

renvoie le nombre de pixels de l'image.

Definition at line 65 of file image.h.

65 { return m_width * m_height; }
static Image& Image::error ( )
inlinestatic

sentinelle pour la gestion d'erreur lors du chargement d'un fichier. exemple :

Image image= read_image("debug.png");
if(image == Image::error())
return "erreur de chargement";

Definition at line 75 of file image.h.

76  {
77  static Image image;
78  return image;
79  }
representation d'une image.
Definition: image.h:18
bool Image::operator== ( const Image im) const
inline

comparaison avec la sentinelle.

if(image == Image::error()) { ... }

Definition at line 82 of file image.h.

83  {
84  // renvoie vrai si im ou l'objet est la sentinelle
85  return (this == &im);
86  }

The documentation for this class was generated from the following file: