class SG_EXPORT osg::Geometry


Inheritance:


Public Methods

[more] Geometry()
[more] Geometry(const Geometry& geometry, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
Copy constructor using CopyOp to manage deep vs shallow copy
[more]virtual Object* cloneType() const
[more]virtual Object* clone(const CopyOp& copyop) const
[more]virtual bool isSameKindAs(const Object* obj) const
[more]virtual const char* libraryName() const
[more]virtual const char* className() const
[more]virtual Geometry* asGeometry()
[more]virtual const Geometry* asGeometry() const
[more]void setVertexArray(Vec3Array* array)
[more]Vec3Array* getVertexArray()
[more]const Vec3Array* getVertexArray() const
[more]void setVertexIndices(IndexArray* array)
[more]IndexArray* getVertexIndices()
[more]const IndexArray* getVertexIndices() const
[more]void setNormalBinding(AttributeBinding ab)
[more]AttributeBinding getNormalBinding() const
[more]void setNormalArray(Vec3Array* array)
[more]Vec3Array* getNormalArray()
[more]const Vec3Array* getNormalArray() const
[more]void setNormalIndices(IndexArray* array)
[more]IndexArray* getNormalIndices()
[more]const IndexArray* getNormalIndices() const
[more]void setColorBinding(AttributeBinding ab)
[more]AttributeBinding getColorBinding() const
[more]void setColorArray(Array* array)
[more]Array* getColorArray()
[more]const Array* getColorArray() const
[more]void setColorIndices(IndexArray* array)
[more]IndexArray* getColorIndices()
[more]const IndexArray* getColorIndices() const
[more]void setSecondaryColorBinding(AttributeBinding ab)
[more]AttributeBinding getSecondaryColorBinding() const
[more]void setSecondaryColorArray(Array* array)
[more]Array* getSecondaryColorArray()
[more]const Array* getSecondaryColorArray() const
[more]void setSecondaryColorIndices(IndexArray* array)
[more]IndexArray* getSecondaryColorIndices()
[more]const IndexArray* getSecondaryColorIndices() const
[more]void setFogCoordBinding(AttributeBinding ab)
[more]AttributeBinding getFogCoordBinding() const
[more]void setFogCoordArray(Array* array)
[more]Array* getFogCoordArray()
[more]const Array* getFogCoordArray() const
[more]void setFogCoordIndices(IndexArray* array)
[more]IndexArray* getFogCoordIndices()
[more]const IndexArray* getFogCoordIndices() const
[more]void setTexCoordArray(unsigned int unit, Array*)
[more]Array* getTexCoordArray(unsigned int unit)
[more]const Array* getTexCoordArray(unsigned int unit) const
[more]void setTexCoordIndices(unsigned int unit, IndexArray*)
[more]IndexArray* getTexCoordIndices(unsigned int unit)
[more]const IndexArray* getTexCoordIndices(unsigned int unit) const
[more]unsigned int getNumTexCoordArrays() const
[more]TexCoordArrayList& getTexCoordArrayList()
[more]const TexCoordArrayList& getTexCoordArrayList() const
[more]void setPrimitiveSetList(const PrimitiveSetList& primitives)
[more]PrimitiveSetList& getPrimitiveSetList()
[more]const PrimitiveSetList& getPrimitiveSetList() const
[more]unsigned int getNumPrimitiveSets() const
[more]PrimitiveSet* getPrimitiveSet(unsigned int pos)
[more]const PrimitiveSet* getPrimitiveSet(unsigned int pos) const
[more]bool addPrimitiveSet(PrimitiveSet* primitiveset)
Add a primitive set to the geometry
[more]bool setPrimitiveSet(unsigned int i, PrimitiveSet* primitiveset)
Set a primitive set to the specified position in geometry's primitive set list
[more]bool insertPrimitiveSet(unsigned int i, PrimitiveSet* primitiveset)
Insert a primitive set to the specified position in geometry's primitive set list
[more]bool removePrimitiveSet(unsigned int i, unsigned int numElementsToRemove=1)
Remove primitive set(s) from the specified position in geometry's primitive set list
[more]unsigned int 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().
[more]bool areFastPathsUsed() const
return true if OpenGL fast paths will be used with drawing this Geometry.
[more]bool verifyBindings() const
[more]void computeCorrectBindingsAndArraySizes()
[more]virtual void drawImplementation(State& state) const
draw Geometry directly ignoring an OpenGL display list which could be attached.
[more]virtual bool supports(AttributeFunctor&) const
return true, osg::Geometry does support accept(AttributeFunctor&)
[more]virtual void accept(AttributeFunctor& af)
accept an AttributeFunctor and call its methods to tell it about the interal attributes that this Drawable has
[more]virtual bool supports(ConstAttributeFunctor&) const
return true, osg::Geometry does support accept(ConstAttributeFunctor&)
[more]virtual void accept(ConstAttributeFunctor& af) const
accept an ConstAttributeFunctor and call its methods to tell it about the interal attributes that this Drawable has
[more]virtual bool supports(PrimitiveFunctor&) const
return true, osg::Geometry does support accept(PrimitiveFunctor&)
[more]virtual void accept(PrimitiveFunctor& pf) const
accept a PrimitiveFunctor and call its methods to tell it about the interal primitives that this Drawable has

Public Members

[more]enum AttributeBinding
[more]typedef std::pair< ref_ptr<Array>, ref_ptr<IndexArray> > TexCoordArrayPair
[more]typedef std::vector< TexCoordArrayPair > TexCoordArrayList
[more]typedef std::vector< ref_ptr<PrimitiveSet> > PrimitiveSetList

Protected Fields

[more]PrimitiveSetList _primitives
[more]ref_ptr<Vec3Array> _vertexArray
[more]ref_ptr<IndexArray> _vertexIndices
[more]mutable AttributeBinding _normalBinding
[more]ref_ptr<Vec3Array> _normalArray
[more]ref_ptr<IndexArray> _normalIndices
[more]mutable AttributeBinding _colorBinding
[more]ref_ptr<Array> _colorArray
[more]ref_ptr<IndexArray> _colorIndices
[more]mutable AttributeBinding _secondaryColorBinding
[more]ref_ptr<Array> _secondaryColorArray
[more]ref_ptr<IndexArray> _secondaryColorIndices
[more]mutable AttributeBinding _fogCoordBinding
[more]ref_ptr<Array> _fogCoordArray
[more]ref_ptr<IndexArray> _fogCoordIndices
[more]TexCoordArrayList _texCoordList
[more]mutable bool _fastPathComputed
[more]mutable bool _fastPath

Protected Methods

[more]Geometry& operator = (const Geometry&)
[more]virtual ~Geometry()


Inherited from Drawable:

Public Methods

oinline const ParentList& getParents() const
oinline ParentList getParents()
oinline Node* getParent(unsigned int i)
oinline const Node* getParent(unsigned int i) const
oinline unsigned int getNumParents() const
oinline void setStateSet(StateSet* state)
oinline StateSet* getStateSet()
oinline const StateSet* getStateSet() const
oStateSet* getOrCreateStateSet()
ovoid dirtyBound()
oinline const BoundingBox& getBound() const
oinline void setShape(Shape* shape)
oinline Shape* getShape()
oinline const Shape* getShape() const
ovoid setSupportsDisplayList(bool flag)
oinline bool getSupportsDisplayList() const
ovoid setUseDisplayList(bool flag)
oinline bool getUseDisplayList() const
ovoid dirtyDisplayList()
ovirtual void compile(State& state) const
ovoid setUpdateCallback(UpdateCallback* ac)
oUpdateCallback* getUpdateCallback()
ovoid setAppCallback(AppCallback* ac)
oAppCallback* getAppCallback()
oconst AppCallback* getAppCallback() const
ovoid setCullCallback(CullCallback* cc)
oCullCallback* getCullCallback()
oconst CullCallback* getCullCallback() const
ovoid setDrawCallback(DrawCallback* dc)
oDrawCallback* getDrawCallback()
oconst DrawCallback* getDrawCallback() const
ostatic void deleteDisplayList(unsigned int contextID, GLuint globj)
ostatic void flushDeletedDisplayLists(unsigned int contextID)
oinline void draw(State& state) const

Public Members

otypedef std::vector<Node*> ParentList
ostruct UpdateCallback: public virtual osg::Referenced
ostruct AppCallback: public UpdateCallback
ostruct CullCallback: public virtual osg::Referenced
ostruct DrawCallback: public virtual osg::Referenced
oenum AttributeType
class AttributeFunctor
class ConstAttributeFunctor
class PrimitiveFunctor

Protected Fields

oParentList _parents
oref_ptr<StateSet> _stateset
omutable BoundingBox _bbox
omutable bool _bbox_computed
oref_ptr<Shape> _shape
obool _supportsDisplayList
obool _useDisplayList
omutable GLObjectList _globjList
oref_ptr<UpdateCallback> _updateCallback
oref_ptr<DrawCallback> _drawCallback
oref_ptr<CullCallback> _cullCallback

Protected Methods

ovirtual bool computeBound() const
ovoid setBound(const BoundingBox& bb) const
ovoid addParent(osg::Node* node)
ovoid removeParent(osg::Node* node)

Protected Members

otypedef osg::buffered_value<GLuint> GLObjectList


Inherited from Object:

Public Methods

oinline void setDataVariance(DataVariance dv)
oinline DataVariance getDataVariance() const
oinline void setUserData(Referenced* obj)
oinline Referenced* getUserData()
oinline const Referenced* getUserData() const

Public Members

oenum DataVariance

Protected Fields

oDataVariance _dataVariance
oref_ptr<Referenced> _userData


Inherited from Referenced:

Public Methods

ostatic void setDeleteHandler(DeleteHandler* handler)
ostatic DeleteHandler* getDeleteHandler()
oinline void ref() const
oinline void unref_nodelete() const
oinline int referenceCount() const
oinline void unref() const

Protected Fields

omutable int _refCount


Documentation

o Geometry()

o Geometry(const Geometry& geometry, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
Copy constructor using CopyOp to manage deep vs shallow copy

ovirtual Object* cloneType() const

ovirtual Object* clone(const CopyOp& copyop) const

ovirtual bool isSameKindAs(const Object* obj) const

ovirtual const char* libraryName() const

ovirtual const char* className() const

ovirtual Geometry* asGeometry()

ovirtual const Geometry* asGeometry() const

oenum AttributeBinding

o BIND_OFF

o BIND_OVERALL

o BIND_PER_PRIMITIVE_SET

o BIND_PER_PRIMITIVE

o BIND_PER_VERTEX

ovoid setVertexArray(Vec3Array* array)

oVec3Array* getVertexArray()

oconst Vec3Array* getVertexArray() const

ovoid setVertexIndices(IndexArray* array)

oIndexArray* getVertexIndices()

oconst IndexArray* getVertexIndices() const

ovoid setNormalBinding(AttributeBinding ab)

oAttributeBinding getNormalBinding() const

ovoid setNormalArray(Vec3Array* array)

oVec3Array* getNormalArray()

oconst Vec3Array* getNormalArray() const

ovoid setNormalIndices(IndexArray* array)

oIndexArray* getNormalIndices()

oconst IndexArray* getNormalIndices() const

ovoid setColorBinding(AttributeBinding ab)

oAttributeBinding getColorBinding() const

ovoid setColorArray(Array* array)

oArray* getColorArray()

oconst Array* getColorArray() const

ovoid setColorIndices(IndexArray* array)

oIndexArray* getColorIndices()

oconst IndexArray* getColorIndices() const

ovoid setSecondaryColorBinding(AttributeBinding ab)

oAttributeBinding getSecondaryColorBinding() const

ovoid setSecondaryColorArray(Array* array)

oArray* getSecondaryColorArray()

oconst Array* getSecondaryColorArray() const

ovoid setSecondaryColorIndices(IndexArray* array)

oIndexArray* getSecondaryColorIndices()

oconst IndexArray* getSecondaryColorIndices() const

ovoid setFogCoordBinding(AttributeBinding ab)

oAttributeBinding getFogCoordBinding() const

ovoid setFogCoordArray(Array* array)

oArray* getFogCoordArray()

oconst Array* getFogCoordArray() const

ovoid setFogCoordIndices(IndexArray* array)

oIndexArray* getFogCoordIndices()

oconst IndexArray* getFogCoordIndices() const

otypedef std::pair< ref_ptr<Array>, ref_ptr<IndexArray> > TexCoordArrayPair

otypedef std::vector< TexCoordArrayPair > TexCoordArrayList

ovoid setTexCoordArray(unsigned int unit, Array*)

oArray* getTexCoordArray(unsigned int unit)

oconst Array* getTexCoordArray(unsigned int unit) const

ovoid setTexCoordIndices(unsigned int unit, IndexArray*)

oIndexArray* getTexCoordIndices(unsigned int unit)

oconst IndexArray* getTexCoordIndices(unsigned int unit) const

ounsigned int getNumTexCoordArrays() const

oTexCoordArrayList& getTexCoordArrayList()

oconst TexCoordArrayList& getTexCoordArrayList() const

otypedef std::vector< ref_ptr<PrimitiveSet> > PrimitiveSetList

ovoid setPrimitiveSetList(const PrimitiveSetList& primitives)

oPrimitiveSetList& getPrimitiveSetList()

oconst PrimitiveSetList& getPrimitiveSetList() const

ounsigned int getNumPrimitiveSets() const

oPrimitiveSet* getPrimitiveSet(unsigned int pos)

oconst PrimitiveSet* getPrimitiveSet(unsigned int pos) const

obool addPrimitiveSet(PrimitiveSet* primitiveset)
Add a primitive set to the geometry

obool setPrimitiveSet(unsigned int i, PrimitiveSet* primitiveset)
Set a primitive set to the specified position in geometry's primitive set list

obool insertPrimitiveSet(unsigned int i, PrimitiveSet* primitiveset)
Insert a primitive set to the specified position in geometry's primitive set list

obool removePrimitiveSet(unsigned int i, unsigned int numElementsToRemove=1)
Remove primitive set(s) from the specified position in geometry's primitive set list

ounsigned int 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=geoemtry->getPrimitiveSetIndex(primitive))!=geometry.getNumPrimitiveSet()) as

