Stores the current texture coordinates. More...
#include <Inventor/elements/SoTextureCoordinateElement.h>
Public Types | |
enum | CoordType { EXPLICIT = 1 , FUNCTION = 2 } |
The choice of values is for compatibility with Open Inventor 2.0 binary format files. More... | |
typedef const SbVec4f & | SoTextureCoordinateFunctionCB(void *userdata, const SbVec3f &point, const SbVec3f &normal) |
Function that TextureCoordinateFunction nodes register to compute texture coordinates. | |
Public Member Functions | |
virtual CoordType | getType (int unit=0) const |
const SbVec4f & | get (const SbVec3f &point, const SbVec3f &normal, int unit=0) const |
Given point and normal, returns texture coordinate. | |
int32_t | getNum (int unit=0) const |
Returns the number of coordinate points in an instance. | |
SbBool | is2D (int unit=0) const |
SbBool | isForceSending (int unit=0) const |
const SbVec2f & | get2 (int index, int unit=0) const |
Returns the indexed coordinate from an element as a 2- or 4-vector, converting if necessary. | |
const SbVec4f & | get4 (int index, int unit=0) const |
virtual void | print (FILE *fp) const |
Prints element (for debugging). | |
virtual void | push (SoState *) |
Overrides push() method to copy values from next instance in the stack. | |
Public Member Functions inherited from SoElement | |
virtual void | pop (SoState *state, const SoElement *prevTopElement) |
Pops element. | |
virtual SoType | getTypeId () const |
Returns type identifier for element instance. | |
Public Member Functions inherited from SoTypedObject | |
SbBool | isOfType (const SoType &type) const |
Returns TRUE if this object is of the type specified in type or is derived from that type. | |
template<typename TypedObjectClass > | |
SbBool | isOfType () const |
Returns TRUE if this object is of the type of class TypedObjectClass or is derived from that class. | |
Static Public Member Functions | |
static SoType | getClassTypeId () |
Returns the type identifier for this class. | |
static int | getClassStackIndex () |
Returns the stack id for this element. | |
static void | setDefault (SoState *state, SoNode *node) |
Sets the current texture coordinates, in any of several ways: EXPLICIT, no coordinates (shapes will generate). | |
static void | setFunction (SoState *state, SoNode *node, SoTextureCoordinateFunctionCB *func, void *userData, SbBool frcSend=FALSE) |
static void | set2 (SoState *state, SoNode *node, int32_t numCoords, const SbVec2f *coords, SbBool frcSend=FALSE) |
static void | set4 (SoState *state, SoNode *node, int32_t numCoords, const SbVec4f *coords, SbBool frcSend=FALSE) |
static CoordType | getType (SoState *state, int unit=0) |
Returns code indicating what has been set in state/element. | |
static const SoTextureCoordinateElement * | getInstance (SoState *state) |
Returns the top (current) instance of the element in the state. | |
Static Public Member Functions inherited from SoReplacedTextureElement | |
static SoType | getClassTypeId () |
Returns the type identifier for this class. | |
static int | getClassStackIndex () |
Returns the stack id for this element. | |
Static Public Member Functions inherited from SoElement | |
static SoType | getClassTypeId () |
Returns type identifier for SoElement class. | |
Static Public Member Functions inherited from SoTypedObject | |
static SoType | getClassTypeId () |
Returns the type identifier for this class. | |
Stores the current texture coordinates.
This element stores the current texture coordinates.
Definition at line 84 of file SoTextureCoordinateElement.h.
typedef const SbVec4f & SoTextureCoordinateFunctionCB(void *userdata, const SbVec3f &point, const SbVec3f &normal) |
Function that TextureCoordinateFunction nodes register to compute texture coordinates.
Given the point and normal, compute a texture coordinate and return it:
Definition at line 69 of file SoTextureCoordinateElement.h.
The choice of values is for compatibility with Open Inventor 2.0 binary format files.
Enumerator | |
---|---|
EXPLICIT | |
FUNCTION |
Definition at line 93 of file SoTextureCoordinateElement.h.
const SbVec4f & SoTextureCoordinateElement::get | ( | const SbVec3f & | point, |
const SbVec3f & | normal, | ||
int | unit = 0 |
||
) | const |
Given point and normal, returns texture coordinate.
(The r coordinate will be 0.0 and the q will be 1.0 until we get 3D texture coordinate functions.)
const SbVec2f & SoTextureCoordinateElement::get2 | ( | int | index, |
int | unit = 0 |
||
) | const |
Returns the indexed coordinate from an element as a 2- or 4-vector, converting if necessary.
const SbVec4f & SoTextureCoordinateElement::get4 | ( | int | index, |
int | unit = 0 |
||
) | const |
|
static |
Returns the stack id for this element.
|
static |
Returns the type identifier for this class.
|
static |
Returns the top (current) instance of the element in the state.
The get routines are called on an instance because it is more efficient than calling a static method that looks up the element in the state for every coordinate.
int32_t SoTextureCoordinateElement::getNum | ( | int | unit = 0 | ) | const |
Returns the number of coordinate points in an instance.
|
virtual |
Returns code indicating what has been set in state/element.
SbBool SoTextureCoordinateElement::is2D | ( | int | unit = 0 | ) | const |
SbBool SoTextureCoordinateElement::isForceSending | ( | int | unit = 0 | ) | const |
|
virtual |
Prints element (for debugging).
Reimplemented from SoReplacedTextureElement.
|
virtual |
Overrides push() method to copy values from next instance in the stack.
Reimplemented from SoReplacedTextureElement.
|
static |
|
static |
Sets the current texture coordinates, in any of several ways: EXPLICIT, no coordinates (shapes will generate).
|
static |