chai3d::cTexture2d Class Reference

This class implements a 2D texture map. More...

#include <CTexture2d.h>

Inheritance diagram for chai3d::cTexture2d:

Public Member Functions

 cTexture2d ()
 Constructor of cTexture2d. More...
 
virtual ~cTexture2d ()
 Destructor of cTexture2d. More...
 
cTexture2dPtr copy ()
 This method creates a copy of itself. More...
 
virtual void renderInitialize (cRenderOptions &a_options)
 This method enables texturing and sets this texture as the current texture. More...
 
virtual void renderFinalize (cRenderOptions &a_options)
 This method disable texture once triangles have been rendered. More...
 
virtual void setWrapModeT (const GLint &a_wrapModeT)
 This method set the texture wrap mode of t. More...
 
GLint getWrapModeT () const
 This method returns the texture wrap mode of t. More...
 
- Public Member Functions inherited from chai3d::cTexture1d
 cTexture1d ()
 Constructor of cTexture1d. More...
 
virtual ~cTexture1d ()
 Destructor of cTexture1d. More...
 
void setTextureUnit (const GLenum a_textureUnit)
 This method set the texture unit where a_textureUnit is GL_TEXTUREi_ARB, where 0i<GL_MAX_TEXTURE_UNITS_ARB. More...
 
GLenum getTextureUnit () const
 This method returns the texture unit value. More...
 
void setTextureId (const GLuint a_textureId)
 This method sets the texture ID. More...
 
GLuint getTextureId ()
 This method returns the texture ID. More...
 
cTexture1dPtr copy ()
 This method creates a copy of itself. More...
 
virtual bool loadFromFile (const std::string &a_fileName)
 This method load a texture image from a file. More...
 
virtual bool saveToFile (const std::string &a_fileName)
 This method save a texture image to a file. More...
 
virtual void markForUpdate ()
 This method marks this texture for GPU update. More...
 
virtual void markForDeleteAndUpdate ()
 This method marks this texture for GPU deletion and reinitialization. More...
 
void setEnvironmentMode (const GLint &a_environmentMode)
 This method sets the environment mode (GL_MODULATE, GL_DECAL, GL_BLEND, GL_REPLACE). More...
 
GLint getEnvironmentMode ()
 This method returns the environment mode status. More...
 
virtual void setWrapModeS (const GLint &a_wrapModeS)
 This method set the texture wrap mode of s. More...
 
GLint getWrapModeS () const
 This method returns the texture wrap mode of s. More...
 
void setMagFunction (const GLint a_magFunction)
 This method sets the magnification function value. More...
 
GLint getMagFunction () const
 This method returns the current magnification function value. More...
 
void setMinFunction (const GLint a_minFunction)
 This method sets the minification function value. More...
 
GLint getMinFunction () const
 This method returns the current minification function value. More...
 
void setSphericalMappingEnabled (const bool a_enabled)
 This method enables of disables the spherical mapping mode. More...
 
bool getSphericalMappingEnabled () const
 This method returns thestatus of the spherical mapping mode. More...
 
void setUseMipmaps (bool a_useMipmaps)
 This method enables or disables the use of mipmaps. More...
 
bool getUseMipmaps ()
 This returns the the status of mipmaps. More...
 
bool setImage (cImagePtr a_image)
 This method assigns an image to this texture. More...
 
- Public Member Functions inherited from chai3d::cGenericTexture
 cGenericTexture ()
 Constructor of cGenericTexture. More...
 
virtual ~cGenericTexture ()
 Destructor of cGenericTexture. More...
 
void setEnabled (bool a_enabled)
 This method enables or disables texture mapping. More...
 
bool getEnabled () const
 This method returns true if the texture map is enabled, false otherwise. More...
 

Static Public Member Functions

static cTexture2dPtr create ()
 Shared cTexture2d allocator. More...
 
- Static Public Member Functions inherited from chai3d::cTexture1d
static cTexture1dPtr create ()
 Shared cTexture1d allocator. More...
 
- Static Public Member Functions inherited from chai3d::cGenericTexture
static cGenericTexturePtr create ()
 Shared cGenericTexture allocator. More...
 

Protected Member Functions

virtual void reset ()
 This method resets all internal variables. This function should be called only by constructors. More...
 
virtual void update (cRenderOptions &a_options)
 This method updates this texture to GPU. More...
 

Protected Attributes

