claw 1.9.0
 
Loading...
Searching...
No Matches
claw::graphic::xbm Class Reference

A class for xbm pictures. More...

#include <xbm.hpp>

Inheritance diagram for claw::graphic::xbm:
Collaboration diagram for claw::graphic::xbm:

Classes

class  reader
 This class read data from a xbm file and store it in an image. More...
 
class  writer
 This class write an image in a xbm file. More...
 

Public Member Functions

 xbm (unsigned int w, unsigned int h)
 Constructor. Creates an empty image.
 
 xbm (const image &that)
 Copy constructor.
 
 xbm (std::istream &f)
 Constructor. Load an image from a xbm file.
 
 ~xbm ()
 Destructor.
 
void save (std::ostream &os) const
 Save the image.
 
void set_name (const std::string &name)
 Set the name of the image.
 
void set_hot (const claw::math::coordinate_2d< int > &hot)
 Set the hot spot of the image.
 
- Public Member Functions inherited from claw::graphic::image
 image ()
 Constructor. Creates an image without datas.
 
 image (unsigned int w, unsigned int h)
 Constructor. Creates an empty image.
 
 image (std::istream &f)
 Constructor. Reads an image from an input stream.
 
void swap (image &that)
 Swap the content of two images.
 
unsigned int width () const
 Gets image's width.
 
unsigned int height () const
 Gets image's height.
 
scanlineoperator[] (unsigned int i)
 Gets a line of the image.
 
const scanlineoperator[] (unsigned int i) const
 Gets a line of the image.
 
iterator begin ()
 Get an iterator pointing on the first pixel.
 
iterator end ()
 Get an iterator pointing just past the last pixel.
 
const_iterator begin () const
 Get an iterator pointing on the first pixel.
 
const_iterator end () const
 Get an iterator pointing just past the last pixel.
 
void merge (const image &that)
 Merge an image on the current image.
 
void merge (const image &that, const math::coordinate_2d< int > &pos)
 Merge an image on the current image.
 
void partial_copy (const image &that, const math::coordinate_2d< int > &pos)
 Copy an image on the current image.
 
void flip ()
 Set the image upside down.
 
void fill (const math::rectangle< int > r, const pixel_type &c)
 Fill an area of the image with a given color.
 
void set_size (unsigned int w, unsigned int h)
 Set a new size to the image.
 
void load (std::istream &f)
 Read the image from a stream.
 

Additional Inherited Members

- Public Types inherited from claw::graphic::image
typedef rgba_pixel pixel_type
 The type representing the colors of the pixels in the image.
 
typedef base_iterator< image, pixel_typeiterator
 The type of the iterator on the pixels of the image.
 
typedef base_iterator< const image, const pixel_typeconst_iterator
 The type of the iterator to access constant pixels.
 

Detailed Description

A class for xbm pictures.

Author
Julien Jorge

Definition at line 46 of file xbm.hpp.

Constructor & Destructor Documentation

◆ xbm() [1/3]

claw::graphic::xbm::xbm ( unsigned int w,
unsigned int h )

Constructor. Creates an empty image.

Parameters
wImage's width.
hImage's height.
Precondition
w > 0 and h > 0

Definition at line 38 of file xbm.cpp.

◆ xbm() [2/3]

claw::graphic::xbm::xbm ( const image & that)

Copy constructor.

Parameters
thatImage to copy from.

Definition at line 47 of file xbm.cpp.

◆ xbm() [3/3]

claw::graphic::xbm::xbm ( std::istream & f)

Constructor. Load an image from a xbm file.

Parameters
fXbm file.

Definition at line 56 of file xbm.cpp.

◆ ~xbm()

claw::graphic::xbm::~xbm ( )

Destructor.

Definition at line 65 of file xbm.cpp.

Member Function Documentation

◆ save()

void claw::graphic::xbm::save ( std::ostream & f) const

Save the image.

Parameters
fThe file in which we write.

Definition at line 75 of file xbm.cpp.

◆ set_hot()

void claw::graphic::xbm::set_hot ( const claw::math::coordinate_2d< int > & hot)

Set the hot spot of the image.

Parameters
hotThe hot spot of the image;

Definition at line 93 of file xbm.cpp.

◆ set_name()

void claw::graphic::xbm::set_name ( const std::string & name)

Set the name of the image.

Parameters
nameThe name of the image;

Definition at line 84 of file xbm.cpp.


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