Provided by: inventor-doc_2.1.5-10+dfsg-2.1build2_all bug

NAME

       SoTexture2 — texture mapping node

INHERITS FROM

       SoBase > SoFieldContainer > SoNode > SoTexture2

SYNOPSIS

       #include <Inventor/nodes/SoTexture2.h>

     enum Model {
          SoTexture2::MODULATE  The texture color is multiplied by the surface color
          SoTexture2::DECAL     The texture color replaces the surface color
          SoTexture2::BLEND     Blends between the surface color and a specified blend color
     }

     enum Wrap {
          SoTexture2::REPEAT  Repeats texture outside 0-1 texture coordinate range
          SoTexture2::CLAMP   Clamps texture coordinates to lie within 0-1 range
     }

          Fields from class SoTexture2:

     SoSFString          filename
     SoSFImage           image
     SoSFEnum            wrapS
     SoSFEnum            wrapT
     SoSFEnum            model
     SoSFColor           blendColor

          Methods from class SoTexture2:

                         SoTexture2()
     static SoType       getClassTypeId()

          Methods from class SoNode:

     void                setOverride(SbBool state)
     SbBool              isOverride() const
     SoNode *            copy(SbBool copyConnections = FALSE) const
     virtual SbBool      affectsState() const
     static SoNode *     getByName(const SbName &name)
     static int          getByName(const SbName &name, SoNodeList &list)

          Methods from class SoFieldContainer:

     void                setToDefaults()
     SbBool              hasDefaultValues() const
     SbBool              fieldsAreEqual(const SoFieldContainer *fc) const
     void                copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE)
     SbBool              set(const char *fieldDataString)
     void                get(SbString &fieldDataString)
     virtual int         getFields(SoFieldList &resultList) const
     virtual SoField *   getField(const SbName &fieldName) const
     SbBool              getFieldName(const SoField *field, SbName &fieldName) const
     SbBool              isNotifyEnabled() const
     SbBool              enableNotify(SbBool flag)

          Methods from class SoBase:

     void                ref()
     void                unref() const
     void                unrefNoDelete() const
     void                touch()
     virtual SoType      getTypeId() const
     SbBool              isOfType(SoType type) const
     virtual void        setName(const SbName &name)
     virtual SbName      getName() const

DESCRIPTION

       This  property  node defines a texture map and parameters for that map. This map is used to apply texture
       to subsequent shapes as they are rendered.

       The texture can be read from the file specified by the filename field. Once the texture  has  been  read,
       the  image field contains the texture data. However, this field is marked so the image is not written out
       when the texture node is written to a file. To turn off texturing, set the filename  field  to  an  empty
       string ("").

       Textures can also be specified in memory by setting the image field to contain the texture data. Doing so
       resets the filename to the empty string.

       If the texture image's width or height is not a power of 2, or the image's width  or  height  is  greater
       than  the maximum supported by OpenGL, then the image will be automatically scaled up or down to the next
       power of 2 or the maximum texture size. For maximum speed, point-sampling is used to do the scale; if you
       want  more  accurate  resampling, pre-filter images to a power of 2 smaller than the maximum texture size
       (use the OpenGL glGetIntegerv(GL_MAX_TEXTURE_SIZE...)  call to determine maximum texture for  a  specific
       OpenGL implementation).

       The  quality  of  the  texturing  is  affected  by the textureQuality field of the SoComplexity node. The
       textureQuality field affects what kind of filtering is done to the texture when it must  be  minified  or
       magnified.  The  mapping of a particular texture quality value to a particular OpenGL filtering technique
       is implementation dependent, and varies based on the  texturing  performance.   If  mipmap  filtering  is
       required, mipmaps are automatically created using the simple box filter.

FIELDS

     SoSFString          filename
          Names  file  from  which  to  read  texture image. Currently only SGI .rgb files are supported. If the
          filename is not an absolute path name, the list of directories maintained by SoInput is  searched.  If
          the  texture  is  not found in any of those directories, then the file is searched for relative to the
          directory from which the SoTexture2 node was read. For example, if an SoTexture2 node with a  filename
          of  "../tofu.rgb"  is  read from /usr/people/bob/models/food.iv, then /usr/people/bob/tofu.rgb will be
          read (assuming tofu.rgb isn't found in the directories maintained by SoInput).

     SoSFImage           image
          Contains an in-memory representation of the texture map. It is either the contents of  the  file  read
          from  filename,  an  image read directly from an Inventor file, or an image set programmatically using
          the methods provided by SoSFImage.

     SoSFEnum            wrapS
     SoSFEnum            wrapT
          Indicates what to do when texture coordinates in the S (horizontal)  or  T  (vertical)  direction  lie
          outside the range 0-1.

     SoSFEnum            model
          Specifies how to map texture onto surface.

     SoSFColor           blendColor
          Color used for BLEND model.

METHODS

                         SoTexture2()
          Creates a texture node with default settings.

     static SoType       getClassTypeId()
          Returns type identifier for this class.

ACTION BEHAVIOR

       SoGLRenderAction, SoCallbackAction
          Sets current texture in state.

FILE FORMAT/DEFAULTS

       Texture2 {
          filename    ""
          image       0 0 0
          wrapS       REPEAT
          wrapT       REPEAT
          model       MODULATE
          blendColor  0 0 0
     }

SEE ALSO

       SoComplexity,    SoMaterial,   SoTexture2Transform,   SoTextureCoordinate2,   SoTextureCoordinateBinding,
       SoTextureCoordinateFunction

                                                                                               SoTexture2(3IV)()