Public Types | Public Member Functions | Protected Member Functions | Protected Attributes

osgShadow::ShadowVolumeGeometry Class Reference

Inheritance diagram for osgShadow::ShadowVolumeGeometry:
osg::Drawable osg::Object osg::Referenced

List of all members.

Public Types

enum  DrawMode { GEOMETRY, STENCIL_TWO_PASS, STENCIL_TWO_SIDED }
typedef std::vector< osg::Vec3Vec3List
typedef std::vector< GLuint > UIntList

Public Member Functions

 ShadowVolumeGeometry ()
 ShadowVolumeGeometry (const ShadowVolumeGeometry &oc, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
virtual Object * cloneType () const
virtual Object * clone (const osg::CopyOp &copyop) const
virtual bool isSameKindAs (const osg::Object *obj) const
virtual const char * libraryName () const
virtual const char * className () const
void setDrawMode (DrawMode mode)
DrawMode getDrawMode () const
void setVertices (const Vec3List &vertices)
Vec3ListgetVertices ()
const Vec3ListgetVertices () const
void setNormals (const Vec3List &normals)
Vec3ListgetNormals ()
const Vec3ListgetNormals () const
virtual void drawImplementation (osg::RenderInfo &renderInfo) const
virtual osg::BoundingBox computeBound () const

Protected Member Functions

virtual ~ShadowVolumeGeometry ()

Protected Attributes

DrawMode _drawMode
Vec3List _vertices
Vec3List _normals
UIntList _indices

Member Typedef Documentation

typedef std::vector<GLuint> osgShadow::ShadowVolumeGeometry::UIntList

Member Enumeration Documentation

Enumerator:
GEOMETRY 
STENCIL_TWO_PASS 
STENCIL_TWO_SIDED 

Constructor & Destructor Documentation

osgShadow::ShadowVolumeGeometry::ShadowVolumeGeometry (  )
osgShadow::ShadowVolumeGeometry::ShadowVolumeGeometry ( const ShadowVolumeGeometry oc,
const osg::CopyOp copyop = osg::CopyOp::SHALLOW_COPY 
)
virtual osgShadow::ShadowVolumeGeometry::~ShadowVolumeGeometry (  ) [inline, protected, virtual]

Member Function Documentation

virtual const char* osgShadow::ShadowVolumeGeometry::className (  ) const [inline, virtual]

return the name of the object's class type. Must be defined by derived classes.

Reimplemented from osg::Drawable.

virtual Object* osgShadow::ShadowVolumeGeometry::clone ( const osg::CopyOp  ) const [inline, virtual]

Clone an object, with Object* return type. Must be defined by derived classes.

Implements osg::Object.

virtual Object* osgShadow::ShadowVolumeGeometry::cloneType (  ) const [inline, virtual]

Clone the type of an object, with Object* return type. Must be defined by derived classes.

Implements osg::Object.

virtual osg::BoundingBox osgShadow::ShadowVolumeGeometry::computeBound (  ) const [virtual]

Compute the bounding box around occluder geometry.

Reimplemented from osg::Drawable.

virtual void osgShadow::ShadowVolumeGeometry::drawImplementation ( osg::RenderInfo renderInfo ) const [virtual]

Render the occluder geometry.

Implements osg::Drawable.

DrawMode osgShadow::ShadowVolumeGeometry::getDrawMode (  ) const [inline]
Vec3List& osgShadow::ShadowVolumeGeometry::getNormals (  ) [inline]
const Vec3List& osgShadow::ShadowVolumeGeometry::getNormals (  ) const [inline]
Vec3List& osgShadow::ShadowVolumeGeometry::getVertices (  ) [inline]
const Vec3List& osgShadow::ShadowVolumeGeometry::getVertices (  ) const [inline]
virtual bool osgShadow::ShadowVolumeGeometry::isSameKindAs ( const osg::Object obj ) const [inline, virtual]

Reimplemented from osg::Drawable.

References NULL.

virtual const char* osgShadow::ShadowVolumeGeometry::libraryName (  ) const [inline, virtual]

return the name of the object's library. Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name.

Reimplemented from osg::Drawable.

void osgShadow::ShadowVolumeGeometry::setDrawMode ( DrawMode  mode ) [inline]
void osgShadow::ShadowVolumeGeometry::setNormals ( const Vec3List normals ) [inline]
void osgShadow::ShadowVolumeGeometry::setVertices ( const Vec3List vertices ) [inline]

Member Data Documentation


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