RaySensor Class Reference

Abstract class for Ray-based sensors. More...

#include <raysensor.h>

Inherited by IRSensor.

Inheritance diagram for RaySensor:

Inheritance graph
[legend]
List of all members.

Public Types

enum  rayDrawMode { drawNothing, drawRay, drawSensor, drawAll }

Public Member Functions

 RaySensor ()
virtual ~RaySensor ()
virtual void init (const OdeHandle &odeHandle, const OsgHandle &osgHandle, Primitive *body, const osg::Matrix pose, double range, rayDrawMode drawMode=drawSensor)=0
 providing essential informations
virtual void reset ()=0
 used for reseting the sensor value to a value of maximal distance.
virtual bool sense (dGeomID object)=0
 performs sense action by checking collision with the given object
virtual double get ()=0
 returns the sensor value (usually in the range [-1,1] )
virtual void setRange (double range)=0
 set the range of the sensor
virtual void update ()=0
 updates the position of the osg nodes
virtual dGeomID getGeomID ()=0
 returns the geomID of the ray geom (used for optimisation)

Detailed Description

Abstract class for Ray-based sensors.

This are sensors which are based on distance measurements using the ODE geom class Ray. The sensor value is obtained by collisions. However of no collision is detected the sensor needs to ajust its output as well. Therefore a reset function is provided. See also RaySensorBank, which is an object for managing multiple ray sensors.


Member Enumeration Documentation

enum rayDrawMode
 

Enumeration values:
drawNothing 
drawRay 
drawSensor 
drawAll 


Constructor & Destructor Documentation

RaySensor  )  [inline]
 

virtual ~RaySensor  )  [inline, virtual]
 


Member Function Documentation

virtual double get  )  [pure virtual]
 

returns the sensor value (usually in the range [-1,1] )

Implemented in IRSensor.

virtual dGeomID getGeomID  )  [pure virtual]
 

returns the geomID of the ray geom (used for optimisation)

Implemented in IRSensor.

virtual void init const OdeHandle odeHandle,
const OsgHandle osgHandle,
Primitive body,
const osg::Matrix  pose,
double  range,
rayDrawMode  drawMode = drawSensor
[pure virtual]
 

providing essential informations

Parameters:
odeHandle OdeHandle
osgHandle OsgHandle
body primitive to which the sensor will be attached
pose relative pose in respect to body in which the sensor will be placed
range length of the sensor
drawMode whether to draw nothing, sensor body, ray, or both

Implemented in IRSensor.

virtual void reset  )  [pure virtual]
 

used for reseting the sensor value to a value of maximal distance.

Implemented in IRSensor.

virtual bool sense dGeomID  object  )  [pure virtual]
 

performs sense action by checking collision with the given object

Returns:
true for collision handled (sensed) and false for no interaction

Implemented in IRSensor.

virtual void setRange double  range  )  [pure virtual]
 

set the range of the sensor

Parameters:
range new length of the sensor

Implemented in IRSensor.

virtual void update  )  [pure virtual]
 

updates the position of the osg nodes

Implemented in IRSensor.


The documentation for this class was generated from the following file:
Generated on Tue Jan 16 02:14:56 2007 for Robotsystem of the Robot Group Leipzig by doxygen 1.3.8