Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Attributes | List of all members
tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper Class Reference

This is a Tesseract link collision object wrapper which add items specific to tesseract. It is a wrapper around a tesseract link which may contain several collision objects. More...

#include <fcl_utils.h>

Public Types

using ConstPtr = std::shared_ptr< const CollisionObjectWrapper >
 
using Ptr = std::shared_ptr< CollisionObjectWrapper >
 

Public Member Functions

std::shared_ptr< CollisionObjectWrapperclone () const
 
 CollisionObjectWrapper ()=default
 
 CollisionObjectWrapper (std::string name, const int &type_id, CollisionShapesConst shapes, tesseract_common::VectorIsometry3d shape_poses)
 
const CollisionShapesConstgetCollisionGeometries () const
 
const tesseract_common::VectorIsometry3dgetCollisionGeometriesTransforms () const
 
std::vector< CollisionObjectPtr > & getCollisionObjects ()
 
const std::vector< CollisionObjectPtr > & getCollisionObjects () const
 
std::vector< CollisionObjectRawPtr > & getCollisionObjectsRaw ()
 
const std::vector< CollisionObjectRawPtr > & getCollisionObjectsRaw () const
 
const Eigen::Isometry3d & getCollisionObjectsTransform () const
 
double getContactDistanceThreshold () const
 
const std::string & getName () const
 
const int & getTypeID () const
 
bool sameObject (const CollisionObjectWrapper &other) const
 Check if two objects point to the same source object. More...
 
void setCollisionObjectsTransform (const Eigen::Isometry3d &pose)
 
void setContactDistanceThreshold (double contact_distance)
 

Static Public Member Functions

static int getShapeIndex (const fcl::CollisionObjectd *co)
 Given fcl collision shape get the index to the links collision shape. More...
 

Public Attributes

short int m_collisionFilterGroup { CollisionFilterGroups::KinematicFilter }
 
short int m_collisionFilterMask { CollisionFilterGroups::StaticFilter | CollisionFilterGroups::KinematicFilter }
 
bool m_enabled { true }
 

Protected Attributes

std::vector< CollisionGeometryPtrcollision_geometries_
 
std::vector< CollisionObjectPtrcollision_objects_
 
std::vector< CollisionObjectRawPtrcollision_objects_raw_
 The raw pointer is also stored because FCL accepts vectors for batch process. Note: They are updating the API to Shared Pointers but the broadphase has not been updated yet. More...
 
double contact_distance_ { 0 }
 The contact distance threshold. More...
 
std::string name_
 
tesseract_common::VectorIsometry3d shape_poses_
 
CollisionShapesConst shapes_
 
int type_id_ { -1 }
 
Eigen::Isometry3d world_pose_ { Eigen::Isometry3d::Identity() }
 Collision Object World Transformation. More...
 

Detailed Description

This is a Tesseract link collision object wrapper which add items specific to tesseract. It is a wrapper around a tesseract link which may contain several collision objects.

Definition at line 77 of file fcl_utils.h.

Member Typedef Documentation

◆ ConstPtr

Definition at line 83 of file fcl_utils.h.

◆ Ptr

Definition at line 82 of file fcl_utils.h.

Constructor & Destructor Documentation

◆ CollisionObjectWrapper() [1/2]

tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::CollisionObjectWrapper ( )
default

◆ CollisionObjectWrapper() [2/2]

tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::CollisionObjectWrapper ( std::string  name,
const int &  type_id,
CollisionShapesConst  shapes,
tesseract_common::VectorIsometry3d  shape_poses 
)

Definition at line 350 of file fcl_utils.cpp.

Member Function Documentation

◆ clone()

std::shared_ptr<CollisionObjectWrapper> tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::clone ( ) const
inline

Definition at line 136 of file fcl_utils.h.

◆ getCollisionGeometries()

const CollisionShapesConst& tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::getCollisionGeometries ( ) const
inline

Definition at line 109 of file fcl_utils.h.

◆ getCollisionGeometriesTransforms()

const tesseract_common::VectorIsometry3d& tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::getCollisionGeometriesTransforms ( ) const
inline

Definition at line 111 of file fcl_utils.h.

◆ getCollisionObjects() [1/2]

std::vector<CollisionObjectPtr>& tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::getCollisionObjects ( )
inline

