Public Types | |
typedef base::reflist< Vertex > | VertexList |
typedef base::reflist< Edge > | EdgeList |
typedef base::reflist< Polygon > | PolygonList |
typedef Int | Attributes |
typedef Int | VisualType |
enum | AttributeFlags { ShowAxes = 1, ShowBounds = 2, ShowCollisions = 4, ShowCollisionModel = 8, ShowCollisionDetection = 16, ShowEdges = 32, ShowNormals = 64, VerticesOnly = 128 } |
enum | ExternalizationType { Input = 1, Output = 2, IO = 3 } |
Public Member Functions | |
Polyhedron () | |
Polyhedron (ref< base::VFile > file) throw (std::invalid_argument, base::io_error) | |
Polyhedron (const Polyhedron &p) | |
Polyhedron (const gfx::TriangleContainer &tris) | |
Polyhedron (osg::Node &n) | |
Polyhedron (const Shape &s) | |
virtual | ~Polyhedron () |
virtual String | className () const |
virtual Object & | clone () const |
VertexList::const_iterator_const | vertices_begin () const |
VertexList::const_iterator_const | vertices_end () const |
EdgeList::const_iterator_const | edges_begin () const |
EdgeList::const_iterator_const | edges_end () const |
PolygonList::const_iterator_const | polygon_begin () const |
PolygonList::const_iterator_const | polygon_end () const |
virtual BoundingBox | getBoundingBox () const |
virtual BoundingSphere | getBoundingSphere () const |
virtual const MassProperties & | getMassProperties (ref< const Material > material) const |
virtual gfx::Segment3 | shortestSegmentBetween (const base::Transform &t, const Point3 &p) const |
return the shortest segment between this shape (in configuration t) and the point p (the returned segment will always end with p) | |
virtual gfx::Segment3 | shortestSegmentBetween (const base::Transform &t, const gfx::Segment3 &s) const |
return the shortest segment between this shape (in configuration t) and the segment s | |
virtual gfx::Segment3 | shortestSegmentBetween (const base::Transform &t, const gfx::Triangle3 &tri) const |
return the shortest segment between this shape (in configuration t) and the triangle t | |
virtual gfx::Segment3 | shortestSegmentBetween (const base::Transform &t, const gfx::Quad3 &q) const |
return the shortest segment between this shape (in configuration t) and the quad q | |
virtual gfx::Segment3 | shortestSegmentBetween (const base::Transform &t1, ref< const Shape > s, const base::Transform &t2) const |
return the shortest segment between this shape (in configuration t1) and the shape s (in configuration t2) | |
virtual ref< CollisionModel > | getCollisionModel (CollisionModel::CollisionModelType modelType) const |
deprecated. | |
virtual bool | visualTypeSupported (VisualType type) const |
virtual osg::Node * | createOSGVisual (Attributes visualAttributes=0) const |
virtual void | serialize (base::Serializer &s) |
read or write object state to Serializer | |
virtual bool | formatSupported (String format, Real version=1.0, ExternalizationType type=IO) const |
query if specific format is supported (for input, output or both) | |
virtual void | externalize (base::Externalizer &e, String format="", Real version=1.0) |
read or write object state to Externalizer | |
virtual void | externalize (base::Externalizer &e, String format="", Real version=1.0) const |
write object state to Externalizer (throws if e is in Input) | |
virtual bool | isConvex () const |
virtual bool | includesAppearance () const |
virtual void | setIncludesAppearance (bool appearanceIncluded) |
ref< Shape > | createShapeFromInput (base::Externalizer &e, String format="", Real version=1.0) |
create a new concrete Shape (subclass) based on the next element that appears in the Input Externalizer stream | |
void | reference () const |
bool | unreference () const |
const int | referenceCount () const |
void | enableOnUnreferenceCall (bool enabled) |
virtual void | onUnreference () const |
virtual osg::Node * | createOSGVisual (Visual::Attributes visualAttributes=0) const |
virtual bool | isSameKindAs (const Object &) const |
virtual bool | isSameKindAs (const ReferencedObject &) const |
void | load (ref< VFile > archive, const String &format="", Real version=1.0) |
void | save (ref< VFile > archive, const String &format="", Real version=1.0) |
Static Public Member Functions | |
template<class BaseClass, class DerivedClass> void | registerSerializableInstantiator (const SerializableInstantiator &instantiator) |
void | registerSerializableInstantiator (const String &baseClassTypeName, const String &derivedClassTypeName, const SerializableInstantiator &instantiator) |
template<class BaseClass> const SerializableInstantiator & | getSerializableInstantiator (const String &derivedClassTypeName) |
const SerializableInstantiator & | getSerializableInstantiator (const String &baseClassTypeName, const String &derivedClassTypeName) |
Static Public Attributes | |
const Int | OSGVisual = 1 |
Protected Member Functions | |
ref< Vertex > | vertex (const Point3 &p) |
return Vertex with coord p (create if necessary) | |
ref< Edge > | edge (ref< Vertex > v1, ref< Vertex > v2) |
return Edge with vertices v1 & v2 - any order (create if necessary) | |
void | buildGeometry (const gfx::TriangleContainer &tris) |
void | getAdjacentVertices (const Point3 &v, array< Point3 > &adjacent) const |
void | computeBounds () const |
ref< CollisionModel > | getCollisionModelFromVisual (CollisionModel::CollisionModelType modelType) const |
Static Protected Member Functions | |
osg::Node * | createOSGAxes (const base::Dimension3 &dim) |
Protected Attributes | |
bool | boundsCached |
BoundingBox | boundingBox |
BoundingSphere | boundingSphere |
bool | massPropertiesCached |
Real | density |
MassProperties | massProperties |
VertexList | verts |
EdgeList | edges |
PolygonList | polys |
Visual::Attributes | attributes |
ref_ptr< osg::Node > | model |
ref_ptr< osg::Node > | node |
ref< CollisionModel > | collisionModel |
CollisionModel::CollisionModelType | modelType |
bool | shapeHasAppearance |
int | _refCount |
bool | onUnreferenceEnabled |
|
Definition at line 39 of file Visual. Referenced by gfx::Visual::createOSGVisual(). |
|
Definition at line 65 of file Polyhedron. |
|
Definition at line 66 of file Polyhedron. |
|
Definition at line 64 of file Polyhedron. |
|
Definition at line 44 of file Visual. Referenced by gfx::Visual::visualTypeSupported(). |
|
|
|
Definition at line 40 of file Externalizable. |
|
Referenced by clone(). |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return the name of the object's class type. Must be defined by derived classes. Implements base::Object. Definition at line 57 of file Polyhedron. Referenced by clone(). |
|
Definition at line 58 of file Polyhedron. References className(), NewNamedObj, and Polyhedron(). |
|
|
|
|
|
Reimplemented in physics::GJKCollisionDetector, physics::OBBCollisionModel, physics::ODECollisionModel, physics::ODESolidSystem, physics::Solid, physics::SOLIDCollisionModel, and robot::sim::SimulatedBasicEnvironment. Definition at line 49 of file Visual. References gfx::Visual::Attributes, Logln, and NewObj. |
|
|
|
create a new concrete Shape (subclass) based on the next element that appears in the Input Externalizer stream
|
|
return Edge with vertices v1 & v2 - any order (create if necessary)
|
|
Definition at line 192 of file Polyhedron. References base::reflist< _Tp, _Alloc >::const_begin(). |
|
Definition at line 193 of file Polyhedron. References base::reflist< _Tp, _Alloc >::const_end(). |
|
If enabled, each call to unreference() will also call virtual method onUnreference() Definition at line 115 of file Referenced. References base::Referenced::onUnreferenceEnabled. |
|
write object state to Externalizer (throws if e is in Input)
Reimplemented from base::Externalizable. Definition at line 225 of file Polyhedron. |
|
read or write object state to Externalizer
Implements base::Externalizable. |
|
query if specific format is supported (for input, output or both)
Implements base::Externalizable. |
|
|
|
Implements physics::Shape. |
|
Implements physics::Shape. |
|
deprecated.
Reimplemented from physics::Shape. |
|
|
|
Implements physics::Shape. |
|
|
|
Definition at line 71 of file Serializable. References base::String. |
|
Definition at line 60 of file Shape. References physics::Shape::shapeHasAppearance. |
|
Implements physics::Shape. Definition at line 40 of file ComplexShape. |
|
Definition at line 52 of file ReferencedObject. |
|
|
|
|
|
Called by unreference() if enabled via enableOnUnreferenceCall(true). Typically overridden in subclasses that wish to know about unreference() calls - for example to handle manually breaking cyclic references Reimplemented in robot::control::ControllableAdaptor::AdaptorControlInterface, and robot::control::ControllableAdaptor. Definition at line 121 of file Referenced. Referenced by base::Referenced::unreference(). |
|
Definition at line 195 of file Polyhedron. References base::reflist< _Tp, _Alloc >::const_begin(). |
|
Definition at line 196 of file Polyhedron. References base::reflist< _Tp, _Alloc >::const_end(). |
|
Increment the reference count by one, indicating that this object has another pointer which is referencing it. Definition at line 65 of file Referenced. References base::Referenced::_refCount. |
|
Return the number pointers currently referencing this object. Definition at line 112 of file Referenced. References base::Referenced::_refCount. Referenced by robot::control::ControllableAdaptor::AdaptorControlInterface::onUnreference(). |
|
|
|
Definition at line 62 of file Serializable. |
|
|
|
read or write object state to Serializer
Implements base::Serializable. |
|
Definition at line 61 of file Shape. References physics::Shape::shapeHasAppearance. |
|
return the shortest segment between this shape (in configuration t1) and the shape s (in configuration t2)
Implements physics::Shape. |
|
return the shortest segment between this shape (in configuration t) and the quad q
Implements physics::Shape. |
|
return the shortest segment between this shape (in configuration t) and the triangle t
Implements physics::Shape. |
|
return the shortest segment between this shape (in configuration t) and the segment s
Implements physics::Shape. |
|
return the shortest segment between this shape (in configuration t) and the point p (the returned segment will always end with p)
Implements physics::Shape. |
|
Decrement the reference count by one, indicating that a pointer to this object is referencing it. If the refence count goes to zero, it is assumed that this object is nolonger referenced and is automatically deleted. Definition at line 81 of file Referenced. References base::Referenced::_refCount, Exception, base::Referenced::onUnreference(), and base::Referenced::onUnreferenceEnabled. |
|
return Vertex with coord p (create if necessary)
|
|
Definition at line 189 of file Polyhedron. References base::reflist< _Tp, _Alloc >::const_begin(). |
|
Definition at line 190 of file Polyhedron. References base::reflist< _Tp, _Alloc >::const_end(). |
|
Reimplemented from gfx::Visual. Definition at line 217 of file Polyhedron. |
|
Definition at line 136 of file Referenced. Referenced by base::Referenced::reference(), base::Referenced::referenceCount(), base::Referenced::Referenced(), base::Referenced::unreference(), and base::Referenced::~Referenced(). |
|
Definition at line 251 of file Polyhedron. |
|
Definition at line 230 of file Polyhedron. |
|
Definition at line 231 of file Polyhedron. |
|
Definition at line 229 of file Polyhedron. |
|
Definition at line 255 of file Polyhedron. |
|
Definition at line 234 of file Polyhedron. |
|
Definition at line 239 of file Polyhedron. |
|
Definition at line 235 of file Polyhedron. |
|
Definition at line 233 of file Polyhedron. |
|
Definition at line 252 of file Polyhedron. |
|
Definition at line 256 of file Polyhedron. |
|
Definition at line 253 of file Polyhedron. |
|
Definition at line 137 of file Referenced. Referenced by base::Referenced::enableOnUnreferenceCall(), base::Referenced::Referenced(), and base::Referenced::unreference(). |
|
|
|
Definition at line 240 of file Polyhedron. |
|
Definition at line 97 of file Shape. Referenced by physics::Shape::includesAppearance(), physics::Shape::setIncludesAppearance(), and physics::Shape::Shape(). |
|
Definition at line 238 of file Polyhedron. |