OSG  3.4.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Namespaces | Macros | Typedefs
Shape.h File Reference
#include <osg/Object>
#include <osg/Vec3>
#include <osg/Quat>
#include <osg/Plane>
#include <osg/Array>
Include dependency graph for Shape.h:

Go to the source code of this file.

Classes

class  osg::Shape
 
class  osg::ShapeVisitor
 
class  osg::ConstShapeVisitor
 
class  osg::Sphere
 
class  osg::Box
 
class  osg::Cone
 
class  osg::Cylinder
 
class  osg::Capsule
 
class  osg::InfinitePlane
 
class  osg::TriangleMesh
 
class  osg::ConvexHull
 
class  osg::HeightField
 
class  osg::CompositeShape
 

Namespaces

 osg
 

Macros

#define META_Shape(library, name)
 

Typedefs

typedef HeightField osg::Grid
 

Macro Definition Documentation

#define META_Shape (   library,
  name 
)
Value:
virtual osg::Object* cloneType() const { return new name(); } \
virtual osg::Object* clone(const osg::CopyOp& copyop) const { return new name (*this,copyop); } \
virtual bool isSameKindAs(const osg::Object* obj) const { return dynamic_cast<const name *>(obj)!=NULL; } \
virtual const char* libraryName() const { return #library; } \
virtual const char* className() const { return #name; } \
virtual void accept(osg::ShapeVisitor& sv) { sv.apply(*this); } \
virtual void accept(osg::ConstShapeVisitor& csv) const { csv.apply(*this); }
#define NULL
Definition: Export.h:59
T * clone(const T *t, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
Definition: Object.h:242
T * cloneType(const T *t)
Definition: Object.h:284
virtual void apply(Shape &)
Definition: Shape.h:109
virtual void apply(const Shape &)
Definition: Shape.h:131

META_StateAttribute macro define the standard clone, isSameKindAs, className and getType methods. Use when subclassing from Object to make it more convenient to define the standard pure virtual methods which are required for all Object subclasses.

Definition at line 35 of file Shape.h.