openscenegraph
|
Public Member Functions | |
ShapeDrawable () | |
ShapeDrawable (Shape *shape, TessellationHints *hints=0) | |
ShapeDrawable (const ShapeDrawable &pg, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
virtual Object * | cloneType () const |
virtual Object * | clone (const CopyOp ©op) const |
virtual bool | isSameKindAs (const Object *obj) const |
virtual const char * | libraryName () const |
virtual const char * | className () const |
void | setColor (const Vec4 &color) |
const Vec4 & | getColor () const |
void | setTessellationHints (TessellationHints *hints) |
TessellationHints * | getTessellationHints () |
const TessellationHints * | getTessellationHints () const |
virtual void | drawImplementation (RenderInfo &renderInfo) const |
virtual bool | supports (const AttributeFunctor &) const |
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 BoundingBox | computeBound () const |
![]() | |
Drawable () | |
Drawable (const Drawable &drawable, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
virtual Geometry * | asGeometry () |
virtual const Geometry * | asGeometry () const |
virtual void | computeDataVariance () |
const ParentList & | getParents () const |
ParentList | getParents () |
Node * | getParent (unsigned int i) |
const Node * | getParent (unsigned int i) const |
unsigned int | getNumParents () const |
MatrixList | getWorldMatrices (const osg::Node *haltTraversalAtNode=0) const |
void | setStateSet (StateSet *stateset) |
StateSet * | getStateSet () |
const StateSet * | getStateSet () const |
StateSet * | getOrCreateStateSet () |
void | setInitialBound (const osg::BoundingBox &bbox) |
const BoundingBox & | getInitialBound () const |
void | dirtyBound () |
const BoundingBox & | getBound () const |
void | setComputeBoundingBoxCallback (ComputeBoundingBoxCallback *callback) |
ComputeBoundingBoxCallback * | getComputeBoundingBoxCallback () |
const ComputeBoundingBoxCallback * | getComputeBoundingBoxCallback () const |
void | setShape (Shape *shape) |
Shape * | getShape () |
const Shape * | getShape () const |
void | setSupportsDisplayList (bool flag) |
bool | getSupportsDisplayList () const |
void | setUseDisplayList (bool flag) |
bool | getUseDisplayList () const |
GLuint & | getDisplayList (unsigned int contextID) const |
virtual void | setUseVertexBufferObjects (bool flag) |
bool | getUseVertexBufferObjects () const |
virtual void | dirtyDisplayList () |
virtual unsigned int | getGLObjectSizeHint () const |
void | draw (RenderInfo &renderInfo) const |
virtual void | compileGLObjects (RenderInfo &renderInfo) const |
virtual void | setThreadSafeRefUnref (bool threadSafe) |
virtual void | resizeGLObjectBuffers (unsigned int maxSize) |
virtual void | releaseGLObjects (State *state=0) const |
virtual void | setUpdateCallback (UpdateCallback *ac) |
UpdateCallback * | getUpdateCallback () |
const UpdateCallback * | getUpdateCallback () const |
bool | requiresUpdateTraversal () const |
virtual void | setEventCallback (EventCallback *ac) |
EventCallback * | getEventCallback () |
const EventCallback * | getEventCallback () const |
bool | requiresEventTraversal () const |
virtual void | setCullCallback (CullCallback *cc) |
CullCallback * | getCullCallback () |
const CullCallback * | getCullCallback () const |
virtual void | setDrawCallback (DrawCallback *dc) |
DrawCallback * | getDrawCallback () |
const DrawCallback * | getDrawCallback () const |
virtual void | accept (AttributeFunctor &) |
virtual bool | supports (const PrimitiveIndexFunctor &) const |
virtual void | accept (PrimitiveIndexFunctor &) const |
![]() | |
Object () | |
Object (bool threadSafeRefUnref) | |
Object (const Object &, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
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) |
osg::UserDataContainer * | getUserDataContainer () |
const osg::UserDataContainer * | getUserDataContainer () const |
osg::UserDataContainer * | getOrCreateUserDataContainer () |
virtual void | setUserData (Referenced *obj) |
virtual Referenced * | getUserData () |
virtual const Referenced * | getUserData () 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 bool | getUserValue (const std::string &name, T &value) const |
![]() | |
Referenced () | |
Referenced (bool threadSafeRefUnref) | |
Referenced (const Referenced &) | |
Referenced & | operator= (const Referenced &) |
bool | getThreadSafeRefUnref () const |
OpenThreads::Mutex * | getRefMutex () const |
int | ref () const |
int | unref () const |
int | unref_nodelete () const |
int | referenceCount () const |
ObserverSet * | getObserverSet () const |
ObserverSet * | getOrCreateObserverSet () const |
void | addObserver (Observer *observer) const |
void | removeObserver (Observer *observer) const |
Protected Member Functions | |
ShapeDrawable & | operator= (const ShapeDrawable &) |
virtual | ~ShapeDrawable () |
![]() | |
Drawable & | operator= (const Drawable &) |
virtual | ~Drawable () |
void | setBound (const BoundingBox &bb) const |
void | addParent (osg::Node *node) |
void | removeParent (osg::Node *node) |
void | setNumChildrenRequiringUpdateTraversal (unsigned int num) |
unsigned int | getNumChildrenRequiringUpdateTraversal () const |
void | setNumChildrenRequiringEventTraversal (unsigned int num) |
unsigned int | getNumChildrenRequiringEventTraversal () const |
![]() | |
virtual | ~Object () |
![]() | |
virtual | ~Referenced () |
void | signalObserversAndDelete (bool signalDelete, bool doDelete) const |
void | deleteUsingDeleteHandler () const |
Protected Attributes | |
Vec4 | _color |
ref_ptr< TessellationHints > | _tessellationHints |
![]() | |
ParentList | _parents |
ref_ptr< StateSet > | _stateset |
BoundingBox | _initialBound |
ref_ptr< ComputeBoundingBoxCallback > | _computeBoundCallback |
BoundingBox | _boundingBox |
bool | _boundingBoxComputed |
ref_ptr< Shape > | _shape |
bool | _supportsDisplayList |
bool | _useDisplayList |
bool | _supportsVertexBufferObjects |
bool | _useVertexBufferObjects |
GLObjectList | _globjList |
ref_ptr< UpdateCallback > | _updateCallback |
unsigned int | _numChildrenRequiringUpdateTraversal |
ref_ptr< EventCallback > | _eventCallback |
unsigned int | _numChildrenRequiringEventTraversal |
ref_ptr< CullCallback > | _cullCallback |
ref_ptr< DrawCallback > | _drawCallback |
![]() | |
std::string | _name |
DataVariance | _dataVariance |
osg::UserDataContainer * | _userDataContainer |
![]() | |
OpenThreads::AtomicPtr | _observerSet |
OpenThreads::Atomic | _refCount |
Additional Inherited Members | |
![]() | |
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 std::vector< Node * > | ParentList |
typedef unsigned int | AttributeType |
![]() | |
enum | DataVariance { DYNAMIC, STATIC, UNSPECIFIED } |
![]() | |
static GLuint | generateDisplayList (unsigned int contextID, unsigned int sizeHint=0) |
static void | setMinimumNumberOfDisplayListsToRetainInCache (unsigned int minimum) |
static unsigned int | getMinimumNumberOfDisplayListsToRetainInCache () |
static void | deleteDisplayList (unsigned int contextID, GLuint globj, unsigned int sizeHint=0) |
static void | flushAllDeletedDisplayLists (unsigned int contextID) |
static void | discardAllDeletedDisplayLists (unsigned int contextID) |
static void | flushDeletedDisplayLists (unsigned int contextID, double &availableTime) |
static Extensions * | getExtensions (unsigned int contextID, bool createIfNotInitalized) |
static void | setExtensions (unsigned int contextID, Extensions *extensions) |
![]() | |
static OpenThreads::Mutex * | getGlobalReferencedMutex () |
static void | setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting) |
static bool | getThreadSafeReferenceCounting () |
static void | setDeleteHandler (DeleteHandler *handler) |
static DeleteHandler * | getDeleteHandler () |
![]() | |
static unsigned int | s_numberDrawablesReusedLastInLastFrame |
static unsigned int | s_numberNewDrawablesInLastFrame |
static unsigned int | s_numberDeletedDrawablesInLastFrame |
![]() | |
typedef osg::buffered_value< GLuint > | GLObjectList |
Allow the use of Shape
s as Drawable
s, so that they can be rendered with reduced effort. The implementation of ShapeDrawable
is not geared to efficiency; it's better to think of it as a convenience to render Shape
s easily (perhaps for test or debugging purposes) than as the right way to render basic shapes in some efficiency-critical section of code.
osg::ShapeDrawable::ShapeDrawable | ( | ) |
osg::ShapeDrawable::ShapeDrawable | ( | Shape * | shape, |
TessellationHints * | hints = 0 |
||
) |
osg::ShapeDrawable::ShapeDrawable | ( | const ShapeDrawable & | pg, |
const CopyOp & | copyop = CopyOp::SHALLOW_COPY |
||
) |
Copy constructor using CopyOp to manage deep vs shallow copy.
|
protectedvirtual |
|
virtual |
Accept a Drawable::ConstAttributeFunctor and call its methods to tell it about the internal attributes that this Drawable has.
Reimplemented from osg::Drawable.
|
virtual |
Accept a PrimitiveFunctor and call its methods to tell it about the internal primitives that this Drawable has.
Reimplemented from osg::Drawable.
|
inlinevirtual |
return the name of the object's class type. Must be defined by derived classes.
Reimplemented from osg::Drawable.
Clone an object, with Object* return type. Must be defined by derived classes.
Implements osg::Object.
|
inlinevirtual |
Clone the type of an object, with Object* return type. Must be defined by derived classes.
Implements osg::Object.
|
virtual |
Compute the bounding box around Drawables's geometry.
Reimplemented from osg::Drawable.
|
virtual |
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.
Implements osg::Drawable.
|
inline |
Get the color of the shape.
|
inline |
|
inline |
|
inlinevirtual |
Reimplemented from osg::Drawable.
|
inlinevirtual |
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.
|
inlineprotected |
void osg::ShapeDrawable::setColor | ( | const Vec4 & | color | ) |
Set the color of the shape.
void osg::ShapeDrawable::setTessellationHints | ( | TessellationHints * | hints | ) |
|
inlinevirtual |
Return false, osg::ShapeDrawable does not support accept(AttributeFunctor&).
Reimplemented from osg::Drawable.
|
inlinevirtual |
Return true, osg::ShapeDrawable does support accept(Drawable::ConstAttributeFunctor&).
Reimplemented from osg::Drawable.
|
inlinevirtual |
Return true, osg::ShapeDrawable does support accept(PrimitiveFunctor&) .
Reimplemented from osg::Drawable.
|
protected |
|
protected |