![]()  | 
  
    OGRE
    2.3
    
   Object-Oriented Graphics Rendering Engine 
   | 
 
Class representing an image file. More...
#include <OgreImage.h>
 Inheritance diagram for Ogre::Image:Public Types | |
| typedef Ogre::Box | Box | 
| enum | Filter {  FILTER_NEAREST , FILTER_LINEAR , FILTER_BILINEAR , FILTER_BOX , FILTER_TRIANGLE , FILTER_BICUBIC , FILTER_GAUSSIAN , FILTER_GAUSSIAN_HIGH }  | 
| typedef Ogre::Rect | Rect | 
Public Member Functions | |
| Image () | |
| Standard constructor.  More... | |
| Image (const Image &img) | |
| Copy-constructor - copies all the data from the target image.  More... | |
| virtual | ~Image () | 
| Standard destructor.  More... | |
| Image & | combineTwoImagesAsRGBA (const Image &rgb, const Image &alpha, PixelFormat format=PF_BYTE_RGBA) | 
| Utility method to combine 2 separate images into this one, with the first image source supplying the RGB channels, and the second image supplying the alpha channel (as luminance or separate alpha).  More... | |
| DataStreamPtr | encode (const String &formatextension) | 
| Encode the image and return a stream to the data.  More... | |
| Image & | flipAroundX () | 
| Flips (mirrors) the image around the X-axis.  More... | |
| Image & | flipAroundY () | 
| Flips (mirrors) the image around the Y-axis.  More... | |
| void | freeMemory () | 
| Delete all the memory held by this image, if owned by this image (not dynamic)  More... | |
| bool | generateMipmaps (bool gammaCorrected, Filter filter=FILTER_BILINEAR) | 
| Generates the mipmaps for this image.  More... | |
| uchar | getBPP () const | 
| Returns the number of bits per pixel.  More... | |
| ColourValue | getColourAt (size_t x, size_t y, size_t z) const | 
| Get colour value from a certain location in the image.  More... | |
| const uchar * | getData () const | 
| Returns a const pointer to the internal image buffer.  More... | |
| uchar * | getData (void) | 
| Returns a pointer to the internal image buffer.  More... | |
| uint32 | getDepth (void) const | 
| Gets the depth of the image.  More... | |
| PixelFormat | getFormat () const | 
| Returns the image format.  More... | |
| bool | getHasAlpha () const | 
| Returns true if the image has an alpha component.  More... | |
| uint32 | getHeight (void) const | 
| Gets the height of the image in pixels.  More... | |
| size_t | getNumFaces (void) const | 
| Get the number of faces of the image.  More... | |
| uint8 | getNumMipmaps () const | 
| Returns the number of mipmaps contained in the image.  More... | |
| PixelBox | getPixelBox (size_t face=0, size_t mipmap=0) const | 
| Get a PixelBox encapsulating the image data of a mipmap.  More... | |
| size_t | getRowSpan (void) const | 
| Gets the physical width in bytes of each row of pixels.  More... | |
| size_t | getSize () const | 
| Returns the size of the data buffer.  More... | |
| uint32 | getWidth (void) const | 
| Gets the width of the image in pixels.  More... | |
| bool | hasFlag (const ImageFlags imgFlag) const | 
| Returns true if the image has the appropriate flag set.  More... | |
| Image & | load (const String &filename, const String &groupName) | 
| Loads an image file.  More... | |
| Image & | load (DataStreamPtr &stream, const String &type=BLANKSTRING) | 
| Loads an image file from a stream.  More... | |
| Image & | loadDynamicImage (uchar *data, uint32 width, uint32 height, PixelFormat format) | 
| Stores a pointer to raw data in memory.  More... | |
| Image & | loadDynamicImage (uchar *data, uint32 width, uint32 height, uint32 depth, PixelFormat format, bool autoDelete=false, size_t numFaces=1, uint8 numMipMaps=0) | 
| Stores a pointer to raw data in memory.  More... | |
| Image & | loadRawData (DataStreamPtr &stream, uint32 width, uint32 height, PixelFormat format) | 
| Loads raw data from a stream.  More... | |
| Image & | loadRawData (DataStreamPtr &stream, uint32 width, uint32 height, uint32 depth, PixelFormat format, size_t numFaces=1, size_t numMipMaps=0) | 
| Loads raw data from a stream.  More... | |
| Image & | loadTwoImagesAsRGBA (const String &rgbFilename, const String &alphaFilename, const String &groupName, PixelFormat format=PF_BYTE_RGBA) | 
| Utility method to combine 2 separate images into this one, with the first image source supplying the RGB channels, and the second image supplying the alpha channel (as luminance or separate alpha).  More... | |
| Image & | loadTwoImagesAsRGBA (DataStreamPtr &rgbStream, DataStreamPtr &alphaStream, PixelFormat format=PF_BYTE_RGBA, const String &rgbType=BLANKSTRING, const String &alphaType=BLANKSTRING) | 
| Utility method to combine 2 separate images into this one, with the first image source supplying the RGB channels, and the second image supplying the alpha channel (as luminance or separate alpha).  More... | |
| void | operator delete (void *ptr) | 
| void | operator delete (void *ptr, const char *, int, const char *) | 
| void | operator delete (void *ptr, void *) | 
| void | operator delete[] (void *ptr) | 
| void | operator delete[] (void *ptr, const char *, int, const char *) | 
| void * | operator new (size_t sz) | 
| void * | operator new (size_t sz, const char *file, int line, const char *func) | 
| operator new, with debug line info  More... | |
| void * | operator new (size_t sz, void *ptr) | 
| placement operator new  More... | |
| void * | operator new[] (size_t sz) | 
| void * | operator new[] (size_t sz, const char *file, int line, const char *func) | 
| array operator new, with debug line info  More... | |
| Image & | operator= (const Image &img) | 
| Assignment operator - copies all the data from the target image.  More... | |
| void | resize (ushort width, ushort height, Filter filter=FILTER_BILINEAR) | 
| Resize a 2D image, applying the appropriate filter.  More... | |
| void | save (const String &filename) | 
| Save the image as a file.  More... | |
| void | setColourAt (ColourValue const &cv, size_t x, size_t y, size_t z) | 
| Set colour value at a certain location in the image.  More... | |
Static Public Member Functions | |
| static void | applyGamma (uchar *buffer, Real gamma, size_t size, uchar bpp) | 
| Does gamma adjustment.  More... | |
| static size_t | calculateSize (size_t mipmaps, size_t faces, uint32 width, uint32 height, uint32 depth, PixelFormat format) | 
| Static function to calculate size in bytes from the number of mipmaps, faces and the dimensions.  More... | |
| static String | getFileExtFromMagic (DataStreamPtr stream) | 
| Static function to get an image type string from a stream via magic numbers.  More... | |
| static void | scale (const PixelBox &src, const PixelBox &dst, Filter filter=FILTER_BILINEAR) | 
| Scale a 1D, 2D or 3D image volume.  More... | |
Class representing an image file.
| typedef Ogre::Box Ogre::Image::Box | 
| typedef Ogre::Rect Ogre::Image::Rect | 
| enum Ogre::Image::Filter | 
| Ogre::Image::Image | ( | ) | 
Standard constructor.
| Ogre::Image::Image | ( | const Image & | img | ) | 
Copy-constructor - copies all the data from the target image.
      
  | 
  virtual | 
