Man Linux: Main Page and Category List

NAME

       SoGLCubeMapImage -

       The SoGLCubeMapImage class is used to handle cube map textures.

SYNOPSIS

       #include <include/Inventor/misc/SoGLCubeMapImage.h>

       Inherits SoGLImage.

   Public Types
       enum Target { NEGATIVE_X =  0, POSITIVE_X, NEGATIVE_Y, POSITIVE_Y,
           NEGATIVE_Z, POSITIVE_Z }

   Public Member Functions
       SoGLCubeMapImage ()
       virtual void unref (SoState *state=NULL)
       virtual SoType getTypeId (void) const
       void setCubeMapImage (const Target target, const unsigned char *bytes,
           const SbVec2s &size, const int numcomponents)
       virtual void setData (const SbImage *image, const Wrap wraps=REPEAT,
           const Wrap wrapt=REPEAT, const float quality=0.5f, const int
           border=0, SoState *createinstate=NULL)
       virtual void setData (const SbImage *image, const Wrap wraps, const
           Wrap wrapt, const Wrap wrapr, const float quality=0.5f, const int
           border=0, SoState *createinstate=NULL)
       virtual SoGLDisplayList * getGLDisplayList (SoState *state)

   Static Public Member Functions
       static SoType getClassTypeId (void)
       static void initClass (void)

Detailed Description

       The SoGLCubeMapImage class is used to handle cube map textures.

       Be aware that this class is an extension for Coin, and it is not
       available in the original SGI Open Inventor v2.1 API.

       Since:
           Coin 3.0

Constructor & Destructor Documentation

   SoGLCubeMapImage::SoGLCubeMapImage (void) Constructor.

Member Function Documentation

   void SoGLCubeMapImage::unref (SoState * state = NULL) [virtual] This class
       has a private destuctor since we want users to supply the current GL
       state when deleting the image. This is to make sure gl texture objects
       are freed as soon as possible. If you supply NULL to this method, the
       gl texture objects wont be deleted until the next time an
       GLRenderAction is applied in the images cache context(s).
       Reimplemented from SoGLImage.

   SoType SoGLCubeMapImage::getClassTypeId (void) [static] Returns the type id
       for this class.
       Reimplemented from SoGLImage.

   SoType SoGLCubeMapImage::getTypeId (void) const [virtual] Returns the type
       id for an SoGLImage instance.
       Reimplemented from SoGLImage.

   void SoGLCubeMapImage::setData (const SbImage * image, const Wrap wraps =
       REPEAT, const Wrap wrapt = REPEAT, const float quality = 0.5f, const
       int border = 0, SoState * createinstate = NULL) [virtual] Convenience
       2D wrapper function around the 3D setData().
       Reimplemented from SoGLImage.

   void SoGLCubeMapImage::setData (const SbImage * image, const Wrap wraps,
       const Wrap wrapt, const Wrap wrapr, const float quality = 0.5f, const
       int border = 0, SoState * createinstate = NULL) [virtual] Sets the data
       for this GL image. Should only be called when one of the parameters
       have changed, since this will cause the GL texture object to be
       recreated. Caller is responsible for sending legal Wrap values.
       CLAMP_TO_EDGE is only supported on OpenGL v1.2 implementations, and as
       an extension on some earlier SGI implementations
       (GL_SGIS_texture_edge_clamp).
       For now, if quality > 0.5 when created, we create mipmaps, otherwise a
       regular texture is created. Be aware, if you for instance create a
       texture with texture quality 0.4, and then later try to apply the
       texture with a texture quality greater than 0.5, the texture object
       will be recreated as a mipmap texture object. This will happen only
       once though, of course.

       If border != 0, the OpenGL texture will be created with this border
       size. Be aware that this might be extremely slow on most PC hardware.

       Normally, the OpenGL texture object isn’t created until the first time
       it is needed, but if createinstate is != NULL, the texture object is
       created immediately. This is useful if you use a temporary buffer to
       hold the texture data. Be careful when using this feature, since the
       texture data might be needed at a later stage (for instance to create a
       texture object for another context). It will not be possible to create
       texture objects for other cache contexts when createinstate is != NULL.

       Also if createinstate is supplied, and all the attributes are the same
       as the current data in the image, glTexSubImage() will be used to
       insert the image data instead of creating a new texture object. This is
       much faster on most OpenGL drivers, and is very useful, for instance
       when doing animated textures.

       If you supply NULL for image, the instance will be reset, causing all
       display lists and memory to be freed.

       Reimplemented from SoGLImage.

   SoGLDisplayList * SoGLCubeMapImage::getGLDisplayList (SoState * state)
       [virtual] Returns or creates a SoGLDisplayList to be used for
       rendering. Returns NULL if no SoDLDisplayList could be created.
       Reimplemented from SoGLImage.

   void SoGLCubeMapImage::initClass (void) [static] This API member is
       considered internal to the library, as it is not likely to be of
       interest to the application programmer.
       Reimplemented from SoGLImage.

Author

       Generated automatically by Doxygen for Coin from the source code.