hpp-rbprm  4.10.1
Implementation of RB-PRM planner using hpp.
hpp::rbprm::projection Namespace Reference

Classes

struct  ProjectionReport
 

Functions

ProjectionReport HPP_RBPRM_DLLAPI projectToRootPosition (hpp::rbprm::RbPrmFullBodyPtr_t fullBody, const fcl::Vec3f &target, const hpp::rbprm::State &currentState)
 
ProjectionReport HPP_RBPRM_DLLAPI projectToComPosition (hpp::rbprm::RbPrmFullBodyPtr_t fullBody, const fcl::Vec3f &target, const hpp::rbprm::State &currentState)
 
ProjectionReport HPP_RBPRM_DLLAPI projectToColFreeComPosition (hpp::rbprm::RbPrmFullBodyPtr_t fullBody, const fcl::Vec3f &target, const hpp::rbprm::State &currentState)
 
ProjectionReport HPP_RBPRM_DLLAPI projectToRootConfiguration (hpp::rbprm::RbPrmFullBodyPtr_t fullBody, const pinocchio::ConfigurationIn_t conf, const hpp::rbprm::State &currentState, const Vector3 offset=Vector3::Zero())
 
ProjectionReport HPP_RBPRM_DLLAPI setCollisionFree (hpp::rbprm::RbPrmFullBodyPtr_t fullBody, const core::CollisionValidationPtr_t &validation, const std::string &limb, const hpp::rbprm::State &currentState)
 
ProjectionReport HPP_RBPRM_DLLAPI projectStateToObstacle (const hpp::rbprm::RbPrmFullBodyPtr_t &body, const std::string &limbId, const hpp::rbprm::RbPrmLimbPtr_t &limb, const hpp::rbprm::State &current, const fcl::Vec3f &normal, const fcl::Vec3f &position, bool lockOtherJoints=false, const fcl::Matrix3f &rotation=fcl::Matrix3f::Zero())
 
ProjectionReport HPP_RBPRM_DLLAPI projectStateToObstacle (const hpp::rbprm::RbPrmFullBodyPtr_t &body, const std::string &limbId, const hpp::rbprm::RbPrmLimbPtr_t &limb, const hpp::rbprm::State &current, const fcl::Vec3f &normal, const fcl::Vec3f &position, core::CollisionValidationPtr_t validation, bool lockOtherJoints=false, const fcl::Matrix3f &rotation=fcl::Matrix3f::Zero())
 
ProjectionReport HPP_RBPRM_DLLAPI projectSampleToObstacle (const hpp::rbprm::RbPrmFullBodyPtr_t &body, const std::string &limbId, const hpp::rbprm::RbPrmLimbPtr_t &limb, const sampling::OctreeReport &report, core::CollisionValidationPtr_t validation, pinocchio::ConfigurationOut_t configuration, const hpp::rbprm::State &current)
 
ProjectionReport HPP_RBPRM_DLLAPI projectEffector (core::ConfigProjectorPtr_t proj, const hpp::rbprm::RbPrmFullBodyPtr_t &body, const std::string &limbId, const hpp::rbprm::RbPrmLimbPtr_t &limb, core::CollisionValidationPtr_t validation, pinocchio::ConfigurationOut_t configuration, const fcl::Matrix3f &rotationTarget, std::vector< bool > rotationFilter, const fcl::Vec3f &positionTarget, const fcl::Vec3f &normal, const hpp::rbprm::State &current)
 
fcl::Transform3f HPP_RBPRM_DLLAPI computeProjectionMatrix (const hpp::rbprm::RbPrmFullBodyPtr_t &body, const hpp::rbprm::RbPrmLimbPtr_t &limb, const pinocchio::ConfigurationIn_t configuration, const fcl::Vec3f &normal, const fcl::Vec3f &position, const fcl::Matrix3f &rotation=fcl::Matrix3f::Zero())
 

Function Documentation

◆ computeProjectionMatrix()

fcl::Transform3f HPP_RBPRM_DLLAPI hpp::rbprm::projection::computeProjectionMatrix ( const hpp::rbprm::RbPrmFullBodyPtr_t body,
const hpp::rbprm::RbPrmLimbPtr_t limb,
const pinocchio::ConfigurationIn_t  configuration,
const fcl::Vec3f &  normal,
const fcl::Vec3f &  position,
const fcl::Matrix3f &  rotation = fcl::Matrix3f::Zero() 
)

◆ projectEffector()

ProjectionReport HPP_RBPRM_DLLAPI hpp::rbprm::projection::projectEffector ( core::ConfigProjectorPtr_t  proj,
const hpp::rbprm::RbPrmFullBodyPtr_t body,
const std::string &  limbId,
const hpp::rbprm::RbPrmLimbPtr_t limb,
core::CollisionValidationPtr_t  validation,
pinocchio::ConfigurationOut_t  configuration,
const fcl::Matrix3f &  rotationTarget,
std::vector< bool >  rotationFilter,
const fcl::Vec3f &  positionTarget,
const fcl::Vec3f &  normal,
const hpp::rbprm::State current 
)

