openscenegraph
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
osg::Geometry Class Reference

#include <Geometry>

Inheritance diagram for osg::Geometry:
osg::Drawable osg::Node osg::Object osg::Referenced osg::QueryGeometry osg::ShapeDrawable osgAnimation::MorphGeometry osgAnimation::RigGeometry osgSim::ImpostorSprite osgUtil::DelaunayConstraint osgWidget::Widget osgWidget::Frame::Border osgWidget::Frame::Corner osgWidget::Label osgWidget::NotifyWidget osgWidget::NullWidget osgWidget::Window::EmbeddedWindow osgWidget::Input

Public Types

enum  AttributeBinding { BIND_OFF =0 , BIND_OVERALL =1 , BIND_PER_PRIMITIVE_SET =2 , BIND_PER_VERTEX =4 }
 
typedef std::vector< osg::ref_ptr< osg::Array > > ArrayList
 
typedef std::vector< ref_ptr< PrimitiveSet > > PrimitiveSetList
 
typedef std::vector< osg::DrawElements * > DrawElementsList
 
- Public Types inherited from osg::Drawable
enum  AttributeTypes {
  VERTICES = 0 , WEIGHTS = 1 , NORMALS = 2 , COLORS = 3 ,
  SECONDARY_COLORS = 4 , FOG_COORDS = 5 , ATTRIBUTE_6 = 6 , ATTRIBUTE_7 = 7 ,
  TEXTURE_COORDS = 8 , TEXTURE_COORDS_0 = TEXTURE_COORDS , TEXTURE_COORDS_1 = TEXTURE_COORDS_0+1 , TEXTURE_COORDS_2 = TEXTURE_COORDS_0+2 ,
  TEXTURE_COORDS_3 = TEXTURE_COORDS_0+3 , TEXTURE_COORDS_4 = TEXTURE_COORDS_0+4 , TEXTURE_COORDS_5 = TEXTURE_COORDS_0+5 , TEXTURE_COORDS_6 = TEXTURE_COORDS_0+6 ,
  TEXTURE_COORDS_7 = TEXTURE_COORDS_0+7
}
 
typedef DrawableUpdateCallback UpdateCallback
 
typedef DrawableEventCallback EventCallback
 
typedef DrawableCullCallback CullCallback
 
typedef unsigned int AttributeType
 
- Public Types inherited from osg::Node
typedef std::vector< Group * > ParentList
 
typedef unsigned int NodeMask
 
typedef std::vector< std::string > DescriptionList
 
- Public Types inherited from osg::Object
enum  DataVariance { DYNAMIC , STATIC , UNSPECIFIED }
 

