![]() |
Tesseract 0.28.4
|
This is a collection of common methods. More...
#include <tesseract/common/macros.h>#include <cassert>#include <console_bridge/console.h>#include <tesseract/common/utils.h>#include <tesseract/common/types.h>#include <tesseract/collision/common.h>#include <tesseract/collision/contact_result_validator.h>Functions | |
| std::vector< tesseract::common::LinkIdPair > | tesseract::collision::getCollisionObjectPairs (const std::vector< tesseract::common::LinkId > &active_links, const std::vector< tesseract::common::LinkId > &static_links, const std::shared_ptr< const tesseract::common::ContactAllowedValidator > &validator=nullptr) |
| Get a vector of possible collision object pairs. | |
| bool | tesseract::collision::isLinkActive (const std::unordered_set< tesseract::common::LinkId > &active, const tesseract::common::LinkId &id) |
| This will check if a link is active provided a set. If the set is empty the link is considered active. | |
| bool | tesseract::collision::isContactAllowed (const tesseract::common::LinkIdPair &pair, const std::shared_ptr< const tesseract::common::ContactAllowedValidator > &validator, bool verbose=false) |
| Determine if contact is allowed between two objects. | |
| bool | tesseract::collision::isContactAllowed (const tesseract::common::LinkId &id1, const tesseract::common::LinkId &id2, const std::shared_ptr< const tesseract::common::ContactAllowedValidator > &validator, bool verbose=false) |
| Determine if contact is allowed between two objects (two-id overload; resolves the pair only when a validator decision requires it, and logs in caller argument order). | |
| ContactResult * | tesseract::collision::processResult (ContactTestData &cdata, ContactResult &contact, const tesseract::common::LinkIdPair &key, double margin, bool found) |
| processResult Processes the ContactResult based on the information in the ContactTestData | |
| void | tesseract::collision::scaleVertices (tesseract::common::VectorVector3d &vertices, const Eigen::Vector3d ¢er, const Eigen::Vector3d &scale) |
| Apply scaling to the geometry coordinates. | |
| void | tesseract::collision::scaleVertices (tesseract::common::VectorVector3d &vertices, const Eigen::Vector3d &scale) |
| Apply scaling to the geometry coordinates. | |
This is a collection of common methods.
| std::vector< tesseract::common::LinkIdPair > tesseract::collision::getCollisionObjectPairs | ( | const std::vector< tesseract::common::LinkId > & | active_links, |
| const std::vector< tesseract::common::LinkId > & | static_links, | ||
| const std::shared_ptr< const tesseract::common::ContactAllowedValidator > & | validator = nullptr |
||
| ) |
Get a vector of possible collision object pairs.
| active_links | The active link names |
| static_links | The static link names |
| validator | The is contact allowed validator |
| bool tesseract::collision::isLinkActive | ( | const std::unordered_set< tesseract::common::LinkId > & | active, |
| const tesseract::common::LinkId & | id | ||
| ) |
This will check if a link is active provided a set. If the set is empty the link is considered active.
| active | Set of active LinkIds |
| id | The LinkId to check if it is active. |
| bool tesseract::collision::isContactAllowed | ( | const tesseract::common::LinkIdPair & | pair, |
| const std::shared_ptr< const tesseract::common::ContactAllowedValidator > & | validator, | ||
| bool | verbose = false |
||
| ) |
Determine if contact is allowed between two objects.
| pair | The LinkId pair |
| validator | The contact allowed validator |
| verbose | If true print debug information |
| bool tesseract::collision::isContactAllowed | ( | const tesseract::common::LinkId & | id1, |
| const tesseract::common::LinkId & | id2, | ||
| const std::shared_ptr< const tesseract::common::ContactAllowedValidator > & | validator, | ||
| bool | verbose = false |
||
| ) |
Determine if contact is allowed between two objects (two-id overload; resolves the pair only when a validator decision requires it, and logs in caller argument order).
| id1 | The id of the first object |
| id2 | The id of the second object |
| validator | The contact allowed validator |
| verbose | If true print debug information |
| ContactResult * tesseract::collision::processResult | ( | ContactTestData & | cdata, |
| ContactResult & | contact, | ||
| const tesseract::common::LinkIdPair & | key, | ||
| double | margin, | ||
| bool | found | ||
| ) |
processResult Processes the ContactResult based on the information in the ContactTestData
| cdata | Information used to process the results |
| contact | Contacts from the collision checkers that will be processed |
| key | Link pair used as a key to look up pair specific settings |
| margin | The collision margin already resolved for key |
| found | Specifies whether or not a collision has already been found |
| void tesseract::collision::scaleVertices | ( | tesseract::common::VectorVector3d & | vertices, |
| const Eigen::Vector3d & | center, | ||
| const Eigen::Vector3d & | scale | ||
| ) |
Apply scaling to the geometry coordinates.
Given a scaling factor s, and center c, a given vertice v is transformed according to s (v - c) + c.
| vertices | The vertices to scale |
| center | The point at which to scale the data about |
| scale | The scale factor to apply to the vertices. |
| void tesseract::collision::scaleVertices | ( | tesseract::common::VectorVector3d & | vertices, |
| const Eigen::Vector3d & | scale | ||
| ) |
Apply scaling to the geometry coordinates.
Given a scaling factor s, and center c, a given vertice v is transformed according to s (v - c) + c.
| vertices | The vertices to scale |
| scale | The scale factor to apply to the vertices. |