Drake
DepthSensorSpecification Class Reference

Holds a DepthSensor's specification. More...

#include <drake/systems/sensors/depth_sensor_specification.h>

## Public Member Functions

DepthSensorSpecification ()
Constructs a DepthsensorSpecification with all default values. More...

DepthSensorSpecification (double min_yaw, double max_yaw, double min_pitch, double max_pitch, int num_yaw_values, int num_pitch_values, double min_range, double max_range)
Constructs a fully-defined DepthSensorSpecification. More...

void set_min_yaw (double min_yaw)

void set_max_yaw (double max_yaw)

void set_min_pitch (double min_pitch)

void set_max_pitch (double max_pitch)

void set_num_yaw_values (int num_yaw_values)

void set_num_pitch_values (int num_pitch_values)

void set_min_range (double min_range)

void set_max_range (double max_range)

Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable
DepthSensorSpecification (const DepthSensorSpecification &)=default

DepthSensorSpecificationoperator= (const DepthSensorSpecification &)=default

DepthSensorSpecification (DepthSensorSpecification &&)=default

DepthSensorSpecificationoperator= (DepthSensorSpecification &&)=default

Accessors to manually specified parameters.

The following accessors are for parameter values that are manually specified.

They appear as input parameters of the constructor, and mutator methods in this class.

double min_yaw () const

double max_yaw () const

double min_pitch () const

double max_pitch () const

int num_yaw_values () const

int num_pitch_values () const

double min_range () const

double max_range () const

Accessors to automatically derived parameters.

The following methods return values that are derived based on the manually specified parameters.

double yaw_increment () const

double pitch_increment () const

## Static Public Member Functions

Methods for the convenient initialization of commonly-used

DepthSensorSpecification specifications.

The following methods provide frequently used DepthSensorSpecification specifications that can be used directly or as templates for fine-tuning.

static void set_octant_1_spec (DepthSensorSpecification *spec)
Sets spec to specify a sensor that covers octant 1 of the sensor's base frame. More...

static void set_xy_planar_spec (DepthSensorSpecification *spec)
Sets spec to specify a sensor that covers the sensor's base frame's X/Y plane. More...

static void set_xz_planar_spec (DepthSensorSpecification *spec)
Sets spec to specify a sensor that covers the sensor's base frame's X/Z plane. More...

static void set_xyz_spherical_spec (DepthSensorSpecification *spec)
Sets spec to specify a sensor that covers all 8 octants of the sensor's base frame. More...

static void set_x_linear_spec (DepthSensorSpecification *spec)
Sets spec to specify a sensor with a single depth measurement along the sensor's base frame's +X axis between 1 meter and 2 meters. More...

## Detailed Description

Holds a DepthSensor's specification.

DepthSensor.

## Constructor & Destructor Documentation

 DepthSensorSpecification ( const DepthSensorSpecification & )
default
 DepthSensorSpecification ( DepthSensorSpecification && )
default
 DepthSensorSpecification ( )
inline

Constructs a DepthsensorSpecification with all default values.

Here is the call graph for this function:

 DepthSensorSpecification ( double min_yaw, double max_yaw, double min_pitch, double max_pitch, int num_yaw_values, int num_pitch_values, double min_range, double max_range )

Constructs a fully-defined DepthSensorSpecification.

Parameters
 [in] min_yaw The minimum horizontal scan angle in the sensor's base frame. The horizontal scan angle is about the +Z axis. A zero angle is the +X axis. [in] max_yaw The maximum horizontal scan angle in the sensor's base frame. [in] min_pitch The minimum vertical scan angle in the sensor's base frame. [in] max_pitch The maximum vertical scan angle in the sensor's base frame. [in] num_yaw_values The number of yaw values at which depth measurements are taken. These measurements are evenly spread between min_yaw and max_yaw. This value must be greater than or equal to 1, which occurs when min_yaw equals max_yaw. [in] num_pitch_values The number of yaw values at which depth measurements are taken. These measurements are evenly spread between min_pitch and max_pitch. This value must be greater than or equal to 1, which occurs when min_pitch equals max_pitch. [in] min_range The minimum sensing range. [in] max_range The maximum sensing range.

## Member Function Documentation

 double max_pitch ( ) const
inline

Here is the caller graph for this function:

 double max_range ( ) const
inline

Here is the call graph for this function:

Here is the caller graph for this function:

 double max_yaw ( ) const
inline

Here is the caller graph for this function:

 double min_pitch ( ) const
inline