◆ projectSampleToObstacle()

ProjectionReport HPP_RBPRM_DLLAPI hpp::rbprm::projection::projectSampleToObstacle ( const hpp::rbprm::RbPrmFullBodyPtr_t body,
const std::string &  limbId,
const hpp::rbprm::RbPrmLimbPtr_t limb,
const sampling::OctreeReport report,
core::CollisionValidationPtr_t  validation,
pinocchio::ConfigurationOut_t  configuration,
const hpp::rbprm::State current 
)

◆ projectStateToObstacle() [1/2]

ProjectionReport HPP_RBPRM_DLLAPI hpp::rbprm::projection::projectStateToObstacle ( const hpp::rbprm::RbPrmFullBodyPtr_t body,
const std::string &  limbId,
const hpp::rbprm::RbPrmLimbPtr_t limb,
const hpp::rbprm::State current,
const fcl::Vec3f &  normal,
const fcl::Vec3f &  position,
bool  lockOtherJoints = false,
const fcl::Matrix3f &  rotation = fcl::Matrix3f::Zero() 
)

◆ projectStateToObstacle() [2/2]

ProjectionReport HPP_RBPRM_DLLAPI hpp::rbprm::projection::projectStateToObstacle ( const hpp::rbprm::RbPrmFullBodyPtr_t body,
const std::string &  limbId,
const hpp::rbprm::RbPrmLimbPtr_t limb,
const hpp::rbprm::State current,
const fcl::Vec3f &  normal,
const fcl::Vec3f &  position,
core::CollisionValidationPtr_t  validation,
bool  lockOtherJoints = false,
const fcl::Matrix3f &  rotation = fcl::Matrix3f::Zero() 
)

◆ projectToColFreeComPosition()

ProjectionReport HPP_RBPRM_DLLAPI hpp::rbprm::projection::projectToColFreeComPosition ( hpp::rbprm::RbPrmFullBodyPtr_t  fullBody,
const fcl::Vec3f &  target,
const hpp::rbprm::State currentState 
)

Project a configuration to a target COM position, while maintaining contact constraints.

Parameters
fullBodytarget Robot
target,desiredCOM position
currentStatecurrent state of the robot (configuration and contacts)
Returns
projection report containing the state projected

◆ projectToComPosition()

ProjectionReport HPP_RBPRM_DLLAPI hpp::rbprm::projection::projectToComPosition ( hpp::rbprm::RbPrmFullBodyPtr_t  fullBody,
const fcl::Vec3f &  target,
const hpp::rbprm::State currentState 
)

Project a configuration to a target COM position, while maintaining contact constraints.

Parameters
fullBodytarget Robot
target,desiredCOM position
currentStatecurrent state of the robot (configuration and contacts)
Returns
projection report containing the state projected

◆ projectToRootConfiguration()

ProjectionReport HPP_RBPRM_DLLAPI hpp::rbprm::projection::projectToRootConfiguration ( hpp::rbprm::RbPrmFullBodyPtr_t  fullBody,
const pinocchio::ConfigurationIn_t  conf,
const hpp::rbprm::State currentState,
const Vector3  offset = Vector3::Zero() 
)

Project a configuration to a target root configuration, while maintaining contact constraints. If required, up to maxBrokenContacts can be broken in the process. root position is assumed to be at the 3 first dof.

Parameters
fullBodytarget Robot
target,desiredroot position
currentStatecurrent state of the robot (configuration and contacts)
offsetlocation in root frame. If different than zero orientation of root is ignored
Returns
projection report containing the state projected

◆ projectToRootPosition()

ProjectionReport HPP_RBPRM_DLLAPI hpp::rbprm::projection::projectToRootPosition ( hpp::rbprm::RbPrmFullBodyPtr_t  fullBody,
const fcl::Vec3f &  target,
const hpp::rbprm::State currentState 
)

Project a configuration to a target position, while maintaining contact constraints. If required, up to maxBrokenContacts can be broken in the process. root position is assumed to be at the 3 first dof.

Parameters
fullBodytarget Robot
target,desiredroot position
currentStatecurrent state of the robot (configuration and contacts)
Returns
projection report containing the state projected

◆ setCollisionFree()

ProjectionReport HPP_RBPRM_DLLAPI hpp::rbprm::projection::setCollisionFree ( hpp::rbprm::RbPrmFullBodyPtr_t  fullBody,
const core::CollisionValidationPtr_t &  validation,
const std::string &  limb,
const hpp::rbprm::State currentState 
)

Project a configuration such that a given limb configuration is collision free

Parameters
fullBodytarget Robot
limbconsidered limb
Returns
projection report containing the state projected