5 #ifndef __I_IMAGE_H_INCLUDED__ 6 #define __I_IMAGE_H_INCLUDED__ 32 virtual void*
lock() = 0;
85 virtual void copyTo(
IImage* target,
const core::position2d<s32>& pos=core::position2d<s32>(0,0)) =0;
24 bit color, no alpha channel, but 8 bit for red, green and blue.
static u32 getBitsPerPixelFromFormat(const ECOLOR_FORMAT format)
get the amount of Bits per Pixel of the given color format
64 bit floating point format using 32 bits for the red channel and 32 bits for the green channel...
virtual SColor getPixel(u32 x, u32 y) const =0
Returns a pixel.
64 bit floating point format 16 bits are used for the red, green, blue and alpha channels.
32 bit floating point format using 32 bits for the red channel.
virtual ECOLOR_FORMAT getColorFormat() const =0
Returns the color format.
virtual void copyToScalingBoxFilter(IImage *target, s32 bias=0, bool blend=false)=0
copies this surface into another, scaling it to fit, appyling a box filter
virtual void fill(const SColor &color)=0
fills the surface with given color
ECOLOR_FORMAT
An enum for the color format of textures used by the Irrlicht Engine.
Everything in the Irrlicht Engine can be found in this namespace.
16 bit floating point format using 16 bits for the red channel.
Interface for software image data.
virtual u32 getGreenMask() const =0
Returns mask for green value of a pixel.
virtual void copyTo(IImage *target, const core::position2d< s32 > &pos=core::position2d< s32 >(0, 0))=0
copies this surface into another
virtual u32 getBlueMask() const =0
Returns mask for blue value of a pixel.
virtual u32 getImageDataSizeInBytes() const =0
Returns image data size in bytes.
signed int s32
32 bit signed variable.
virtual void unlock()=0
Unlock function.
128 bit floating point format. 32 bits are used for the red, green, blue and alpha channels...
unsigned int u32
32 bit unsigned variable.
16 bit color format used by the software driver.
virtual u32 getImageDataSizeInPixels() const =0
Returns image data size in pixels.
virtual u32 getPitch() const =0
Returns pitch of image.
Class representing a 32 bit ARGB color.
virtual u32 getBytesPerPixel() const =0
Returns bytes per pixel.
Standard 16 bit color format.
virtual void * lock()=0
Lock function. Use this to get a pointer to the image data.
virtual void copyToWithAlpha(IImage *target, const core::position2d< s32 > &pos, const core::rect< s32 > &sourceRect, const SColor &color, const core::rect< s32 > *clipRect=0)=0
copies this surface into another, using the alpha mask and cliprect and a color to add with ...
virtual const core::dimension2d< u32 > & getDimension() const =0
Returns width and height of image data.
Base class of most objects of the Irrlicht Engine.
static bool isRenderTargetOnlyFormat(const ECOLOR_FORMAT format)
test if the color format is only viable for RenderTarget textures
Default 32 bit color format. 8 bits are used for every component: red, green, blue and alpha...
virtual void setPixel(u32 x, u32 y, const SColor &color, bool blend=false)=0
Sets a pixel.
virtual u32 getRedMask() const =0
Returns mask for red value of a pixel.
virtual u32 getBitsPerPixel() const =0
Returns bits per pixel.
32 bit floating point format using 16 bits for the red channel and 16 bits for the green channel...
virtual u32 getAlphaMask() const =0
Returns mask for alpha value of a pixel.
virtual void copyToScaling(void *target, u32 width, u32 height, ECOLOR_FORMAT format=ECF_A8R8G8B8, u32 pitch=0)=0
Copies the image into the target, scaling the image to fit.