Standard destructor.
Does gamma adjustment.
      
  | 
  static | 
Static function to calculate size in bytes from the number of mipmaps, faces and the dimensions.
| Image& Ogre::Image::combineTwoImagesAsRGBA | ( | const Image & | rgb, | 
| const Image & | alpha, | ||
| PixelFormat | format = PF_BYTE_RGBA  | 
        ||
| ) | 
Utility method to combine 2 separate images into this one, with the first image source supplying the RGB channels, and the second image supplying the alpha channel (as luminance or separate alpha).
| DataStreamPtr Ogre::Image::encode | ( | const String & | formatextension | ) | 
Encode the image and return a stream to the data.
| formatextension | An extension to identify the image format to encode into, e.g. "jpg" or "png" | 
| Image& Ogre::Image::flipAroundX | ( | ) | 
Flips (mirrors) the image around the X-axis.
            flip axis
                |
    originalimg|gmilanigiro
    00000000000|00000000000
    00000000000|00000000000
    00000000000|00000000000
    00000000000|00000000000
    00000000000|00000000000
     | Image& Ogre::Image::flipAroundY | ( | ) | 
Flips (mirrors) the image around the Y-axis.
                
    originalimg
    00000000000
    00000000000
    00000000000
    00000000000
    00000000000
    ------------> flip axis
    00000000000
    00000000000
    00000000000
    00000000000
    00000000000
    originalimg
    | void Ogre::Image::freeMemory | ( | ) | 
