## class SG_EXPORT osg::ShapeDrawable

## Inheritance:

### Public Methods

ShapeDrawable()
ShapeDrawable(Shape* shape, TessellationHints* hints=0)
ShapeDrawable(const ShapeDrawable& pg, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
  Copy constructor using CopyOp to manage deep vs shallow copy
virtual Object* cloneType() const
virtual Object* clone(const CopyOp& copyop) const
virtual bool isSameKindAs(const Object* obj) const
virtual const char* libraryName() const
virtual const char* className() const
void setColor(const Vec4& color)
  set the color of the shape
const Vec4& getColor() const
  get the color of the shape
void setTessellationHints(TessellationHints* hints)
TessellationHints* getTessellationHints()
const TessellationHints* getTessellationHints() const
virtual void drawImplementation(State& state) const
  draw ShapeDrawable directly ignoring an OpenGL display list which could be attached.
virtual bool supports(AttributeFunctor&) const
  return false, osg::ShapeDrawable does not support accept(AttributeFunctor&)
virtual bool supports(ConstAttributeFunctor&) const
  return true, osg::ShapeDrawable does support accept(ConstAttributeFunctor&)
virtual void accept(ConstAttributeFunctor& af) const
  accept an ConstAttributeFunctor and call its methods to tell it about the interal attributes that this Drawable has
virtual bool supports(PrimitiveFunctor&) const
  return true, osg::ShapeDrawable does support accept(PrimitiveFunctor&)
virtual void accept(PrimitiveFunctor& pf) const
  accept a PrimtiveFunctor and call its methods to tell it about the interal primtives that this Drawable has

### Protected Fields

Vec4 _color
ref_ptr<TessellationHints> _tessellationHints

### Protected Methods

ShapeDrawable& operator = (const ShapeDrawable&)
virtual ~ShapeDrawable()
virtual bool computeBound() const

### Inherited from Drawable:

### Public Methods

virtual Geometry* asGeometry()
virtual const Geometry* asGeometry() const
inline const ParentList& getParents() const
inline ParentList getParents()
inline Node* getParent(unsigned int i)
inline const Node* getParent(unsigned int i) const
inline unsigned int getNumParents() const
inline void setStateSet(StateSet* state)
inline StateSet* getStateSet()
inline const StateSet* getStateSet() const
StateSet* getOrCreateStateSet()
void dirtyBound()
inline const BoundingBox& getBound() const
inline void setShape(Shape* shape)
inline Shape* getShape()
inline const Shape* getShape() const
void setSupportsDisplayList(bool flag)
inline bool getSupportsDisplayList() const
void setUseDisplayList(bool flag)
inline bool getUseDisplayList() const
void setUseVertexBufferObjects(bool flag)
inline bool getUseVertexBufferObjects() const
void dirtyDisplayList()
virtual void compile(State& state) const
void setUpdateCallback(UpdateCallback* ac)
UpdateCallback* getUpdateCallback()
void setCullCallback(CullCallback* cc)
CullCallback* getCullCallback()
const CullCallback* getCullCallback() const
void setDrawCallback(DrawCallback* dc)
DrawCallback* getDrawCallback()
const DrawCallback* getDrawCallback() const
static void deleteDisplayList(unsigned int contextID, GLuint globj)
static void flushDeletedDisplayLists(unsigned int contextID, double currentTime, double& availableTime)
static void deleteVertexBufferObject(unsigned int contextID, GLuint globj)
static void flushDeletedVertexBufferObjects(unsigned int contextID, double currentTime, double& availableTime)
static Extensions* getExtensions(unsigned int contextID, bool createIfNotInitalized)
static void setExtensions(unsigned int contextID, Extensions* extensions)
inline void draw(State& state) const

### Public Members

typedef std::vector<Node*> ParentList
struct UpdateCallback: public virtual osg::Referenced
struct CullCallback: public virtual osg::Referenced
struct DrawCallback: public virtual osg::Referenced
typedef unsigned int AttributeType
enum AttributeTypes
class AttributeFunctor
class ConstAttributeFunctor
class PrimitiveFunctor
class SG_EXPORT Extensions: public osg::Referenced
  Extensions class which encapsulates the querring of extensions and associated function pointers, and provide convinience wrappers to check for the extensions or use the associated functions

### Protected Fields

ParentList _parents
ref_ptr<StateSet> _stateset
mutable BoundingBox _bbox
mutable bool _bbox_computed
ref_ptr<Shape> _shape
bool _supportsDisplayList
bool _useDisplayList
bool _supportsVertexBufferObjects
bool _useVertexBufferObjects
mutable GLObjectList _globjList
mutable GLObjectList _vboList
ref_ptr<UpdateCallback> _updateCallback
ref_ptr<DrawCallback> _drawCallback
ref_ptr<CullCallback> _cullCallback

### Protected Methods

void setBound(const BoundingBox& bb) const
void addParent(osg::Node* node)
void removeParent(osg::Node* node)

### Protected Members

typedef osg::buffered_value<GLuint> GLObjectList

### Inherited from Object:

### Public Methods

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

### Public Members

enum DataVariance

### Protected Fields

DataVariance _dataVariance
ref_ptr<Referenced> _userData

### Inherited from Referenced:

### Public Methods

static void setDeleteHandler(DeleteHandler* handler)
static DeleteHandler* getDeleteHandler()
inline void ref() const
inline void unref_nodelete() const
inline int referenceCount() const
inline void unref() const

### Protected Fields

mutable int _refCount

## Documentation

`ShapeDrawable()`

`ShapeDrawable(Shape* shape, TessellationHints* hints=0)`

`ShapeDrawable(const ShapeDrawable& pg, const CopyOp& copyop=CopyOp::SHALLOW_COPY)`
  Copy constructor using CopyOp to manage deep vs shallow copy

`virtual Object* cloneType() const`

`virtual Object* clone(const CopyOp& copyop) const`

`virtual bool isSameKindAs(const Object* obj) const`

`virtual const char* libraryName() const`

`virtual const char* className() const`

`void setColor(const Vec4& color)`
  set the color of the shape

`const Vec4& getColor() const`
  get the color of the shape

`void setTessellationHints(TessellationHints* hints)`

`TessellationHints* getTessellationHints()`

`const TessellationHints* getTessellationHints() const`

`virtual void drawImplementation(State& state) const`
  draw ShapeDrawable 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 ShapeDrawable for user-drawn objects.

`virtual bool supports(AttributeFunctor&) const`
  return false, osg::ShapeDrawable does not support accept(AttributeFunctor&)

`virtual bool supports(ConstAttributeFunctor&) const`
  return true, osg::ShapeDrawable does support accept(ConstAttributeFunctor&)

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

`virtual bool supports(PrimitiveFunctor&) const`
  return true, osg::ShapeDrawable does support accept(PrimitiveFunctor&)

`virtual void accept(PrimitiveFunctor& pf) const`
  accept a PrimtiveFunctor and call its methods to tell it about the interal primtives that this Drawable has

`ShapeDrawable& operator = (const ShapeDrawable&)`

`virtual ~ShapeDrawable()`

`virtual bool computeBound() const`

`Vec4 _color`

`ref_ptr<TessellationHints> _tessellationHints`

This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java

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