Public Member Functions

OccupancyGrid3DProxy Class Reference

Proxy class used to add and manipulate 3D occupancy grids. More...

Inheritance diagram for OccupancyGrid3DProxy:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 OccupancyGrid3DProxy (OccupancyGrid3DProxy &p)
OccupancyGrid3DProxyoperator= (const OccupancyGrid3DProxy &p)
OccupancyGrid3DProxyoperator= (const OccupancyGrid3DProxyBase &p)
DelayedDispatch assign (const ObjectProxyBase &p)
DelayedDispatch assign (PeekabotClient &client, const std::string &path)
DelayedDispatch assign (const ObjectProxyBase &parent, const std::string &rel_path)
DelayedDispatch add (PeekabotClient &client, const std::string &path, float cell_xy_size, float cell_z_size, NameConflictPolicy conflict_policy=AUTO_ENUMERATE_ON_CONFLICT)
 Add a 3D occupancy grid to the scene.
DelayedDispatch add (const ObjectProxyBase &parent, const std::string &name, float cell_xy_size, float cell_z_size, NameConflictPolicy conflict_policy=AUTO_ENUMERATE_ON_CONFLICT)
 Add a 3D occupancy grid to the scene.

Detailed Description

Proxy class used to add and manipulate 3D occupancy grids.

Cells in the occupancy grid are addressed by coordinates, rather than indices.

Usage example
 // Add an occupancy grid to the scene
 peekabot::OccupancyGrid3DProxy og;
 og.add(client, "root.og", 0.2);

 // Set a bunch of cells
 peekabot::OccupancySet3D cells;
 cells.set_cell(7.2, 9.8, 2.3, 0.5);
 cells.set_cell(7.4, 9.8, 2,5, 0.4);
 cells.set_cell(7.6, 10.0, 2.5, 0.55);
 og.set_cells(cells);

Member Function Documentation

DelayedDispatch add ( PeekabotClient client,
const std::string &  path,
float  cell_xy_size,
float  cell_z_size,
NameConflictPolicy  conflict_policy = AUTO_ENUMERATE_ON_CONFLICT 
)

Add a 3D occupancy grid to the scene.

Adds a occupancy grid to the scene at the given path and assigns the proxy to point to it. If an object already exists at the given path the outcome is governed by conflict_policy.

Parameters:
path The path where the object will be added, including the name of the object.
cell_size The length of the sides, in meters, of the (square) occupancy grid cells.
conflict_policy Determines how name conflicts are handled.
DelayedDispatch add ( const ObjectProxyBase parent,
const std::string &  name,
float  cell_xy_size,
float  cell_z_size,
NameConflictPolicy  conflict_policy = AUTO_ENUMERATE_ON_CONFLICT 
)

Add a 3D occupancy grid to the scene.

Adds a occupancy grid with the given name under the the object referred to by parent and assigns the proxy to point to it. If an object already exists at the given path the outcome is governed by conflict_policy.

Parameters:
parent The parent under which the object will be added.
name The name to assign to the created object.
cell_size The length of the sides, in meters, of the (square) occupancy grid cells.
conflict_policy Determines how name conflicts are handled.
DelayedDispatch assign ( PeekabotClient client,
const std::string &  path 
)

Assign the proxy to the object with the given path.

Parameters:
client The client to use for this proxy.
path The path of the object in the peeakbot scene.
DelayedDispatch assign ( const ObjectProxyBase parent,
const std::string &  rel_path 
)

Assign the proxy to the object with the given parent and name.

Parameters:
parent The parent of the object referred to by name.
rel_path The path of the object, relative the parent object, to assign this proxy to.
DelayedDispatch assign ( const ObjectProxyBase p  ) 

Upcast and assign from another proxy.

If the object pointed to by p is not of compatible type, the assignment will fail and subsequent operations performed on the proxy will fail.


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