obool areFastPathsUsed() const
return true if OpenGL fast paths will be used with drawing this Geometry. Fast paths use vertex arrays, and glDrawArrays/glDrawElements. Slow paths use glBegin()/glVertex.../glEnd(). Use of per primitive bindings or per vertex indexed arrays will drop the rendering path off the fast path.

obool verifyBindings() const

ovoid computeCorrectBindingsAndArraySizes()

ovirtual void drawImplementation(State& state) const
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.

ovirtual bool supports(AttributeFunctor&) const
return true, osg::Geometry does support accept(AttributeFunctor&)

ovirtual void accept(AttributeFunctor& af)
accept an AttributeFunctor and call its methods to tell it about the interal attributes that this Drawable has

ovirtual bool supports(ConstAttributeFunctor&) const
return true, osg::Geometry does support accept(ConstAttributeFunctor&)

ovirtual void accept(ConstAttributeFunctor& af) const
accept an ConstAttributeFunctor and call its methods to tell it about the interal attributes that this Drawable has

ovirtual bool supports(PrimitiveFunctor&) const
return true, osg::Geometry does support accept(PrimitiveFunctor&)

ovirtual void accept(PrimitiveFunctor& pf) const
accept a PrimitiveFunctor and call its methods to tell it about the interal primitives that this Drawable has

oGeometry& operator = (const Geometry&)

ovirtual ~Geometry()

oPrimitiveSetList _primitives

oref_ptr<Vec3Array> _vertexArray

oref_ptr<IndexArray> _vertexIndices

omutable AttributeBinding _normalBinding

oref_ptr<Vec3Array> _normalArray

oref_ptr<IndexArray> _normalIndices

omutable AttributeBinding _colorBinding

oref_ptr<Array> _colorArray

oref_ptr<IndexArray> _colorIndices

omutable AttributeBinding _secondaryColorBinding

oref_ptr<Array> _secondaryColorArray

oref_ptr<IndexArray> _secondaryColorIndices

omutable AttributeBinding _fogCoordBinding

oref_ptr<Array> _fogCoordArray

oref_ptr<IndexArray> _fogCoordIndices

oTexCoordArrayList _texCoordList

omutable bool _fastPathComputed

omutable bool _fastPath


This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.