Public Member Functions

 Geometry ()
 
 Geometry (const Geometry &geometry, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 
 META_Node (osg, Geometry)
 
virtual GeometryasGeometry ()
 
virtual const GeometryasGeometry () const
 
bool empty () const
 
void setVertexArray (Array *array)
 
ArraygetVertexArray ()
 
const ArraygetVertexArray () const
 
void setNormalArray (Array *array)
 
void setNormalArray (Array *array, osg::Array::Binding binding)
 
ArraygetNormalArray ()
 
const ArraygetNormalArray () const
 
void setColorArray (Array *array)
 
void setColorArray (Array *array, osg::Array::Binding binding)
 
ArraygetColorArray ()
 
const ArraygetColorArray () const
 
void setSecondaryColorArray (Array *array)
 
void setSecondaryColorArray (Array *array, osg::Array::Binding binding)
 
ArraygetSecondaryColorArray ()
 
const ArraygetSecondaryColorArray () const
 
void setFogCoordArray (Array *array)
 
void setFogCoordArray (Array *array, osg::Array::Binding binding)
 
ArraygetFogCoordArray ()
 
const ArraygetFogCoordArray () const
 
void setTexCoordArray (unsigned int unit, Array *array)
 
void setTexCoordArray (unsigned int unit, Array *array, osg::Array::Binding binding)
 
ArraygetTexCoordArray (unsigned int unit)
 
const ArraygetTexCoordArray (unsigned int unit) const
 
unsigned int getNumTexCoordArrays () const
 
void setTexCoordArrayList (const ArrayList &arrrayList)
 
ArrayListgetTexCoordArrayList ()
 
const ArrayListgetTexCoordArrayList () const
 
void setVertexAttribArray (unsigned int index, Array *array)
 
void setVertexAttribArray (unsigned int index, Array *array, osg::Array::Binding binding)
 
ArraygetVertexAttribArray (unsigned int index)
 
const ArraygetVertexAttribArray (unsigned int index) const
 
unsigned int getNumVertexAttribArrays () const
 
void setVertexAttribArrayList (const ArrayList &arrayList)
 
ArrayListgetVertexAttribArrayList ()
 
const ArrayListgetVertexAttribArrayList () const
 
void setPrimitiveSetList (const PrimitiveSetList &primitives)
 
PrimitiveSetListgetPrimitiveSetList ()
 
const PrimitiveSetListgetPrimitiveSetList () const
 
unsigned int getNumPrimitiveSets () const
 
PrimitiveSetgetPrimitiveSet (unsigned int pos)
 
const PrimitiveSetgetPrimitiveSet (unsigned int pos) const
 
bool addPrimitiveSet (PrimitiveSet *primitiveset)
 
bool setPrimitiveSet (unsigned int i, PrimitiveSet *primitiveset)
 
bool insertPrimitiveSet (unsigned int i, PrimitiveSet *primitiveset)
 
bool removePrimitiveSet (unsigned int i, unsigned int numElementsToRemove=1)
 
unsigned int getPrimitiveSetIndex (const PrimitiveSet *primitiveset) const
 
void configureBufferObjects ()
 
bool containsSharedArrays () const
 
void duplicateSharedArrays ()
 
virtual void setUseVertexBufferObjects (bool flag)
 
virtual void dirtyGLObjects ()
 
virtual void resizeGLObjectBuffers (unsigned int maxSize)
 
virtual void releaseGLObjects (State *state=0) const
 
bool getArrayList (ArrayList &arrayList) const
 
bool getDrawElementsList (DrawElementsList &drawElementsList) const
 
osg::VertexBufferObjectgetOrCreateVertexBufferObject ()
 
osg::ElementBufferObjectgetOrCreateElementBufferObject ()
 
virtual unsigned int getGLObjectSizeHint () const
 
virtual void compileGLObjects (RenderInfo &renderInfo) const
 
virtual void drawImplementation (RenderInfo &renderInfo) const
 
void drawVertexArraysImplementation (RenderInfo &renderInfo) const
 
void drawPrimitivesImplementation (RenderInfo &renderInfo) const
 
virtual bool supports (const Drawable::AttributeFunctor &) const
 
virtual void accept (Drawable::AttributeFunctor &af)
 
virtual bool supports (const Drawable::ConstAttributeFunctor &) const
 
virtual void accept (Drawable::ConstAttributeFunctor &af) const
 
virtual bool supports (const PrimitiveFunctor &) const
 
virtual void accept (PrimitiveFunctor &pf) const
 
virtual bool supports (const PrimitiveIndexFunctor &) const
 
virtual void accept (PrimitiveIndexFunctor &pf) const
 
bool containsDeprecatedData () const
 
bool checkForDeprecatedData ()
 
void fixDeprecatedData ()
 
void setNormalBinding (AttributeBinding ab)
 
void setColorBinding (AttributeBinding ab)
 
void setSecondaryColorBinding (AttributeBinding ab)
 
void setFogCoordBinding (AttributeBinding ab)
 
void setVertexAttribBinding (unsigned int index, AttributeBinding ab)
 
AttributeBinding getNormalBinding () const
 
AttributeBinding getColorBinding () const
 
AttributeBinding getSecondaryColorBinding () const
 
AttributeBinding getFogCoordBinding () const
 
AttributeBinding getVertexAttribBinding (unsigned int index) const
 
void setVertexAttribNormalize (unsigned int index, GLboolean norm)
 
GLboolean getVertexAttribNormalize (unsigned int index) const
 
- Public Member Functions inherited from osg::Drawable
 Drawable ()
 
 Drawable (const Drawable &drawable, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 
 META_Node (osg, Drawable)
 
virtual DrawableasDrawable ()
 
virtual const DrawableasDrawable () const
 
virtual void computeDataVariance ()
 
MatrixList getWorldMatrices (const osg::Node *haltTraversalAtNode=0) const
 
void setInitialBound (const osg::BoundingBox &bbox)
 
const BoundingBoxgetInitialBound () const
 
const BoundingSpheregetBound () const
 
const BoundingBoxgetBoundingBox () const
 
virtual BoundingSphere computeBound () const
 
virtual BoundingBox computeBoundingBox () const
 
void setComputeBoundingBoxCallback (ComputeBoundingBoxCallback *callback)
 
ComputeBoundingBoxCallbackgetComputeBoundingBoxCallback ()
 
const ComputeBoundingBoxCallbackgetComputeBoundingBoxCallback () const
 
virtual void setShape (Shape *shape)
 
template<class T >
void setShape (const ref_ptr< T > &shape)
 
ShapegetShape ()
 
const ShapegetShape () const
 
void setSupportsDisplayList (bool flag)
 
bool getSupportsDisplayList () const
 
void setUseDisplayList (bool flag)
 
bool getUseDisplayList () const
 
GLuint & getDisplayList (unsigned int contextID) const
 
bool getUseVertexBufferObjects () const
 
void setUseVertexArrayObject (bool flag)
 
bool getUseVertexArrayObject () const
 
void draw (RenderInfo &renderInfo) const
 
void drawInner (RenderInfo &renderInfo) const
 
void setCreateVertexArrayStateCallback (CreateVertexArrayStateCallback *cb)
 
CreateVertexArrayStateCallbackgetCreateVertexArrayStateCallback ()
 
const CreateVertexArrayStateCallbackgetCreateVertexArrayStateCallback () const
 
VertexArrayStatecreateVertexArrayState (RenderInfo &renderInfo) const
 
void setVertexArrayStateList (VertexArrayStateList &vasl)
 
VertexArrayStateListgetVertexArrayStateList ()
 
const VertexArrayStateListgetVertexArrayStateList () const
 
virtual void setThreadSafeRefUnref (bool threadSafe)
 
virtual void setDrawCallback (DrawCallback *dc)
 
DrawCallbackgetDrawCallback ()
 
const DrawCallbackgetDrawCallback () const
 
- Public Member Functions inherited from osg::Node
 Node ()
 
 Node (const Node &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 
virtual ObjectcloneType () const
 
virtual Objectclone (const CopyOp &copyop) const
 
virtual bool isSameKindAs (const Object *obj) const
 
virtual const char * libraryName () const
 
virtual const char * className () const
 
virtual NodeasNode ()
 
virtual const NodeasNode () const
 
virtual GroupasGroup ()
 
virtual const GroupasGroup () const
 
virtual TransformasTransform ()
 
virtual const TransformasTransform () const
 
virtual SwitchasSwitch ()
 
virtual const SwitchasSwitch () const
 
virtual GeodeasGeode ()
 
virtual const GeodeasGeode () const
 
virtual osgTerrain::TerrainasTerrain ()
 
virtual const osgTerrain::TerrainasTerrain () const
 
virtual void accept (NodeVisitor &nv)
 
virtual void ascend (NodeVisitor &nv)
 
virtual void traverse (NodeVisitor &)
 
const ParentListgetParents () const
 
ParentList getParents ()
 
GroupgetParent (unsigned int i)
 
const GroupgetParent (unsigned int i) const
 
unsigned int getNumParents () const
 
NodePathList getParentalNodePaths (osg::Node *haltTraversalAtNode=0) const
 
MatrixList getWorldMatrices (const osg::Node *haltTraversalAtNode=0) const
 
void setUpdateCallback (Callback *nc)
 
template<class T >
void setUpdateCallback (const ref_ptr< T > &nc)
 
CallbackgetUpdateCallback ()
 
const CallbackgetUpdateCallback () const
 
void addUpdateCallback (Callback *nc)
 
template<class T >
void addUpdateCallback (const ref_ptr< T > &nc)
 
void removeUpdateCallback (Callback *nc)
 
template<class T >
void removeUpdateCallback (const ref_ptr< T > &nc)
 
unsigned int getNumChildrenRequiringUpdateTraversal () const
 
void setEventCallback (Callback *nc)
 
template<class T >
void setEventCallback (const ref_ptr< T > &nc)
 
CallbackgetEventCallback ()
 
const CallbackgetEventCallback () const
 
void addEventCallback (Callback *nc)
 
template<class T >
void addEventCallback (const ref_ptr< T > &nc)
 
void removeEventCallback (Callback *nc)
 
template<class T >
void removeEventCallback (const ref_ptr< T > &nc)
 
unsigned int getNumChildrenRequiringEventTraversal () const
 
void setCullCallback (Callback *nc)
 
template<class T >
void setCullCallback (const ref_ptr< T > &nc)
 
CallbackgetCullCallback ()
 
const CallbackgetCullCallback () const
 
void addCullCallback (Callback *nc)
 
template<class T >
void addCullCallback (const ref_ptr< T > &nc)
 
void removeCullCallback (Callback *nc)
 
template<class T >
void removeCullCallback (const ref_ptr< T > &nc)
 
void setCullingActive (bool active)
 
bool getCullingActive () const
 
unsigned int getNumChildrenWithCullingDisabled () const
 
bool isCullingActive () const
 
unsigned int getNumChildrenWithOccluderNodes () const
 
bool containsOccluderNodes () const
 
void setNodeMask (NodeMask nm)
 
NodeMask getNodeMask () const
 
void setStateSet (osg::StateSet *stateset)
 
template<class T >
void setStateSet (const osg::ref_ptr< T > &stateset)
 
osg::StateSetgetOrCreateStateSet ()
 
osg::StateSetgetStateSet ()
 
const osg::StateSetgetStateSet () const
 
void setDescriptions (const DescriptionList &descriptions)
 
DescriptionListgetDescriptions ()
 
const DescriptionListgetDescriptions () const
 
const std::string & getDescription (unsigned int i) const
 
std::string & getDescription (unsigned int i)
 
unsigned int getNumDescriptions () const
 
void addDescription (const std::string &desc)
 
void setInitialBound (const osg::BoundingSphere &bsphere)
 
const BoundingSpheregetInitialBound () const
 
void dirtyBound ()
 
const BoundingSpheregetBound () const
 
void setComputeBoundingSphereCallback (ComputeBoundingSphereCallback *callback)
 
template<class T >
void setComputeBoundingSphereCallback (const ref_ptr< T > &callback)
 
ComputeBoundingSphereCallbackgetComputeBoundingSphereCallback ()
 
const ComputeBoundingSphereCallbackgetComputeBoundingSphereCallback () const
 
- Public Member Functions inherited from osg::Object
 Object ()
 
 Object (bool threadSafeRefUnref)
 
 Object (const Object &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 
std::string getCompoundClassName () const
 
virtual NodeVisitorasNodeVisitor ()
 
virtual const NodeVisitorasNodeVisitor () const
 
virtual StateSetasStateSet ()
 
virtual const StateSetasStateSet () const
 
virtual StateAttributeasStateAttribute ()
 
virtual const StateAttributeasStateAttribute () const
 
virtual UniformasUniform ()
 
virtual const UniformasUniform () const
 
virtual CameraasCamera ()
 
virtual const CameraasCamera () const
 
virtual CallbackasCallback ()
 
virtual const CallbackasCallback () const
 
virtual CallbackObjectasCallbackObject ()
 
virtual const CallbackObjectasCallbackObject () const
 
virtual UserDataContainerasUserDataContainer ()
 
virtual const UserDataContainerasUserDataContainer () const
 
virtual ValueObjectasValueObject ()
 
virtual const ValueObjectasValueObject () const
 
virtual ImageasImage ()
 
virtual const ImageasImage () const
 
virtual void setName (const std::string &name)
 
void setName (const char *name)
 
const std::string & getName () const
 
void setDataVariance (DataVariance dv)
 
DataVariance getDataVariance () const
 
void setUserDataContainer (osg::UserDataContainer *udc)
 
template<class T >
void setUserDataContainer (const ref_ptr< T > &udc)
 
osg::UserDataContainergetUserDataContainer ()
 
const osg::UserDataContainergetUserDataContainer () const
 
osg::UserDataContainergetOrCreateUserDataContainer ()
 
virtual void setUserData (Referenced *obj)
 
template<class T >
void setUserData (const ref_ptr< T > &ud)
 
virtual ReferencedgetUserData ()
 
virtual const ReferencedgetUserData () const
 
template<typename T >
bool getUserValue (const std::string &name, T &value) const
 
template<typename T >
void setUserValue (const std::string &name, const T &value)
 
template<typename T >
BoolValueObject UCharValueObject UShortValueObject UIntValueObject DoubleValueObject Vec3fValueObject Vec2dValueObject Vec4dValueObject PlaneValueObject MatrixdValueObject BoundingBoxdValueObject BoundingSpheredValueObject bool getUserValue (const std::string &name, T &value) const
 
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 
 Referenced (bool threadSafeRefUnref)
 
 Referenced (const Referenced &)
 
Referencedoperator= (const Referenced &)
 
bool getThreadSafeRefUnref () const
 
OpenThreads::MutexgetRefMutex () const
 
int ref () const
 
int unref () const
 
int unref_nodelete () const
 
int referenceCount () const
 
ObserverSetgetObserverSet () const
 
ObserverSetgetOrCreateObserverSet () const
 
void addObserver (Observer *observer) const
 
void removeObserver (Observer *observer) const
 

Protected Member Functions

Geometryoperator= (const Geometry &)
 
virtual ~Geometry ()
 
void addVertexBufferObjectIfRequired (osg::Array *array)
 
void addElementBufferObjectIfRequired (osg::PrimitiveSet *primitiveSet)
 
virtual VertexArrayStatecreateVertexArrayStateImplementation (RenderInfo &renderInfo) const
 
- Protected Member Functions inherited from osg::Drawable
Drawableoperator= (const Drawable &)
 
virtual ~Drawable ()
 
void setBound (const BoundingBox &bb) const
 
- Protected Member Functions inherited from osg::Node
virtual ~Node ()
 
void addParent (osg::Group *parent)
 
void removeParent (osg::Group *parent)
 
void setNumChildrenRequiringUpdateTraversal (unsigned int num)
 
void setNumChildrenRequiringEventTraversal (unsigned int num)
 
void setNumChildrenWithCullingDisabled (unsigned int num)
 
void setNumChildrenWithOccluderNodes (unsigned int num)
 
- Protected Member Functions inherited from osg::Object
virtual ~Object ()
 
- Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
 
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
 
void deleteUsingDeleteHandler () const
 

Protected Attributes

PrimitiveSetList _primitives
 
osg::ref_ptr< Array_vertexArray
 
osg::ref_ptr< Array_normalArray
 
osg::ref_ptr< Array_colorArray
 
osg::ref_ptr< Array_secondaryColorArray
 
osg::ref_ptr< Array_fogCoordArray
 
ArrayList _texCoordList
 
ArrayList _vertexAttribList
 
bool _containsDeprecatedData
 
- Protected Attributes inherited from osg::Drawable
BoundingBox _initialBoundingBox
 
ref_ptr< ComputeBoundingBoxCallback_computeBoundingBoxCallback
 
BoundingBox _boundingBox
 
ref_ptr< Shape_shape
 
bool _supportsDisplayList
 
bool _useDisplayList
 
bool _supportsVertexBufferObjects
 
bool _useVertexBufferObjects
 
bool _useVertexArrayObject
 
GLObjectList _globjList
 
VertexArrayStateList _vertexArrayStateList
 
ref_ptr< DrawCallback_drawCallback
 
ref_ptr< CreateVertexArrayStateCallback_createVertexArrayStateCallback
 
- Protected Attributes inherited from osg::Node
BoundingSphere _initialBound
 
ref_ptr< ComputeBoundingSphereCallback_computeBoundCallback
 
BoundingSphere _boundingSphere
 
bool _boundingSphereComputed
 
ParentList _parents
 
ref_ptr< Callback_updateCallback
 
unsigned int _numChildrenRequiringUpdateTraversal
 
ref_ptr< Callback_eventCallback
 
unsigned int _numChildrenRequiringEventTraversal
 
ref_ptr< Callback_cullCallback
 
bool _cullingActive
 
unsigned int _numChildrenWithCullingDisabled
 
unsigned int _numChildrenWithOccluderNodes
 
NodeMask _nodeMask
 
ref_ptr< StateSet_stateset
 
- Protected Attributes inherited from osg::Object
std::string _name
 
DataVariance _dataVariance
 
osg::UserDataContainer_userDataContainer
 
- Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
 
OpenThreads::Atomic _refCount
 

Additional Inherited Members

- Static Public Member Functions inherited from osg::Drawable
static GLuint generateDisplayList (unsigned int contextID, unsigned int sizeHint=0)
 
static void deleteDisplayList (unsigned int contextID, GLuint globj, unsigned int sizeHint=0)
 
static void setMinimumNumberOfDisplayListsToRetainInCache (unsigned int minimum)
 
static unsigned int getMinimumNumberOfDisplayListsToRetainInCache ()
 
- Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
 
static void setDeleteHandler (DeleteHandler *handler)
 
static DeleteHandlergetDeleteHandler ()
 
- Protected Types inherited from osg::Drawable
typedef osg::buffered_value< GLuint > GLObjectList
 

Member Typedef Documentation

◆ ArrayList

◆ DrawElementsList

◆ PrimitiveSetList

Member Enumeration Documentation

◆ AttributeBinding

deprecated, Same values as Array::Binding.

Enumerator
BIND_OFF 
BIND_OVERALL 
BIND_PER_PRIMITIVE_SET 
BIND_PER_VERTEX 

Constructor & Destructor Documentation

◆ Geometry() [1/2]

osg::Geometry::Geometry ( )

◆ Geometry() [2/2]

osg::Geometry::Geometry ( const Geometry geometry,
const CopyOp copyop = CopyOp::SHALLOW_COPY 
)

Copy constructor using CopyOp to manage deep vs shallow copy.

◆ ~Geometry()

virtual osg::Geometry::~Geometry ( )
protectedvirtual

Member Function Documentation

◆ accept() [1/4]

virtual void osg::Geometry::accept ( Drawable::AttributeFunctor af)
virtual

Accept an Drawable::AttributeFunctor and call its methods to tell it about the internal attributes that this Drawable has.

Reimplemented from osg::Drawable.

◆ accept() [2/4]

virtual void osg::Geometry::accept ( Drawable::ConstAttributeFunctor af) const
virtual

Accept a Drawable::ConstAttributeFunctor and call its methods to tell it about the internal attributes that this Drawable has.

Reimplemented from osg::Drawable.

◆ accept() [3/4]

virtual void osg::Geometry::accept ( PrimitiveFunctor pf) const
virtual

Accept a PrimitiveFunctor and call its methods to tell it about the internal primitives that this Drawable has.

Reimplemented from osg::Drawable.

◆ accept() [4/4]

virtual void osg::Geometry::accept ( PrimitiveIndexFunctor pf) const
virtual

Accept a PrimitiveFunctor and call its methods to tell it about the internal primitives that this Drawable has.

Reimplemented from osg::Drawable.

◆ addElementBufferObjectIfRequired()

void osg::Geometry::addElementBufferObjectIfRequired ( osg::PrimitiveSet primitiveSet)
protected

◆ addPrimitiveSet()

bool osg::Geometry::addPrimitiveSet ( PrimitiveSet primitiveset)

Add a primitive set to the geometry.

◆ addVertexBufferObjectIfRequired()

void osg::Geometry::addVertexBufferObjectIfRequired ( osg::Array array)
protected

◆ asGeometry() [1/2]

virtual Geometry * osg::Geometry::asGeometry ( )
inlinevirtual

convert 'this' into a Geometry pointer if Node is a Geometry, otherwise return 0. Equivalent to dynamic_cast<Group*>(this).

Reimplemented from osg::Node.

◆ asGeometry() [2/2]

virtual const Geometry * osg::Geometry::asGeometry ( ) const
inlinevirtual

convert 'const this' into a const Geometry pointer if Node is a Geometry, otherwise return 0. Equivalent to dynamic_cast<const Group*>(this).

Reimplemented from osg::Node.

◆ checkForDeprecatedData()

bool osg::Geometry::checkForDeprecatedData ( )

fallback for deprecated functionality. Return true if the Geometry contains any array indices or BIND_PER_PRIMITIVE arrays.

◆ compileGLObjects()

virtual void osg::Geometry::compileGLObjects ( RenderInfo renderInfo) const
virtual

Immediately compile this Drawable into an OpenGL Display List/VertexBufferObjects.

Note
Operation is ignored if _useDisplayList is false or VertexBufferObjects are not used.

Reimplemented from osg::Drawable.

◆ configureBufferObjects()

void osg::Geometry::configureBufferObjects ( )

Convenience method that checks all the vertex arrays to make sure that the buffer objects are all assigned appropriate.

◆ containsDeprecatedData()

bool osg::Geometry::containsDeprecatedData ( ) const
inline

Return true if the deprecated use array indices or BIND_PER_PRIMITIVE binding has been assigned to arrays.

◆ containsSharedArrays()

bool osg::Geometry::containsSharedArrays ( ) const

return true if any arrays are shared.

◆ createVertexArrayStateImplementation()

virtual VertexArrayState * osg::Geometry::createVertexArrayStateImplementation ( RenderInfo renderInfo) const
protectedvirtual

Implementation of Create the VertexArrayState object.

Reimplemented from osg::Drawable.

◆ dirtyGLObjects()

virtual void osg::Geometry::dirtyGLObjects ( )
virtual

Force a recompile on next draw() of any OpenGL objects associated with this geoset.

Reimplemented from osg::Drawable.

◆ drawImplementation()

virtual void osg::Geometry::drawImplementation ( RenderInfo renderInfo) const
virtual

Draw Geometry directly ignoring an OpenGL display list which could be attached. This is the internal draw method which does the drawing itself, and is the method to override when deriving from Geometry for user-drawn objects.

Reimplemented from osg::Drawable.

Reimplemented in osg::QueryGeometry.

◆ drawPrimitivesImplementation()

void osg::Geometry::drawPrimitivesImplementation ( RenderInfo renderInfo) const

dispatch the primitives to OpenGL, called by drawImplemtation() after calling drawVertexArraysImplementation().

◆ drawVertexArraysImplementation()

void osg::Geometry::drawVertexArraysImplementation ( RenderInfo renderInfo) const

Set up the vertex arrays for the purpose of rendering, called by drawImplemtation() prior to it calling drawPrimitivesImplementation().

◆ duplicateSharedArrays()

void osg::Geometry::duplicateSharedArrays ( )

duplicate any shared arrays.

◆ empty()

bool osg::Geometry::empty ( ) const

◆ fixDeprecatedData()

void osg::Geometry::fixDeprecatedData ( )

fallback for deprecated functionality. Removes any array indices and BIND_PER_PRIMITIVE arrays.

◆ getArrayList()

bool osg::Geometry::getArrayList ( ArrayList arrayList) const

◆ getColorArray() [1/2]

Array * osg::Geometry::getColorArray ( )
inline

◆ getColorArray() [2/2]

const Array * osg::Geometry::getColorArray ( ) const
inline

◆ getColorBinding()

AttributeBinding osg::Geometry::getColorBinding ( ) const

◆ getDrawElementsList()

bool osg::Geometry::getDrawElementsList ( DrawElementsList drawElementsList) const

◆ getFogCoordArray() [1/2]

Array * osg::Geometry::getFogCoordArray ( )
inline

◆ getFogCoordArray() [2/2]

const Array * osg::Geometry::getFogCoordArray ( ) const
inline

◆ getFogCoordBinding()

AttributeBinding osg::Geometry::getFogCoordBinding ( ) const

◆ getGLObjectSizeHint()

virtual unsigned int osg::Geometry::getGLObjectSizeHint ( ) const
virtual

Return the estimated size of GLObjects (display lists/vertex buffer objects) that are associated with this drawable. This size is used a hint for reuse of deleted display lists/vertex buffer objects.

Reimplemented from osg::Drawable.

◆ getNormalArray() [1/2]

Array * osg::Geometry::getNormalArray ( )
inline

◆ getNormalArray() [2/2]

const Array * osg::Geometry::getNormalArray ( ) const
inline

◆ getNormalBinding()

AttributeBinding osg::Geometry::getNormalBinding ( ) const

deprecated, use array->get*Binding(..).

◆ getNumPrimitiveSets()

unsigned int osg::Geometry::getNumPrimitiveSets ( ) const
inline

◆ getNumTexCoordArrays()

unsigned int osg::Geometry::getNumTexCoordArrays ( ) const
inline

◆ getNumVertexAttribArrays()

unsigned int osg::Geometry::getNumVertexAttribArrays ( ) const
inline

◆ getOrCreateElementBufferObject()

osg::ElementBufferObject * osg::Geometry::getOrCreateElementBufferObject ( )

◆ getOrCreateVertexBufferObject()

osg::VertexBufferObject * osg::Geometry::getOrCreateVertexBufferObject ( )

◆ getPrimitiveSet() [1/2]

PrimitiveSet * osg::Geometry::getPrimitiveSet ( unsigned int  pos)
inline

◆ getPrimitiveSet() [2/2]

const PrimitiveSet * osg::Geometry::getPrimitiveSet ( unsigned int  pos) const
inline

◆ getPrimitiveSetIndex()

unsigned int osg::Geometry::getPrimitiveSetIndex ( const PrimitiveSet primitiveset) const

Get the index number of a primitive set, return a value between 0 and getNumPrimitiveSet()-1 if found, if not found then return getNumPrimitiveSet(). When checking for a valid find value use if ((value=geometry->getPrimitiveSetIndex(primitive))!=geometry.getNumPrimitiveSet())

◆ getPrimitiveSetList() [1/2]

PrimitiveSetList & osg::Geometry::getPrimitiveSetList ( )
inline

◆ getPrimitiveSetList() [2/2]

const PrimitiveSetList & osg::Geometry::getPrimitiveSetList ( ) const
inline

◆ getSecondaryColorArray() [1/2]

Array * osg::Geometry::getSecondaryColorArray ( )
inline

◆ getSecondaryColorArray() [2/2]

const Array * osg::Geometry::getSecondaryColorArray ( ) const
inline

◆ getSecondaryColorBinding()

AttributeBinding osg::Geometry::getSecondaryColorBinding ( ) const

◆ getTexCoordArray() [1/2]

Array * osg::Geometry::getTexCoordArray ( unsigned int  unit)

◆ getTexCoordArray() [2/2]

const Array * osg::Geometry::getTexCoordArray ( unsigned int  unit) const

◆ getTexCoordArrayList() [1/2]

ArrayList & osg::Geometry::getTexCoordArrayList ( )
inline

◆ getTexCoordArrayList() [2/2]

const ArrayList & osg::Geometry::getTexCoordArrayList ( ) const
inline

◆ getVertexArray() [1/2]

Array * osg::Geometry::getVertexArray ( )
inline

◆ getVertexArray() [2/2]

const Array * osg::Geometry::getVertexArray ( ) const
inline

◆ getVertexAttribArray() [1/2]

Array * osg::Geometry::getVertexAttribArray ( unsigned int  index)

◆ getVertexAttribArray() [2/2]

const Array * osg::Geometry::getVertexAttribArray ( unsigned int  index) const

◆ getVertexAttribArrayList() [1/2]

ArrayList & osg::Geometry::getVertexAttribArrayList ( )
inline

◆ getVertexAttribArrayList() [2/2]

const ArrayList & osg::Geometry::getVertexAttribArrayList ( ) const
inline

◆ getVertexAttribBinding()

AttributeBinding osg::Geometry::getVertexAttribBinding ( unsigned int  index) const

◆ getVertexAttribNormalize()

GLboolean osg::Geometry::getVertexAttribNormalize ( unsigned int  index) const

deprecated, use array->get*Normalize(..).

◆ insertPrimitiveSet()

bool osg::Geometry::insertPrimitiveSet ( unsigned int  i,
PrimitiveSet primitiveset 
)

Insert a primitive set to the specified position in geometry's primitive set list.

◆ META_Node()

osg::Geometry::META_Node ( osg  ,
Geometry   
)

◆ operator=()

Geometry & osg::Geometry::operator= ( const Geometry )
inlineprotected

◆ releaseGLObjects()

virtual void osg::Geometry::releaseGLObjects ( State state = 0) const
virtual

If State is non-zero, this function releases OpenGL objects for the specified graphics context. Otherwise, releases OpenGL objects for all graphics contexts.

Reimplemented from osg::Drawable.

Reimplemented in osg::QueryGeometry.

◆ removePrimitiveSet()

bool osg::Geometry::removePrimitiveSet ( unsigned int  i,
unsigned int  numElementsToRemove = 1 
)

Remove primitive set(s) from the specified position in geometry's primitive set list.

◆ resizeGLObjectBuffers()

virtual void osg::Geometry::resizeGLObjectBuffers ( unsigned int  maxSize)
virtual

Resize any per context GLObject buffers to specified size.

Reimplemented from osg::Drawable.

◆ setColorArray() [1/2]

void osg::Geometry::setColorArray ( Array array)
inline

◆ setColorArray() [2/2]

void osg::Geometry::setColorArray ( Array array,
osg::Array::Binding  binding 
)

◆ setColorBinding()

void osg::Geometry::setColorBinding ( AttributeBinding  ab)

◆ setFogCoordArray() [1/2]

void osg::Geometry::setFogCoordArray ( Array array)
inline

◆ setFogCoordArray() [2/2]

void osg::Geometry::setFogCoordArray ( Array array,
osg::Array::Binding  binding 
)

◆ setFogCoordBinding()

void osg::Geometry::setFogCoordBinding ( AttributeBinding  ab)

◆ setNormalArray() [1/2]

void osg::Geometry::setNormalArray ( Array array)
inline

◆ setNormalArray() [2/2]

void osg::Geometry::setNormalArray ( Array array,
osg::Array::Binding  binding 
)

◆ setNormalBinding()

void osg::Geometry::setNormalBinding ( AttributeBinding  ab)

deprecated, use array->set*Binding(..).

◆ setPrimitiveSet()

bool osg::Geometry::setPrimitiveSet ( unsigned int  i,
PrimitiveSet primitiveset 
)

Set a primitive set to the specified position in geometry's primitive set list.

◆ setPrimitiveSetList()

void osg::Geometry::setPrimitiveSetList ( const PrimitiveSetList primitives)

◆ setSecondaryColorArray() [1/2]

void osg::Geometry::setSecondaryColorArray ( Array array)
inline

◆ setSecondaryColorArray() [2/2]

void osg::Geometry::setSecondaryColorArray ( Array array,
osg::Array::Binding  binding 
)

◆ setSecondaryColorBinding()

void osg::Geometry::setSecondaryColorBinding ( AttributeBinding  ab)

◆ setTexCoordArray() [1/2]

void osg::Geometry::setTexCoordArray ( unsigned int  unit,
Array array 
)
inline

◆ setTexCoordArray() [2/2]

void osg::Geometry::setTexCoordArray ( unsigned int  unit,
Array array,
osg::Array::Binding  binding 
)

◆ setTexCoordArrayList()

void osg::Geometry::setTexCoordArrayList ( const ArrayList arrrayList)

◆ setUseVertexBufferObjects()

virtual void osg::Geometry::setUseVertexBufferObjects ( bool  flag)
virtual

When set to true, ignore the setUseDisplayList() settings, and hints to the drawImplementation method to use OpenGL vertex buffer objects for rendering.

Reimplemented from osg::Drawable.

◆ setVertexArray()

void osg::Geometry::setVertexArray ( Array array)

◆ setVertexAttribArray() [1/2]

void osg::Geometry::setVertexAttribArray ( unsigned int  index,
Array array 
)
inline

◆ setVertexAttribArray() [2/2]

void osg::Geometry::setVertexAttribArray ( unsigned int  index,
Array array,
osg::Array::Binding  binding 
)

◆ setVertexAttribArrayList()

void osg::Geometry::setVertexAttribArrayList ( const ArrayList arrayList)

◆ setVertexAttribBinding()

void osg::Geometry::setVertexAttribBinding ( unsigned int  index,
AttributeBinding  ab 
)

◆ setVertexAttribNormalize()

void osg::Geometry::setVertexAttribNormalize ( unsigned int  index,
GLboolean  norm 
)

deprecated, use array->set*Normalize(..).

◆ supports() [1/4]

virtual bool osg::Geometry::supports ( const Drawable::AttributeFunctor ) const
inlinevirtual

Return true, osg::Geometry does support accept(Drawable::AttributeFunctor&).

Reimplemented from osg::Drawable.

◆ supports() [2/4]

virtual bool osg::Geometry::supports ( const Drawable::ConstAttributeFunctor ) const
inlinevirtual

Return true, osg::Geometry does support accept(Drawable::ConstAttributeFunctor&).

Reimplemented from osg::Drawable.

◆ supports() [3/4]

virtual bool osg::Geometry::supports ( const PrimitiveFunctor ) const
inlinevirtual

Return true, osg::Geometry does support accept(PrimitiveFunctor&).

Reimplemented from osg::Drawable.

◆ supports() [4/4]

virtual bool osg::Geometry::supports ( const PrimitiveIndexFunctor ) const
inlinevirtual

Return true, osg::Geometry does support accept(PrimitiveIndexFunctor&).

Reimplemented from osg::Drawable.

Member Data Documentation

◆ _colorArray

osg::ref_ptr<Array> osg::Geometry::_colorArray
protected

◆ _containsDeprecatedData

bool osg::Geometry::_containsDeprecatedData
protected

◆ _fogCoordArray

osg::ref_ptr<Array> osg::Geometry::_fogCoordArray
protected

◆ _normalArray

osg::ref_ptr<Array> osg::Geometry::_normalArray
protected

◆ _primitives

PrimitiveSetList osg::Geometry::_primitives
protected

◆ _secondaryColorArray

osg::ref_ptr<Array> osg::Geometry::_secondaryColorArray
protected

◆ _texCoordList

ArrayList osg::Geometry::_texCoordList
protected

◆ _vertexArray

osg::ref_ptr<Array> osg::Geometry::_vertexArray
protected

◆ _vertexAttribList

ArrayList osg::Geometry::_vertexAttribList
protected

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