A DynamicEDT3D object computes and updates a 3D distance map.  
 More...
#include <dynamicEDT3D.h>
 | 
| void  | clearCell (int x, int y, int z) | 
|   | remove an obstacle at the specified cell coordinate  More...
  | 
|   | 
|   | DynamicEDT3D (int _maxdist_squared) | 
|   | 
| void  | exchangeObstacles (std::vector< INTPOINT3D > newObstacles) | 
|   | remove old dynamic obstacles and add the new ones  More...
  | 
|   | 
| INTPOINT3D  | getClosestObstacle (int x, int y, int z) const  | 
|   | gets the closest occupied cell for that location  More...
  | 
|   | 
| float  | getDistance (int x, int y, int z) const  | 
|   | returns the obstacle distance at the specified location  More...
  | 
|   | 
| unsigned int  | getSizeX () const  | 
|   | returns the x size of the workspace/map  More...
  | 
|   | 
| unsigned int  | getSizeY () const  | 
|   | returns the y size of the workspace/map  More...
  | 
|   | 
| unsigned int  | getSizeZ () const  | 
|   | returns the z size of the workspace/map  More...
  | 
|   | 
| int  | getSQCellDistance (int x, int y, int z) const  | 
|   | returns the squared obstacle distance in cell units at the specified location  More...
  | 
|   | 
| void  | initializeEmpty (int _sizeX, int _sizeY, int sizeZ, bool initGridMap=true) | 
|   | Initialization with an empty map.  More...
  | 
|   | 
| void  | initializeMap (int _sizeX, int _sizeY, int sizeZ, bool ***_gridMap) | 
|   | Initialization with a given binary map (false==free, true==occupied)  More...
  | 
|   | 
| bool  | isOccupied (int x, int y, int z) const  | 
|   | checks whether the specficied location is occupied  More...
  | 
|   | 
| void  | occupyCell (int x, int y, int z) | 
|   | add an obstacle at the specified cell coordinate  More...
  | 
|   | 
| virtual void  | update (bool updateRealDist=true) | 
|   | update distance map to reflect the changes  More...
  | 
|   | 
|   | ~DynamicEDT3D () | 
|   | 
 | 
| void  | inspectCellPropagate (int &nx, int &ny, int &nz, dataCell &c, bool updateRealDist) | 
|   | 
| void  | inspectCellRaise (int &nx, int &ny, int &nz, bool updateRealDist) | 
|   | 
| void  | propagateCell (INTPOINT3D &p, dataCell &c, bool updateRealDist) | 
|   | 
| void  | raiseCell (INTPOINT3D &p, dataCell &c, bool updateRealDist) | 
|   | 
| void  | removeObstacle (int x, int y, int z) | 
|   | 
| void  | setObstacle (int x, int y, int z) | 
|   | 
A DynamicEDT3D object computes and updates a 3D distance map. 
dynamicEDT3D: A library for incrementally updatable Euclidean distance transforms in 3D. 
- Author
 - C. Sprunk, B. Lau, W. Burgard, University of Freiburg, Copyright (C) 2011. 
 
- See also
 - http://octomap.sourceforge.net/ License: New BSD License 
 
Definition at line 47 of file dynamicEDT3D.h.
 
| Enumerator | 
|---|
| fwNotQueued  | 
 | 
| fwQueued  | 
 | 
| fwProcessed  | 
 | 
| bwQueued  | 
 | 
| bwProcessed  | 
 | 
