NTRT Simulator
v1.1
|
#include <tgSphereInfo.h>
Public Member Functions | |
tgSphereInfo (const tgSphere::Config &config) | |
tgSphereInfo (const tgSphere::Config &config, tgTags tags) | |
tgSphereInfo (const tgSphere::Config &config, const tgNode &node) | |
tgSphereInfo (const tgSphere::Config &config, tgTags tags, const tgNode &node) | |
virtual | ~tgSphereInfo () |
tgRigidInfo * | createRigidInfo (const tgNode &node) |
virtual void | initRigidBody (tgWorld &world) |
tgModel * | createModel (tgWorld &world) |
const tgSphere::Config & | getConfig () const |
const btVector3 & | getNode () const |
virtual btCollisionShape * | getCollisionShape (tgWorld &world) const |
virtual btTransform | getTransform () const |
virtual double | getMass () const |
virtual btVector3 | getCenterOfMass () const |
virtual btVector3 | getConnectionPoint (const btVector3 &referencePoint, const btVector3 &destinationPoint) const |
virtual btVector3 | getConnectionPoint (const btVector3 &referencePoint, const btVector3 &destinationPoint, const double rotation) const |
virtual tgCompoundRigidInfo * | getCompound () |
virtual const tgCompoundRigidInfo * | getCompound () const |
virtual std::set< tgRigidInfo * > | getLeafRigids () |
virtual bool | containsNode (const btVector3 &nodeVector) const |
virtual std::set< btVector3 > | getContainedNodes () const |
virtual tgRigidInfo * | createRigidInfo (const tgPair &pair) |
virtual tgRigidInfo * | createRigidInfo (const tgNode &node, const tgTagSearch &tagSearch) |
virtual tgRigidInfo * | createRigidInfo (const tgPair &pair, const tgTagSearch &tagSearch) |
virtual std::vector < tgRigidInfo * > | createRigidInfos (const tgNodes &nodes, const tgTagSearch &tagSearch) |
virtual std::vector < tgRigidInfo * > | createRigidInfos (const tgPairs &pairs, const tgTagSearch &tagSearch) |
void | setCollisionShape (btCollisionShape *p_btCollisionShape) |
virtual tgRigidInfo * | getRigidInfoGroup () |
virtual const tgRigidInfo * | getRigidInfoGroup () const |
virtual void | setRigidInfoGroup (tgRigidInfo *rigidInfoGroup) |
virtual btRigidBody * | getRigidBody () |
virtual const btRigidBody * | getRigidBody () const |
virtual void | setRigidBody (btRigidBody *rigidBody) |
virtual btCollisionObject * | getCollisionObject () |
virtual const btCollisionObject * | getCollisionObject () const |
virtual void | setCollisionObject (btCollisionObject *collisionObject) |
bool | isCompound () const |
virtual bool | sharesNodesWith (const tgRigidInfo &other) const |
void | addTags (const std::string &space_separated_tags) |
void | addTags (const tgTags &tags) |
bool | hasTag (const std::string tag) const |
bool | hasAllTags (std::string tags) |
bool | hasAnyTags (const std::string tags) |
bool | hasNoTags () |
tgTags & | getTags () |
const tgTags & | getTags () const |
void | setTags (tgTags tags) |
std::string | getTagStr (std::string delim=" ") const |
Protected Attributes | |
btCollisionShape * | m_collisionShape |
tgRigidInfo * | m_rigidInfoGroup |
btCollisionObject * | m_collisionObject |
Implementation of a cylinder shape as defined by a 'from' point and a 'to' point. It also has radius and density.
Definition at line 48 of file tgSphereInfo.h.
tgSphereInfo::tgSphereInfo | ( | const tgSphere::Config & | config | ) |
Construct a tgSphereInfo with just a config. The node must be filled in later, or factory methods can be used to create instances with nodes.
Definition at line 44 of file tgSphereInfo.cpp.
tgSphereInfo::tgSphereInfo | ( | const tgSphere::Config & | config, |
tgTags | tags | ||
) |
Construct a tgSphereInfo with just a config and tags. The node must be filled in later, or factory methods can be used to create instances with nodes.
Definition at line 50 of file tgSphereInfo.cpp.
tgSphereInfo::tgSphereInfo | ( | const tgSphere::Config & | config, |
const tgNode & | node | ||
) |
Construct a tgSphereInfo from its center point, radius and density.
[in] | the | center point |
[in] | config | contains the radius and density |
Definition at line 56 of file tgSphereInfo.cpp.
tgSphereInfo::tgSphereInfo | ( | const tgSphere::Config & | config, |
tgTags | tags, | ||
const tgNode & | node | ||
) |
Construct a tgSphereInfo from its center point, radius and density.
[in] | the | center point |
[in] | config | contains the radius and density |
Definition at line 62 of file tgSphereInfo.cpp.
|
inlinevirtual |
World will destroy the rigid body
Definition at line 84 of file tgSphereInfo.h.
|
inlinevirtual |
Is the given vector either of the endpoints?
true | if nodeVector is either endpoint |
false | if nodeVector is neither endpoint |
Implements tgRigidInfo.
Definition at line 197 of file tgSphereInfo.h.
|
virtual |
Create a tgRigidInfo* from a tgPair
Reimplemented from tgRigidInfo.
Definition at line 68 of file tgSphereInfo.cpp.
|
inlinevirtual |
Return the sphere's center of mass. The center of mass is a point halfway between the endpoints.
Implements tgRigidInfo.
Definition at line 139 of file tgSphereInfo.h.
|
inlinevirtualinherited |
Return a pointer to the collisionObject without upcasting
Reimplemented in tgCompoundRigidInfo.
Definition at line 190 of file tgRigidInfo.h.
|
inlinevirtualinherited |
Return a pointer to the collisionObject without upcasting
Reimplemented in tgCompoundRigidInfo.
Definition at line 199 of file tgRigidInfo.h.
|
virtual |
Return a pointer to the corresponding btCollisionShape, lazily creating it if it does not exist.
Implements tgRigidInfo.
Definition at line 100 of file tgSphereInfo.cpp.
|
inlinevirtual |
Since a sphere is not a compound shape, there is no compound shape object to return.
NULL |
Implements tgRigidInfo.
Definition at line 175 of file tgSphereInfo.h.
|
inlinevirtual |
Since a sphere is not a compound shape, there is no compound shape object to return.
NULL |
Implements tgRigidInfo.
Definition at line 182 of file tgSphereInfo.h.
|
inline |
Return a const reference to the container of the radius and density.
Definition at line 105 of file tgSphereInfo.h.
|
virtual |
Return the surface point closest to the reference point in the direction of the destination point.
[in] | referencePoint | a btVector |
[in] | destinationPoint | a btVector |
Implements tgRigidInfo.
Definition at line 125 of file tgSphereInfo.cpp.
|
virtual |
Return the surface point closest to the reference point in the direction of the destination point.
[in] | referencePoint | a btVector |
[in] | destinationPoint | a btVector |
Reimplemented from tgRigidInfo.
Definition at line 132 of file tgSphereInfo.cpp.
|
virtual |
Return a set contiaining the center point twice
Implements tgRigidInfo.
Definition at line 170 of file tgSphereInfo.cpp.
|
virtual |
Return a set containing only a pointer to this sphere.
a | set containing only a pointer to this sphere |
Implements tgRigidInfo.
Definition at line 163 of file tgSphereInfo.cpp.
|
virtual |
Return the sphere's mass. The mass is the volume times the density.
Implements tgRigidInfo.
Definition at line 116 of file tgSphereInfo.cpp.
|
inline |
Return a const reference to the center. Basically just casting to btVector3
Definition at line 111 of file tgSphereInfo.h.
|
virtualinherited |
Return a pointer to the corresponding btRigidBody.
Reimplemented in tgCompoundRigidInfo.
Definition at line 124 of file tgRigidInfo.cpp.
|
virtualinherited |
Return a const pointer to the corresponding btRigidBody.
Reimplemented in tgCompoundRigidInfo.
Definition at line 130 of file tgRigidInfo.cpp.
|
inlinevirtualinherited |
Get the tgRigidInfo that represents the compound rigid that this rigid belongs to. If it doesn't share nodes with any other rigids (determined during auto-compounding), it will point to itself.
Definition at line 149 of file tgRigidInfo.h.
|
inlinevirtual |
Return a btTransform that maps the from endpoint to the to endpoint
Implements tgRigidInfo.
Definition at line 123 of file tgSphereInfo.h.
|
virtual |
Call tgRigidInfo init rigid, then apply config to the rigid body.
Reimplemented from tgRigidInfo.
Definition at line 73 of file tgSphereInfo.cpp.
|
inlineinherited |
Is this tgRigidInfo a compound?
true | if this tgRigidInfo is a compound |
false | if this tgRigidInfo is not a compound |
Definition at line 273 of file tgRigidInfo.h.
|
inlinevirtualinherited |
Set the collision object to a new collision object
Reimplemented in tgCompoundRigidInfo.
Definition at line 208 of file tgRigidInfo.h.
|
inlineinherited |
Set the corresponding btCollisionShape.
[in,out] | a | pointer to a btCollisionShape |
Definition at line 137 of file tgRigidInfo.h.
|
virtualinherited |
Set the corresponding btRigidBody.
[in,out] | a | pointer to a btRigidBody |
Reimplemented in tgCompoundRigidInfo.
Definition at line 135 of file tgRigidInfo.cpp.
|
inlinevirtualinherited |
Set the tgRigidInfo that represents the compound rigid that this may belong to. This will be set during auto-compounding.
Definition at line 163 of file tgRigidInfo.h.
|
virtualinherited |
Does this rigid have any nodes in common with the given tgRigidInfo object?
in] | other a reference to a tgRigidInfo object |
true | if any node in this sphere is also in other |
false | if no node in this sphere is also in other |
Reimplemented in tgCompoundRigidInfo.
Definition at line 141 of file tgRigidInfo.cpp.
|
mutableprotectedinherited |
A pointer to the corresponding btCollisionObject. Typically a btRigidBody, but can also be a btGhostObject
Definition at line 347 of file tgRigidInfo.h.
|
mutableprotectedinherited |
A pointer to the corresponding btCollisionShape.
Definition at line 332 of file tgRigidInfo.h.
|
mutableprotectedinherited |
A pointer to a group of rigids to which this rigid belongs. This is set during the rigid grouping step by a StructureInfo. If this is not set, getRigidGroup() will return a pointer to this (effectively, "I'm in my own group")
Definition at line 341 of file tgRigidInfo.h.