Simox
2.3.74.0
|
Public Member Functions | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW | CollisionModel (const VisualizationNodePtr &visu, const std::string &name="", CollisionCheckerPtr colChecker=CollisionCheckerPtr(), int id=666, float margin=0.0f) |
CollisionModel (const TriMeshModelPtr &mesh) | |
CollisionModel (const TriMeshModel &mesh) | |
virtual | ~CollisionModel () |
std::string | getName () |
BoundingBox | getBoundingBox (bool global=true) |
BoundingBox | getLocalBoundingBox () |
BoundingBox | getGlobalBoundingBox () |
Eigen::Matrix4f | getGlobalPose () const |
virtual void | setGlobalPose (const Eigen::Matrix4f &pose) |
Eigen::Vector3f | transformToGlobal (const Eigen::Vector3f &p) const |
Eigen::Vector3f | transformFromGlobal (const Eigen::Vector3f &p) const |
CollisionCheckerPtr | getCollisionChecker () |
const std::shared_ptr< CollisionModelPQP > & | getCollisionModelImplementation () |
CollisionModelPtr | clone (CollisionCheckerPtr colChecker=CollisionCheckerPtr(), float scaling=1.0f, bool deepVisuCopy=true) |
void | setVisualization (const VisualizationNodePtr visu) |
int | getId () |
void | setUpdateVisualization (bool enable) |
bool | getUpdateVisualizationStatus () |
VisualizationNodePtr | getVisualization () |
VisualizationNodePtr | getModelDataVisualization () |
template<class T > | |
std::shared_ptr< T > | getVisualization () |
virtual int | getNumFaces () |
get number of faces (i.e. triangles) of this object More... | |
virtual void | print () |
std::vector< Eigen::Vector3f > | getModelVeticesGlobal () |
TriMeshModelPtr | getTriMeshModel () |
std::string | toXML (const std::string &basePath, int tabs) |
std::string | toXML (const std::string &basePath, const std::string &filename, int tabs) |
virtual bool | saveModel (const std::string &modelPath, const std::string &filename) |
virtual void | scale (Eigen::Vector3f &scaleFactor) |
float | getMargin () const |
void | inflateModel (float margin) |
in/deflates the model. If value is <0 the model is deflated. More... | |
Static Public Member Functions | |
static CollisionModelPtr | CreateUnitedCollisionModel (const std::vector< CollisionModelPtr > &colModels) |
Protected Member Functions | |
CollisionModel (const VisualizationNodePtr &visu, const std::string &name, CollisionCheckerPtr colChecker, int id, InternalCollisionModelPtr collisionModel) | |
void | destroyData () |
delete all data More... | |
Protected Attributes | |
VisualizationNodePtr | visualization |
VisualizationNodePtr | origVisualization |
VisualizationNodePtr | modelVisualization |
bool | updateVisualization |
TriMeshModelPtr | model |
float | margin |
BoundingBox | bbox |
std::string | name |
the name More... | |
int | id |
CollisionCheckerPtr | colChecker |
Eigen::Matrix4f | globalPose |
std::shared_ptr< CollisionModelPQP > | collisionModelImplementation |
An abstract representation of an object that can be used for collision queries.
VirtualRobot::CollisionModel::CollisionModel | ( | const VisualizationNodePtr & | visu, |
const std::string & | name = "" , |
||
CollisionCheckerPtr | colChecker = CollisionCheckerPtr() , |
||
int | id = 666 , |
||
float | margin = 0.0f |
||
) |
Standard Constructor If collision checks should be done in parallel, different CollisionCheckers can be specified.
visu | A visualization that is used for creating an internal triangle based representation of the object. |
name | The name of this object. |
colChecker | If not specified, the global singleton instance is used. Only useful, when parallel collision checks should be performed. |
id | A user id. |
VirtualRobot::CollisionModel::CollisionModel | ( | const TriMeshModelPtr & | mesh | ) |
VirtualRobot::CollisionModel::CollisionModel | ( | const TriMeshModel & | mesh | ) |
|
virtual |
Standard Destructor
|
protected |
VirtualRobot::CollisionModelPtr VirtualRobot::CollisionModel::clone | ( | CollisionCheckerPtr | colChecker = CollisionCheckerPtr() , |
float | scaling = 1.0f , |
||
bool | deepVisuCopy = true |
||
) |
|
static |
Create a united collision model. All triangle data is copied to one model which usually improves the collision detection performance.
|
protected |
delete all data
BoundingBox VirtualRobot::CollisionModel::getBoundingBox | ( | bool | global = true | ) |
Return bounding box of this object.
global | If set, the boundignBox is transformed to globalCoordinate system. Otherwise the local BBox is returned. |
|
inline |
|
inline |
|
inline |
|
inline |
The global pose defines the position of the joint in the world. This value is used for visualization.
int VirtualRobot::CollisionModel::getId | ( | ) |
|
inlinebound |
float VirtualRobot::CollisionModel::getMargin | ( | ) | const |
VirtualRobot::VisualizationNodePtr VirtualRobot::CollisionModel::getModelDataVisualization | ( | ) |
std::vector< Eigen::Vector3f > VirtualRobot::CollisionModel::getModelVeticesGlobal | ( | ) |
Return a vector with all vertices of this object at the current global pose.
std::string VirtualRobot::CollisionModel::getName | ( | ) |
Returns name of this model.
|
virtual |
get number of faces (i.e. triangles) of this object
|
inline |
bool VirtualRobot::CollisionModel::getUpdateVisualizationStatus | ( | ) |
VisualizationNodePtr VirtualRobot::CollisionModel::getVisualization | ( | ) |
|
inline |
void VirtualRobot::CollisionModel::inflateModel | ( | float | margin | ) |
in/deflates the model. If value is <0 the model is deflated.
margin | Each vertex of the model is moved about this margin along its normal. |
|
virtual |
Print information about this model.
|
virtual |
Saves model file to model path.
modelPath | The directory. |
filename | The new filename without path. |
|
virtual |
|
virtual |
void VirtualRobot::CollisionModel::setUpdateVisualization | ( | bool | enable | ) |
Enables/Disables the visualization updates of the collision model. This just handles the visualization, the collision data is not affected.
void VirtualRobot::CollisionModel::setVisualization | ( | const VisualizationNodePtr | visu | ) |
std::string VirtualRobot::CollisionModel::toXML | ( | const std::string & | basePath, |
int | tabs | ||
) |
std::string VirtualRobot::CollisionModel::toXML | ( | const std::string & | basePath, |
const std::string & | filename, | ||
int | tabs | ||
) |
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
the name
|
protected |
|
protected |
|
protected |