Here is the caller graph for this function:

 double min_range ( ) const
inline

Here is the caller graph for this function:

 double min_yaw ( ) const
inline

Here is the caller graph for this function:

Here is the caller graph for this function:

 int num_pitch_values ( ) const
inline

Here is the caller graph for this function:

 int num_yaw_values ( ) const
inline

Here is the caller graph for this function:

 DepthSensorSpecification& operator= ( DepthSensorSpecification && )
default
 DepthSensorSpecification& operator= ( const DepthSensorSpecification & )
default
 double pitch_increment ( ) const

Here is the caller graph for this function:

 void set_max_pitch ( double max_pitch )

Here is the call graph for this function:

Here is the caller graph for this function:

 void set_max_range ( double max_range )

Here is the call graph for this function:

Here is the caller graph for this function:

 void set_max_yaw ( double max_yaw )

Here is the call graph for this function:

Here is the caller graph for this function:

 void set_min_pitch ( double min_pitch )

Here is the call graph for this function:

Here is the caller graph for this function:

 void set_min_range ( double min_range )

Here is the call graph for this function:

Here is the caller graph for this function:

 void set_min_yaw ( double min_yaw )

Here is the call graph for this function:

Here is the caller graph for this function:

 void set_num_pitch_values ( int num_pitch_values )

Here is the call graph for this function:

Here is the caller graph for this function:

 void set_num_yaw_values ( int num_yaw_values )

Here is the call graph for this function:

Here is the caller graph for this function:

 static void set_octant_1_spec ( DepthSensorSpecification * spec )
inlinestatic

Sets spec to specify a sensor that covers octant 1 of the sensor's base frame.

It contains the following specifications:

• min_yaw = 0
• max_yaw = M_PI_2
• min_pitch = 0
• max_pitch = M_PI_2
• num_yaw_values = 10
• num_pitch_values = 5
• min_range = 0
• max_range = 1

Here is the call graph for this function:

 static void set_x_linear_spec ( DepthSensorSpecification * spec )
inlinestatic

Sets spec to specify a sensor with a single depth measurement along the sensor's base frame's +X axis between 1 meter and 2 meters.

It contains the following specifications:

• min_yaw = 0
• max_yaw = 0
• min_pitch = 0
• max_pitch = 0
• num_yaw_values = 1
• num_pitch_values = 1
• min_range = 1
• max_range = 2

Here is the call graph for this function:

 static void set_xy_planar_spec ( DepthSensorSpecification * spec )
inlinestatic

Sets spec to specify a sensor that covers the sensor's base frame's X/Y plane.

It contains the following specifications:

• min_yaw = -M_PI
• max_yaw = M_PI
• min_pitch = 0
• max_pitch = 0
• num_yaw_values = 50
• num_pitch_values = 1
• min_range = 0
• max_range = 1

The specification describes a "planar" depth sensor in the sense that min_pitch and max_pitch are both zero whereas the yaw range is non-zero. Thus, it scans in the yaw direction, which is in the plane formed by the X and Y axes of the sensor's base frame. Example depth sensors that fit this description include those made by Hokuyo and SICK.

Here is the call graph for this function:

 static void set_xyz_spherical_spec ( DepthSensorSpecification * spec )
inlinestatic

Sets spec to specify a sensor that covers all 8 octants of the sensor's base frame.

The sensed region is in the shape of a sphere with a radius between min_range and max_range. It contains the following specifications:

• min_yaw = -M_PI
• max_yaw = M_PI
• min_pitch = -M_PI_2
• max_pitch = M_PI_2
• num_yaw_values = 50
• num_pitch_values = 50
• min_range = 0
• max_range = 1

Note that since min_range is 0, the sensed sphere is solid.

Here is the call graph for this function:

 static void set_xz_planar_spec ( DepthSensorSpecification * spec )
inlinestatic

Sets spec to specify a sensor that covers the sensor's base frame's X/Z plane.

It contains the following specifications:

• min_yaw = 0
• max_yaw = 0
• min_pitch = -M_PI_2
• max_pitch = M_PI_2
• num_yaw_values = 1
• num_pitch_values = 50
• min_range = 0
• max_range = 1

See the description of get_xy_planar_spec() for an explanation on why the returned specification describes a "planar" depth sensor. In this case, min_yaw and max_yaw are both equal to zero whereas the pitch range is not zero, meaning the described sensor scans its X / Z plane.

Here is the call graph for this function:

 double yaw_increment ( ) const

Here is the caller graph for this function:

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