Definition at line 105 of file dynamicEDT3D.h.
 
 
      
        
          | DynamicEDT3D::DynamicEDT3D  | 
          ( | 
          int  | 
          _maxdist_squared | ) | 
           | 
        
      
 
 
      
        
          | DynamicEDT3D::~DynamicEDT3D  | 
          ( | 
           | ) | 
           | 
        
      
 
 
      
        
          | void DynamicEDT3D::clearCell  | 
          ( | 
          int  | 
          x,  | 
        
        
           | 
           | 
          int  | 
          y,  | 
        
        
           | 
           | 
          int  | 
          z  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
remove an obstacle at the specified cell coordinate 
Definition at line 260 of file dynamicEDT3D.cpp.
 
 
  
  
      
        
          | void DynamicEDT3D::commitAndColorize  | 
          ( | 
          bool  | 
          updateRealDist = true | ) | 
           | 
         
       
   | 
  
private   | 
  
 
 
      
        
          | void DynamicEDT3D::exchangeObstacles  | 
          ( | 
          std::vector< INTPOINT3D >  | 
          newObstacles | ) | 
           | 
        
      
 
remove old dynamic obstacles and add the new ones 
Definition at line 288 of file dynamicEDT3D.cpp.
 
 
      
        
          | INTPOINT3D DynamicEDT3D::getClosestObstacle  | 
          ( | 
          int  | 
          x,  | 
        
        
           | 
           | 
          int  | 
          y,  | 
        
        
           | 
           | 
          int  | 
          z  | 
        
        
           | 
          ) | 
           |  const | 
        
      
 
gets the closest occupied cell for that location 
Definition at line 528 of file dynamicEDT3D.cpp.
 
 
      
        
          | float DynamicEDT3D::getDistance  | 
          ( | 
          int  | 
          x,  | 
        
        
           | 
           | 
          int  | 
          y,  | 
        
        
           | 
           | 
          int  | 
          z  | 
        
        
           | 
          ) | 
           |  const | 
        
      
 
returns the obstacle distance at the specified location 
Definition at line 521 of file dynamicEDT3D.cpp.
 
 
  
  
      
        
          | unsigned int DynamicEDT3D::getSizeX  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
returns the x size of the workspace/map 
Definition at line 80 of file dynamicEDT3D.h.
 
 
  
  
      
        
          | unsigned int DynamicEDT3D::getSizeY  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
returns the y size of the workspace/map 
Definition at line 82 of file dynamicEDT3D.h.
 
 
  
  
      
        
          | unsigned int DynamicEDT3D::getSizeZ  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
returns the z size of the workspace/map 
Definition at line 84 of file dynamicEDT3D.h.
 
 
      
        
          | int DynamicEDT3D::getSQCellDistance  | 
          ( | 
          int  | 
          x,  | 
        
        
           | 
           | 
          int  | 
          y,  | 
        
        
           | 
           | 
          int  | 
          z  | 
        
        
           | 
          ) | 
           |  const | 
        
      
 
returns the squared obstacle distance in cell units at the specified location 
Definition at line 536 of file dynamicEDT3D.cpp.
 
 
      
        
          | void DynamicEDT3D::initializeEmpty  | 
          ( | 
          int  | 
          _sizeX,  | 
        
        
           | 
           | 
          int  | 
          _sizeY,  | 
        
        
           | 
           | 
          int  | 
          sizeZ,  | 
        
        
           | 
           | 
          bool  | 
          initGridMap = true  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
 
      
        
          | void DynamicEDT3D::initializeMap  | 
          ( | 
          int  | 
          _sizeX,  | 
        
        
           | 
           | 
          int  | 
          _sizeY,  | 
        
        
           | 
           | 
          int  | 
          sizeZ,  | 
        
        
           | 
           | 
          bool ***  | 
          _gridMap  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
Initialization with a given binary map (false==free, true==occupied) 
Definition at line 209 of file dynamicEDT3D.cpp.
 
 
  
  
      
        
          | void DynamicEDT3D::inspectCellPropagate  | 
          ( | 
          int &  | 
          nx,  | 
         
        
           | 
           | 
          int &  | 
          ny,  | 
         
        
           | 
           | 
          int &  | 
          nz,  | 
         
        
           | 
           | 
          dataCell &  | 
          c,  | 
         
        
           | 
           | 
          bool  | 
          updateRealDist  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlineprotected   | 
  
 
 
  
  
      
        
          | void DynamicEDT3D::inspectCellRaise  | 
          ( | 
          int &  | 
          nx,  | 
         
        
           | 
           | 
          int &  | 
          ny,  | 
         
        
           | 
           | 
          int &  | 
          nz,  | 
         
        
           | 
           | 
          bool  | 
          updateRealDist  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlineprotected   | 
  
 
 
      
        
          | bool DynamicEDT3D::isOccupied  | 
          ( | 
          int  | 
          x,  | 
        
        
           | 
           | 
          int  | 
          y,  | 
        
        
           | 
           | 
          int  | 
          z  | 
        
        
           | 
          ) | 
           |  const | 
        
      
 
checks whether the specficied location is occupied 
Definition at line 584 of file dynamicEDT3D.cpp.
 
 
  
  
      
        
          | bool DynamicEDT3D::isOccupied  | 
          ( | 
          int &  | 
          x,  | 
         
        
           | 
           | 
          int &  | 
          y,  | 
         
        
           | 
           | 
          int &  | 
          z,  | 
         
        
           | 
           | 
          dataCell &  | 
          c  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inlineprivate   | 
  
 
 
      
        
          | void DynamicEDT3D::occupyCell  | 
          ( | 
          int  | 
          x,  | 
        
        
           | 
           | 
          int  | 
          y,  | 
        
        
           | 
           | 
          int  | 
          z  | 
        
        
           | 
          ) | 
           |  | 
        
      
 
add an obstacle at the specified cell coordinate 
Definition at line 255 of file dynamicEDT3D.cpp.
 
 
  
  
      
        
          | void DynamicEDT3D::removeObstacle  | 
          ( | 
          int  | 
          x,  | 
         
        
           | 
           | 
          int  | 
          y,  | 
         
        
           | 
           | 
          int  | 
          z  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
protected   | 
  
 
 
  
  
      
        
          | void DynamicEDT3D::setObstacle  | 
          ( | 
          int  | 
          x,  | 
         
        
           | 
           | 
          int  | 
          y,  | 
         
        
           | 
           | 
          int  | 
          z  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
protected   | 
  
 
 
  
  
      
        
          | void DynamicEDT3D::update  | 
          ( | 
          bool  | 
          updateRealDist = true | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
 
  
  
      
        
          | int DynamicEDT3D::distanceInCellsValue_Error = -1 | 
         
       
   | 
  
static   | 
  
 
distance value returned when requesting distance in cell units for a cell outside the map 
Definition at line 91 of file dynamicEDT3D.h.
 
 
  
  
      
        
          | float DynamicEDT3D::distanceValue_Error = -1.0 | 
         
       
   | 
  
static   | 
  
 
distance value returned when requesting distance for a cell outside the map 
Definition at line 89 of file dynamicEDT3D.h.
 
 
  
  
      
        
          | double DynamicEDT3D::doubleThreshold | 
         
       
   | 
  
protected   | 
  
 
 
  
  
      
        
          | bool*** DynamicEDT3D::gridMap | 
         
       
   | 
  
protected   | 
  
 
 
  
  
      
        
          | std::vector<INTPOINT3D> DynamicEDT3D::lastObstacles | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | double DynamicEDT3D::maxDist | 
         
       
   | 
  
protected   | 
  
 
 
  
  
      
        
          | int DynamicEDT3D::maxDist_squared | 
         
       
   | 
  
protected   | 
  
 
 
  
  
      
        
          | int DynamicEDT3D::padding | 
         
       
   | 
  
protected   | 
  
 
 
  
  
      
        
          | int DynamicEDT3D::sizeXm1 | 
         
       
   | 
  
protected   | 
  
 
 
  
  
      
        
          | int DynamicEDT3D::sizeYm1 | 
         
       
   | 
  
protected   | 
  
 
 
  
  
      
        
          | int DynamicEDT3D::sizeZm1 | 
         
       
   | 
  
protected   | 
  
 
 
  
  
      
        
          | double DynamicEDT3D::sqrt2 | 
         
       
   | 
  
protected   | 
  
 
 
The documentation for this class was generated from the following files: