moveit2
The MoveIt Motion Planning Framework for ROS 2.
Classes | Enumerations | Functions
distance_field Namespace Reference

Namespace for holding classes that generate distance fields. More...

Classes

class  DistanceField
 DistanceField is an abstract base class for computing distances from sets of 3D obstacle points. The distance assigned to a freespace cell should be the distance to the closest obstacle cell. Cells that are obstacle cells should either be marked as zero distance, or may have a negative distance if a signed version of the distance field is being used and an obstacle point is internal to an obstacle volume. More...
 
struct  CompareEigenVector3i
 Struct for sorting type Eigen::Vector3i for use in sorted std containers. Sorts in z order, then y order, then x order. More...
 
struct  PropDistanceFieldVoxel
 Structure that holds voxel information for the DistanceField. Will be used in VoxelGrid. More...
 
class  PropagationDistanceField
 A DistanceField implementation that uses a vector propagation method. Distances propagate outward from occupied cells, or inwards from unoccupied cells if negative distances are to be computed, which is optional. Outward and inward propagation only occur to a desired maximum distance - cells that are more than this maximum distance from the nearest cell will have maximum distance measurements. More...
 
class  VoxelGrid
 VoxelGrid holds a dense 3D, axis-aligned set of data at a given resolution, where the data is supplied as a template parameter. More...
 

Enumerations

enum  PlaneVisualizationType { XY_PLANE , XZ_PLANE , YZ_PLANE }
 The plane to visualize. More...
 
enum  Dimension { DIM_X = 0 , DIM_Y = 1 , DIM_Z = 2 }
 Specifies dimension of different axes. More...
 

Functions

 MOVEIT_CLASS_FORWARD (DistanceField)
 
void findInternalPointsConvex (const bodies::Body &body, double resolution, EigenSTL::vector_Vector3d &points)
 Find all points on a regular grid that are internal to the body, assuming the body is a convex shape. If the body is not convex then its convex hull is used. More...
 

Detailed Description

Namespace for holding classes that generate distance fields.

Distance fields are dense 3D representations containing the distance to the nearest obstacles.

Enumeration Type Documentation

◆ Dimension

Specifies dimension of different axes.

Enumerator
DIM_X 
DIM_Y 
DIM_Z 

Definition at line 47 of file voxel_grid.h.

◆ PlaneVisualizationType

The plane to visualize.

Enumerator
XY_PLANE 
XZ_PLANE 
YZ_PLANE 

Definition at line 68 of file distance_field.h.

Function Documentation

◆ findInternalPointsConvex()

void distance_field::findInternalPointsConvex ( const bodies::Body &  body,
double  resolution,
EigenSTL::vector_Vector3d &  points 
)

Find all points on a regular grid that are internal to the body, assuming the body is a convex shape. If the body is not convex then its convex hull is used.

Parameters
[in]bodyThe body to discretize
[in]resolutionThe resolution at which to test
[out]pointsThe points internal to the body are appended to thiss vector.

Definition at line 39 of file find_internal_points.cpp.

Here is the caller graph for this function:

◆ MOVEIT_CLASS_FORWARD()

distance_field::MOVEIT_CLASS_FORWARD ( DistanceField  )