Delete all the memory held by this image, if owned by this image (not dynamic)
| bool Ogre::Image::generateMipmaps | ( | bool | gammaCorrected, | 
| Filter | filter = FILTER_BILINEAR  | 
        ||
| ) | 
Generates the mipmaps for this image.
For Cubemaps, the filtering is seamless; and a gaussian filter is recommended although it's slow.
| gammaCorrected | True if the filter should be applied in linear space. | 
| filter | The type of filter to use. | 
| uchar Ogre::Image::getBPP | ( | ) | const | 
Returns the number of bits per pixel.
| ColourValue Ogre::Image::getColourAt | ( | size_t | x, | 
| size_t | y, | ||
| size_t | z | ||
| ) | const | 
Get colour value from a certain location in the image.
The z coordinate is only valid for cubemaps and volume textures. This uses the first (largest) mipmap.
| const uchar* Ogre::Image::getData | ( | ) | const | 
Returns a const pointer to the internal image buffer.
| uchar* Ogre::Image::getData | ( | void | ) | 
Returns a pointer to the internal image buffer.
| uint32 Ogre::Image::getDepth | ( | void | ) | const | 
Gets the depth of the image.
      
  | 
  static | 
Static function to get an image type string from a stream via magic numbers.
| PixelFormat Ogre::Image::getFormat | ( | ) | const | 
Returns the image format.
| bool Ogre::Image::getHasAlpha | ( | ) | const | 
Returns true if the image has an alpha component.
| uint32 Ogre::Image::getHeight | ( | void | ) | const | 
Gets the height of the image in pixels.
| size_t Ogre::Image::getNumFaces | ( | void | ) | const | 
Get the number of faces of the image.
This is usually 6 for a cubemap, and 1 for a normal image.
| uint8 Ogre::Image::getNumMipmaps | ( | ) | const | 
Returns the number of mipmaps contained in the image.
| PixelBox Ogre::Image::getPixelBox | ( | size_t | face = 0,  | 
        
| size_t | mipmap = 0  | 
        ||
| ) | const | 
Get a PixelBox encapsulating the image data of a mipmap.
| size_t Ogre::Image::getRowSpan | ( | void | ) | const | 
Gets the physical width in bytes of each row of pixels.
| size_t Ogre::Image::getSize | ( | ) | const | 
Returns the size of the data buffer.
| uint32 Ogre::Image::getWidth | ( | void | ) | const | 
Gets the width of the image in pixels.
| bool Ogre::Image::hasFlag | ( | const ImageFlags | imgFlag | ) | const | 
Returns true if the image has the appropriate flag set.
Loads an image file.
| filename | Name of an image file to load. | 
| groupName | Name of the resource group to search for the image | 
| Image& Ogre::Image::load | ( | DataStreamPtr & | stream, | 
| const String & | type = BLANKSTRING  | 
        ||
| ) | 
Loads an image file from a stream.
| stream | The source data. | 
| type | The type of the image. Used to decide what decompression codec to use. Can be left blank if the stream data includes a header to identify the data. | 
      
  | 
  inline | 
