33#ifndef DART_COLLISION_DETAIL_COLLISIONGROUP_HPP_
34#define DART_COLLISION_DETAIL_COLLISIONGROUP_HPP_
45template <
typename... Others>
55template <
typename... Others>
57 const std::vector<const dynamics::ShapeFrame*>& shapeFrames,
58 const Others*... others)
66template <
typename... Others>
72 if (otherGroup &&
this != otherGroup)
82template <
typename... Others>
88 auto collisionShapeNodes
91 for (
auto& shapeNode : collisionShapeNodes)
98template <
typename... Others>
105 for (
auto i = 0u; i < numBodyNodes; ++i)
112template <
typename... Others>
122template <
typename... Others>
124 const std::vector<const dynamics::ShapeFrame*>& shapeFrames,
125 const Others*... others)
133template <
typename... Others>
141 if (
this == otherGroup)
155template <
typename... Others>
161 auto collisionShapeNodes
164 for (
auto& shapeNode : collisionShapeNodes)
171template <
typename... Others>
178 for (
auto i = 0u; i < numBodyNodes; ++i)
Definition CollisionGroup.hpp:49
std::vector< std::pair< const dynamics::ShapeFrame *, CollisionObjectPtr > > mShapeFrameMap
ShapeFrames and CollisionOjbects added to this CollisionGroup.
Definition CollisionGroup.hpp:254
void addShapeFramesOf()
Do nothing.
Definition CollisionGroup.cpp:89
void removeShapeFrames(const std::vector< const dynamics::ShapeFrame * > &shapeFrames)
Remove ShapeFrames from this CollisionGroup.
Definition CollisionGroup.cpp:115
void addShapeFrames(const std::vector< const dynamics::ShapeFrame * > &shapeFrames)
Add ShapeFrames to this CollisionGroup.
Definition CollisionGroup.cpp:81
void removeAllShapeFrames()
Remove all the ShapeFrames in this CollisionGroup.
Definition CollisionGroup.cpp:129
void addShapeFrame(const dynamics::ShapeFrame *shapeFrame)
Add a ShapeFrame to this CollisionGroup.
Definition CollisionGroup.cpp:65
void removeShapeFrame(const dynamics::ShapeFrame *shapeFrame)
Remove a ShapeFrame from this CollisionGroup.
Definition CollisionGroup.cpp:95
void removeShapeFramesOf()
Do nothing.
Definition CollisionGroup.cpp:123
void addShapeFramesOf(const dynamics::MetaSkeleton *skeleton, const Others *... others)
Add ShapeFrames of MetaSkeleton, and also add another ShapeFrames of other various objects.
Definition CollisionGroup.hpp:99
BodyNode class represents a single node of the skeleton.
Definition BodyNode.hpp:78
const std::vector< ShapeNode * > getShapeNodesWith()
Return the list of ShapeNodes containing given Aspect.
Definition BodyNode.hpp:217
Definition ShapeFrame.hpp:119
Definition ShapeFrame.hpp:164
Definition BulletCollisionDetector.cpp:63