osg::TexGen Class Reference

Inheritance diagram for osg::TexGen:

osg::StateAttribute osg::Object osg::Referenced List of all members.

Public Types

 OBJECT_LINEAR = GL_OBJECT_LINEAR
 EYE_LINEAR = GL_EYE_LINEAR
 SPHERE_MAP = GL_SPHERE_MAP
 NORMAL_MAP = GL_NORMAL_MAP_ARB
 REFLECTION_MAP = GL_REFLECTION_MAP_ARB
 S
 T
 R
 Q
enum  Mode {
  OBJECT_LINEAR = GL_OBJECT_LINEAR, EYE_LINEAR = GL_EYE_LINEAR, SPHERE_MAP = GL_SPHERE_MAP, NORMAL_MAP = GL_NORMAL_MAP_ARB,
  REFLECTION_MAP = GL_REFLECTION_MAP_ARB
}
enum  Coord { S, T, R, Q }

Public Member Functions

 TexGen ()
 TexGen (const TexGen &texgen, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 META_StateAttribute (osg, TexGen, TEXGEN)
virtual bool isTextureAttribute () const
virtual int compare (const StateAttribute &sa) const
virtual bool getModeUsage (ModeUsage &usage) const
virtual void apply (State &state) const
void setMode (Mode mode)
Mode getMode () const
void setPlane (Coord which, const Plane &plane)
PlanegetPlane (Coord which)
const PlanegetPlane (Coord which) const
void setPlanesFromMatrix (const Matrixd &matrix)

Protected Member Functions

virtual ~TexGen (void)

Protected Attributes

Mode _mode
Plane _plane_s
Plane _plane_t
Plane _plane_r
Plane _plane_q

Detailed Description

TexGen encapsulates the OpenGL glTexGen (texture coordinate generation) state.


Member Enumeration Documentation

enum osg::TexGen::Coord

Enumerator:
S 
T 
R 
Q 

enum osg::TexGen::Mode

Enumerator:
OBJECT_LINEAR 
EYE_LINEAR 
SPHERE_MAP 
NORMAL_MAP 
REFLECTION_MAP 


Constructor & Destructor Documentation

osg::TexGen::TexGen (  ) 

osg::TexGen::TexGen ( const TexGen texgen,
const CopyOp copyop = CopyOp::SHALLOW_COPY 
) [inline]

Copy constructor using CopyOp to manage deep vs shallow copy.

virtual osg::TexGen::~TexGen ( void   )  [protected, virtual]


Member Function Documentation

virtual void osg::TexGen::apply ( State state  )  const [virtual]

apply the OpenGL state attributes. The global state for the current OpenGL context is passed in to allow the StateAttribute to obtain details on the the current context and state.

Implements osg::StateAttribute.

virtual int osg::TexGen::compare ( const StateAttribute sa  )  const [inline, virtual]

Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.

Implements osg::StateAttribute.

Mode osg::TexGen::getMode (  )  const [inline]

virtual bool osg::TexGen::getModeUsage ( ModeUsage &  usage  )  const [inline, virtual]

const Plane& osg::TexGen::getPlane ( Coord  which  )  const

Plane& osg::TexGen::getPlane ( Coord  which  ) 

virtual bool osg::TexGen::isTextureAttribute (  )  const [inline, virtual]

Return true if StateAttribute is a type which controls texturing and needs to be issued w.r.t to specific texture unit.

Reimplemented from osg::StateAttribute.

osg::TexGen::META_StateAttribute ( osg  ,
TexGen  ,
TEXGEN   
)

void osg::TexGen::setMode ( Mode  mode  )  [inline]

void osg::TexGen::setPlane ( Coord  which,
const Plane plane 
)

void osg::TexGen::setPlanesFromMatrix ( const Matrixd matrix  ) 

Set the tex gen planes from specified matrix. Typical usage would be to pass in a projection matrix to set up projective texturing.


Member Data Documentation

Mode osg::TexGen::_mode [protected]

Plane osg::TexGen::_plane_q [protected]

Plane osg::TexGen::_plane_r [protected]

Plane osg::TexGen::_plane_s [protected]

Additional texgen coefficents for GL_OBJECT_PLANE or GL_EYE_PLANE,

Plane osg::TexGen::_plane_t [protected]


The documentation for this class was generated from the following file:
Generated on Sun Oct 1 13:17:08 2006 for openscenegraph by  doxygen 1.4.7