Go to the documentation of this file.
26 #ifndef TESSERACT_COLLISION_COMMON_H
27 #define TESSERACT_COLLISION_COMMON_H
32 #include <Eigen/Geometry>
50 std::vector<ObjectPairKey>
52 const std::vector<std::string>& static_links,
53 const std::shared_ptr<const tesseract_common::ContactAllowedValidator>& validator =
nullptr);
60 bool isLinkActive(
const std::vector<std::string>& active,
const std::string& name);
71 const std::string& name2,
72 const std::shared_ptr<const tesseract_common::ContactAllowedValidator>& validator,
73 bool verbose =
false);
85 const std::pair<std::string, std::string>& key,
96 const Eigen::Vector3d& center,
97 const Eigen::Vector3d& scale);
118 const std::vector<Eigen::Vector3i>& vectices_color,
119 const Eigen::VectorXi& faces,
132 const Eigen::VectorXi& faces,
145 Eigen::VectorXi& faces,
146 bool triangles_only =
false);
150 #endif // TESSERACT_COLLISION_COMMON_H
bool isContactAllowed(const std::string &name1, const std::string &name2, const std::shared_ptr< const tesseract_common::ContactAllowedValidator > &validator, bool verbose=false)
Determine if contact is allowed between two objects.
Tesseracts Collision Forward Declarations.
bool isLinkActive(const std::vector< std::string > &active, const std::string &name)
This will check if a link is active provided a list. If the list is empty the link is considered acti...
#define TESSERACT_COMMON_IGNORE_WARNINGS_PUSH
int loadSimplePlyFile(const std::string &path, tesseract_common::VectorVector3d &vertices, Eigen::VectorXi &faces, bool triangles_only=false)
Loads a simple ply file given a path.
void scaleVertices(tesseract_common::VectorVector3d &vertices, const Eigen::Vector3d ¢er, const Eigen::Vector3d &scale)
Apply scaling to the geometry coordinates.
std::vector< ObjectPairKey > getCollisionObjectPairs(const std::vector< std::string > &active_links, const std::vector< std::string > &static_links, const std::shared_ptr< const tesseract_common::ContactAllowedValidator > &validator=nullptr)
Get a vector of possible collision object pairs.
std::pair< std::string, std::string > ObjectPairKey
std::vector< Eigen::Vector3d > VectorVector3d
ContactResult * processResult(ContactTestData &cdata, ContactResult &contact, const std::pair< std::string, std::string > &key, bool found)
processResult Processes the ContactResult based on the information in the ContactTestData
bool writeSimplePlyFile(const std::string &path, const tesseract_common::VectorVector3d &vertices, const std::vector< Eigen::Vector3i > &vectices_color, const Eigen::VectorXi &faces, int num_faces)
Write a simple ply file given vertices and faces.