libmove3d-planners
 All Classes Namespaces Files Functions Variables Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | List of all members
BodySurfaceSampler Class Reference

Public Member Functions

 BodySurfaceSampler (double step)
 
void computeObjectPointCloud (obj *obj, PointCloud &pointCloud, bool isRobot=false)
 Computes a point cloud for an object. More...
 
void computeStaticObjectsPointCloud ()
 
void computeRobotBodiesPointCloud (Robot *rob)
 
void computeAllRobotsBodiesPointCloud ()
 
bool isPointInEnvironment (const Eigen::Vector3d &point)
 
bool isPointOverGround (const Eigen::Vector3d &point)
 
PointCloudgetPointCloud (obj *o)
 
BoundingCylindergenerateBoudingCylinder (p3d_obj *obj)
 
double generateRobotBoudingCylinder (Robot *rob, const std::vector< Joint * > &activeJoints)
 returns the max radius
 
void generateAllRobotsBoundingCylinders ()
 Computes collision points for all bodies.
 
std::vector< CollisionPointgetLinksCollisionPoints (Joint *jnt, int segment_number, const std::vector< int > &parent_joints)
 Generates the collision point for a given link Stores the segment number (the id of the joint for planning) Also store the parent joints of the link.
 
std::vector< CollisionPointgenerateJointCollisionPoints (Robot *robot, int id, const std::vector< int > &active_joints, const std::vector< int > &planner_joints)
 Computes the parent joints, the segment of the joint and generate the collision point for the joint supposing that the bounding cylinder has been computed before.
 
std::vector< CollisionPointgenerateRobotCollisionPoints (Robot *robot, const std::vector< int > &active_joints, const std::vector< int > &planner_joints)
 Generate the collision points for links associated to the active joints It computes the parent joints of the joint.
 
std::vector< CollisionPointgenerateAllRobotCollisionPoints (Robot *robot)
 Generate the collision points for links associated to the active joints It computes the parent joints of the joint.
 
std::vector< CollisionPoint > & getCollisionPoints (Joint *jnt)
 
double getDefaultClearance ()
 
void draw ()
 Draw the sampled points Sampled points are points on the surface of static obstacles collision points are computed by bounding cylinders.
 

Member Function Documentation

void BodySurfaceSampler::computeObjectPointCloud ( obj *  obj,
PointCloud pointCloud,
bool  isRobot = false 
)

Computes a point cloud for an object.

Discard points of they are not in the evironment box also dicard points of they are bellow 0 in z (bellow ground) this enables a pading while keeping a ground object for the calssical collision checker based algorithm


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