Definition at line 133 of file fcl_utils.h.

◆ getCollisionObjects() [2/2]

const std::vector<CollisionObjectPtr>& tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::getCollisionObjects ( ) const
inline

Definition at line 132 of file fcl_utils.h.

◆ getCollisionObjectsRaw() [1/2]

std::vector<CollisionObjectRawPtr>& tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::getCollisionObjectsRaw ( )
inline

Definition at line 135 of file fcl_utils.h.

◆ getCollisionObjectsRaw() [2/2]

const std::vector<CollisionObjectRawPtr>& tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::getCollisionObjectsRaw ( ) const
inline

Definition at line 134 of file fcl_utils.h.

◆ getCollisionObjectsTransform()

const Eigen::Isometry3d& tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::getCollisionObjectsTransform ( ) const
inline

Definition at line 131 of file fcl_utils.h.

◆ getContactDistanceThreshold()

double tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::getContactDistanceThreshold ( ) const
inline

Definition at line 130 of file fcl_utils.h.

◆ getName()

const std::string& tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::getName ( ) const
inline

Definition at line 95 of file fcl_utils.h.

◆ getShapeIndex()

int tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::getShapeIndex ( const fcl::CollisionObjectd co)
static

Given fcl collision shape get the index to the links collision shape.

Parameters
cofcl collision shape
Returns
links collision shape index

Definition at line 406 of file fcl_utils.cpp.

◆ getTypeID()

const int& tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::getTypeID ( ) const
inline

Definition at line 96 of file fcl_utils.h.

◆ sameObject()

bool tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::sameObject ( const CollisionObjectWrapper other) const
inline

Check if two objects point to the same source object.

Definition at line 98 of file fcl_utils.h.

◆ setCollisionObjectsTransform()

void tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::setCollisionObjectsTransform ( const Eigen::Isometry3d &  pose)
inline

Definition at line 113 of file fcl_utils.h.

◆ setContactDistanceThreshold()

void tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::setContactDistanceThreshold ( double  contact_distance)
inline

Definition at line 123 of file fcl_utils.h.

Member Data Documentation

◆ collision_geometries_

std::vector<CollisionGeometryPtr> tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::collision_geometries_
protected

Definition at line 178 of file fcl_utils.h.

◆ collision_objects_

std::vector<CollisionObjectPtr> tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::collision_objects_
protected

Definition at line 179 of file fcl_utils.h.

◆ collision_objects_raw_

std::vector<CollisionObjectRawPtr> tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::collision_objects_raw_
protected

The raw pointer is also stored because FCL accepts vectors for batch process. Note: They are updating the API to Shared Pointers but the broadphase has not been updated yet.

Definition at line 184 of file fcl_utils.h.

◆ contact_distance_

double tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::contact_distance_ { 0 }
protected

The contact distance threshold.

Definition at line 186 of file fcl_utils.h.

◆ m_collisionFilterGroup

short int tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::m_collisionFilterGroup { CollisionFilterGroups::KinematicFilter }

Definition at line 91 of file fcl_utils.h.

◆ m_collisionFilterMask

short int tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::m_collisionFilterMask { CollisionFilterGroups::StaticFilter | CollisionFilterGroups::KinematicFilter }

Definition at line 92 of file fcl_utils.h.

◆ m_enabled

bool tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::m_enabled { true }

Definition at line 93 of file fcl_utils.h.

◆ name_

std::string tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::name_
protected

Definition at line 173 of file fcl_utils.h.

◆ shape_poses_

tesseract_common::VectorIsometry3d tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::shape_poses_
protected

Definition at line 177 of file fcl_utils.h.

◆ shapes_

CollisionShapesConst tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::shapes_
protected

Definition at line 176 of file fcl_utils.h.

◆ type_id_

int tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::type_id_ { -1 }
protected

Definition at line 174 of file fcl_utils.h.

◆ world_pose_

Eigen::Isometry3d tesseract_collision::tesseract_collision_fcl::CollisionObjectWrapper::world_pose_ { Eigen::Isometry3d::Identity() }
protected

Collision Object World Transformation.

Definition at line 175 of file fcl_utils.h.


The documentation for this class was generated from the following files:


tesseract_collision
Author(s): Levi Armstrong
autogenerated on Sun May 18 2025 03:01:53