SoTextureCoordinateElement Class Reference

Stores the current texture coordinates. More...

#include <Inventor/elements/SoTextureCoordinateElement.h>

Inheritance diagram for SoTextureCoordinateElement:
SoReplacedTextureElement SoElement SoTypedObject

List of all members.


struct  SoTexCoordData
class  TexGenEvaluator
 Class that TextureCoordinateFunction nodes register to compute texture coordinates.

Public Types

enum  CoordType {

Public Member Functions

virtual CoordType getType (int unit=0) const
const SbVec4fget (const SbVec3f &point, const SbVec3f &normal, int unit=0) const
int32_t getNum (int unit=0) const
SbBool is2D (int unit=0) const
SbBool isForceSending (int unit=0) const
const SbVec2fget2 (int index, int unit=0) const
const SbVec4fget4 (int index, int unit=0) const
virtual void print (FILE *fp) const
virtual void push (SoState *)

Static Public Member Functions

static SoType getClassTypeId ()
static int getClassStackIndex ()
static void setDefault (SoState *state, SoNode *node)
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)
static const
getInstance (SoState *state)

Detailed Description

Stores the current texture coordinates.

This element stores the current texture coordinates.



Member Enumeration Documentation

The choice of values is for compatibility with Open Inventor 2.0 binary format files.


Member Function Documentation

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 int SoTextureCoordinateElement::getClassStackIndex (  )  [static]

Returns the stack id for this element.

Reimplemented from SoReplacedTextureElement.

static SoType SoTextureCoordinateElement::getClassTypeId (  )  [static]

Returns the type identifier for this class.

Reimplemented from SoReplacedTextureElement.

static const SoTextureCoordinateElement* SoTextureCoordinateElement::getInstance ( SoState state  )  [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 CoordType SoTextureCoordinateElement::getType ( int  unit = 0  )  const [virtual]
static CoordType SoTextureCoordinateElement::getType ( SoState state,
int  unit = 0 
) [static]

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 void SoTextureCoordinateElement::print ( FILE *  fp  )  const [virtual]

Prints element (for debugging).

Reimplemented from SoReplacedTextureElement.

virtual void SoTextureCoordinateElement::push ( SoState  )  [virtual]

Overrides push() method to copy values from next instance in the stack.

Reimplemented from SoReplacedTextureElement.

static void SoTextureCoordinateElement::set2 ( SoState state,
SoNode node,
int32_t  numCoords,
const SbVec2f coords,
SbBool  frcSend = FALSE 
) [static]
static void SoTextureCoordinateElement::set4 ( SoState state,
SoNode node,
int32_t  numCoords,
const SbVec4f coords,
SbBool  frcSend = FALSE 
) [static]
static void SoTextureCoordinateElement::setDefault ( SoState state,
SoNode node 
) [static]

Sets the current texture coordinates, in any of several ways: EXPLICIT, no coordinates (shapes will generate).

static void SoTextureCoordinateElement::setFunction ( SoState state,
SoNode node,
SoTextureCoordinateFunctionCB func,
void *  userData,
SbBool  frcSend = FALSE 
) [static]

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

Open Inventor Toolkit reference manual, generated on 15 Mar 2023
Copyright © Thermo Fisher Scientific All rights reserved.