GLint m_wrapModeT
 Texture wrap parameter along t (GL_REPEAT or GL_CLAMP). More...
 
- Protected Attributes inherited from chai3d::cTexture1d
bool m_deleteTextureFlag
 If true, texture bitmap needs to be deleted from GPU memory. More...
 
bool m_updateTextureFlag
 If true, texture bitmap needs to be updated to GPU memory. More...
 
GLuint m_textureID
 OpenGL texture ID number. More...
 
GLint m_wrapModeS
 Texture wrap parameter along s (GL_REPEAT or GL_CLAMP). More...
 
GLint m_magFunction
 Texture magnification function value. (GL_NEAREST or GL_LINEAR). More...
 
GLint m_minFunction
 Texture minification function value. (GL_NEAREST or GL_LINEAR). More...
 
bool m_useMipmaps
 If true, mipmaps are enabled. More...
 
bool m_useSphericalMapping
 If true, spherical mapping is enable. More...
 
GLint m_environmentMode
 OpenGL texture mode (GL_MODULATE, GL_DECAL, GL_BLEND, or GL_REPLACE). More...
 
GLenum m_textureUnit
 Texture unit number. More...
 
GLint m_magFunctionMipmapsOFF
 Texture magnification function when mipmapping is OFF. More...
 
GLint m_minFunctionMipmapsOFF
 Texture minification function when mipmapping is OFF. More...
 
GLint m_magFunctionMipmapsON
 Texture magnification function when mipmapping is ON. More...
 
GLint m_minFunctionMipmapsON
 Texture minification function when mipmapping is ON. More...
 
- Protected Attributes inherited from chai3d::cGenericTexture
bool m_enabled
 If true, this texture is enabled, false otherwise. More...
 

Additional Inherited Members

- Public Attributes inherited from chai3d::cTexture1d
cImagePtr m_image
 Image object associated with texture (use this to get data about the texture itself). More...
 
cColorf m_color
 Environmental color. More...
 

Detailed Description

This class implements a 2D texture map.

Constructor & Destructor Documentation

chai3d::cTexture2d::cTexture2d ( )

Constructor of cTexture2d.

chai3d::cTexture2d::~cTexture2d ( )
virtual

Destructor of cTexture2d.

Member Function Documentation

static cTexture2dPtr chai3d::cTexture2d::create ( )
inlinestatic
cTexture2dPtr chai3d::cTexture2d::copy ( )

This method creates a copy of itself.

Returns
Pointer to new object.
void chai3d::cTexture2d::renderInitialize ( cRenderOptions a_options)
virtual

This method enables texturing and set this texture as the current texture.

Parameters
a_optionsRendering options.

Reimplemented from chai3d::cTexture1d.

Reimplemented in chai3d::cTextureVideo, and chai3d::cTexture3d.

void chai3d::cTexture2d::renderFinalize ( cRenderOptions a_options)
virtual

This method disable texture rendering once triangles have been rendered.

Parameters
a_optionsRendering options.

Reimplemented from chai3d::cTexture1d.

Reimplemented in chai3d::cTexture3d.

void chai3d::cTexture2d::setWrapModeT ( const GLint &  a_wrapModeT)
virtual

This method Ssts the wrap parameter for texture coordinate t to either GL_CLAMP or GL_REPEAT.

GL_CLAMP causes t coordinates to be clamped to the range [0,1] and is useful for preventing wrapping artifacts when mapping a single image onto an object.

GL_REPEAT causes the integer part of the t coordinate to be ignored; OpenGL uses only the fractional part, thereby creating a repeating pattern. Border texture elements are accessed only if wrapping is set to GL_CLAMP.

Parameters
a_wrapModeTvalue shall be either GL_REPEAT or GL_CLAMP.
GLint chai3d::cTexture2d::getWrapModeT ( ) const
inline
void chai3d::cTexture2d::reset ( )
protectedvirtual

This method resets all internal variables. This function should be called only by constructors.

Reimplemented from chai3d::cTexture1d.

Reimplemented in chai3d::cTexture3d.

void chai3d::cTexture2d::update ( cRenderOptions a_options)
protectedvirtual

This method updates the texture from memory data to GPU.

Parameters
a_optionsRendering options.

Reimplemented from chai3d::cTexture1d.

Reimplemented in chai3d::cTexture3d.

Member Data Documentation

GLint chai3d::cTexture2d::m_wrapModeT
protected

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