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(FloatArray* array)
[more]FloatArray* getFogCoordArray()
[more]const FloatArray* 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]void addPrimitiveSet(PrimitiveSet* primitive)
[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 PrimtiveFunctor and call its methods to tell it about the interal primtives 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<FloatArray> _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()
ovoid compile(State& state)
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(uint contextID, uint globj)
ostatic void flushDeletedDisplayLists(uint contextID)
oinline void draw(State& state)

Public Members

otypedef std::vector<Node*> ParentList
ostruct AppCallback: public osg::Referenced
ostruct CullCallback: public osg::Referenced
ostruct DrawCallback: public 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<AppCallback> _appCallback
oref_ptr<DrawCallback> _drawCallback
oref_ptr<CullCallback> _cullCallback
ostatic DeletedDisplayListCache s_deletedDisplayListCache

Protected Methods

ovirtual bool computeBound() const
ovoid addParent(osg::Node* node)
ovoid removeParent(osg::Node* node)

Protected Members

otypedef std::vector<uint> GLObjectList
otypedef std::map<uint,std::set<uint> > DeletedDisplayListCache


Inherited from Object:

Public Methods

oinline void setDataVariance(const DataVariance dv)
oinline const 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

oinline void ref() const
oinline void unref() const
oinline void unref_nodelete() const
oinline int referenceCount() const
oinline static int createdCount()
oinline static int deletedCount()

Protected Fields

omutable int _refCount
ostatic int _createdCount
ostatic int _deletedCount


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(FloatArray* array)

oFloatArray* getFogCoordArray()

oconst FloatArray* 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

ovoid addPrimitiveSet(PrimitiveSet* primitive)

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 primtive 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 PrimtiveFunctor and call its methods to tell it about the interal primtives 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<FloatArray> _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++.