Stores a pointer to raw data in memory.
The pixel format has to be specified.
| data | The data pointer | 
| width | Width of image | 
| height | Height of image | 
| format | Pixel Format | 
| Image& Ogre::Image::loadDynamicImage | ( | uchar * | data, | 
| uint32 | width, | ||
| uint32 | height, | ||
| uint32 | depth, | ||
| PixelFormat | format, | ||
| bool | autoDelete = false,  | 
        ||
| size_t | numFaces = 1,  | 
        ||
| uint8 | numMipMaps = 0  | 
        ||
| ) | 
Stores a pointer to raw data in memory.
The pixel format has to be specified.
| data | The data pointer | 
| width | Width of image | 
| height | Height of image | 
| depth | Image Depth (in 3d images, numbers of layers, otherwise 1) | 
| format | Pixel Format | 
| autoDelete | If memory associated with this buffer is to be destroyed with the Image object. Note: it's important that if you set this option to true, that you allocated the memory using OGRE_ALLOC_T with a category of MEMCATEGORY_GENERAL to ensure the freeing of memory matches up. | 
| numFaces | The number of faces the image data has inside (6 for cubemaps, 1 otherwise) | 
| numMipMaps | The number of mipmaps the image data has inside | 
      
  | 
  inline | 
Loads raw data from a stream.
The pixel format has to be specified.
| Image& Ogre::Image::loadRawData | ( | DataStreamPtr & | stream, | 
| uint32 | width, | ||
| uint32 | height, | ||
| uint32 | depth, | ||
| PixelFormat | format, | ||
| size_t | numFaces = 1,  | 
        ||
| size_t | numMipMaps = 0  | 
        ||
| ) | 
Loads raw data from a stream.
See the function loadDynamicImage for a description of the parameters.
| Image& Ogre::Image::loadTwoImagesAsRGBA | ( | const String & | rgbFilename, | 
| const String & | alphaFilename, | ||
| const String & | groupName, | ||
| PixelFormat | format = PF_BYTE_RGBA  | 
        ||
| ) | 
Utility method to combine 2 separate images into this one, with the first image source supplying the RGB channels, and the second image supplying the alpha channel (as luminance or separate alpha).
| rgbFilename | Filename of image supplying the RGB channels (any alpha is ignored) | 
| alphaFilename | Filename of image supplying the alpha channel. If a luminance image the single channel is used directly, if an RGB image then the values are converted to greyscale. | 
| groupName | The resource group from which to load the images | 
| format | The destination format | 
| Image& Ogre::Image::loadTwoImagesAsRGBA | ( | DataStreamPtr & | rgbStream, | 
| DataStreamPtr & | alphaStream, | ||
| PixelFormat | format = PF_BYTE_RGBA,  | 
        ||
| const String & | rgbType = BLANKSTRING,  | 
        ||
| const String & | alphaType = BLANKSTRING  | 
        ||
| ) | 
Utility method to combine 2 separate images into this one, with the first image source supplying the RGB channels, and the second image supplying the alpha channel (as luminance or separate alpha).
| rgbStream | Stream of image supplying the RGB channels (any alpha is ignored) | 
| alphaStream | Stream of image supplying the alpha channel. If a luminance image the single channel is used directly, if an RGB image then the values are converted to greyscale. | 
| format | The destination format | 
| rgbType | The type of the RGB image. Used to decide what decompression codec to use. Can be left blank if the stream data includes a header to identify the data. | 
| alphaType | The type of the alpha image. Used to decide what decompression codec to use. Can be left blank if the stream data includes a header to identify the data. | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
operator new, with debug line info
      
  | 
  inlineinherited | 
placement operator new
      
  | 
  inlineinherited | 
      
  | 
  inlineinherited | 
array operator new, with debug line info
Assignment operator - copies all the data from the target image.
| void Ogre::Image::resize | ( | ushort | width, | 
| ushort | height, | ||
| Filter | filter = FILTER_BILINEAR  | 
        ||
| ) | 
Resize a 2D image, applying the appropriate filter.
| void Ogre::Image::save | ( | const String & | filename | ) | 
Save the image as a file.
      
  | 
  static | 
Scale a 1D, 2D or 3D image volume.
| src | PixelBox containing the source pointer, dimensions and format | 
| dst | PixelBox containing the destination pointer, dimensions and format | 
| filter | Which filter to use | 
| void Ogre::Image::setColourAt | ( | ColourValue const & | cv, | 
| size_t | x, | ||
| size_t | y, | ||
| size_t | z | ||
| ) | 
Set colour value at a certain location in the image.
The z coordinate is only valid for cubemaps and volume textures. This uses the first (largest) mipmap.