|
| IRSensor (double exponent=1, double size=0.05, double range=2, rayDrawMode drawMode=drawSensor) |
|
virtual bool | sense (const GlobalData &globaldata) override |
| performs sense action More...
|
|
virtual int | get (sensor *sensors, int length) const override |
| writes the sensor values (usually in the range [-1,1] ) into the given sensor array and returns the number of sensors written. More...
|
|
virtual std::list< sensor > | getList () const override |
| returns a list of sensor values (usually in the range [-1,1] ) This function should be overloaded. More...
|
|
virtual double | getValue () |
|
virtual double | getExponent () const |
| returns the exponent of the sensor characteritic (default: 1 (linear)) More...
|
|
virtual void | setExponent (double exp) |
| sets the exponent of the sensor characteritic (default: 1 (linear)) More...
|
|
| RaySensor () |
|
| RaySensor (double size, double range, rayDrawMode drawMode) |
|
| ~RaySensor () |
|
virtual RaySensor * | clone () const |
| Create a copy of this without initialization. More...
|
|
void | setPose (const osg::Matrix &pose) override |
| changes the relative pose of the sensor More...
|
|
void | init (Primitive *own, Joint *joint=0) override |
| initialises sensor with a body of robot and optionally with a joint. More...
|
|
bool | sense (const GlobalData &globaldata) override |
| performs sense action More...
|
|
int | get (sensor *sensors, int length) const override |
| writes the sensor values (usually in the range [-1,1] ) into the given sensor array and returns the number of sensors written. More...
|
|
std::list< sensor > | getList () const override |
| returns a list of sensor values (usually in the range [-1,1] ) This function should be overloaded. More...
|
|
virtual int | getSensorNumber () const override |
| returns the number of sensors values produced by this sensor More...
|
|
virtual void | update () override |
| to update any visual appearance More...
|
|
virtual void | setRange (double range) |
| Set maximum range of ray. More...
|
|
virtual void | setDrawMode (rayDrawMode drawMode) |
| Set draw mode of ray. More...
|
|
void | setLength (double len, long int time) |
| Set length of ray (needed for callback) More...
|
|
| PhysicalSensor () |
|
virtual | ~PhysicalSensor () |
|
virtual void | setInitData (const OdeHandle &odeHandle, const OsgHandle &osgHandle, const osg::Matrix &pose) |
| sets the initial data structures More...
|
|
virtual osg::Matrix | getPose () |
| relative pose of the sensor More...
|
|
| Sensor () |
|
virtual | ~Sensor () |
|
virtual std::list
< SensorMotorInfo > | getSensorInfos () const |
| returns a list of sensor infos ( More...
|
|
std::list< sensor > | getListOfArray () const |
| helper function for performance implementation of list<> get() based on array-get More...
|
|
| SensorMotorInfoAble () |
|
void | setBaseName (const std::string &basename) |
|
void | setBaseInfo (const SensorMotorInfo &baseinfo) |
|
SensorMotorInfo | getBaseInfo () |
|
void | setNamingFunc (const NamingFunction &func) |
|
NamingFunction | getNamingFunc () const |
|
void | setNames (const std::vector< std::string > &names) |
| set names explicitly (basename is anyway suffixed) More...
|
|
std::string | getName (int index) const |
| returns the name of a single item. Typically called from within Sensor and Motor class. More...
|
|
std::list< SensorMotorInfo > | getInfos (int number) const |
| get all infos. More...
|
|
|
enum | rayDrawMode { drawNothing,
drawRay,
drawSensor,
drawAll
} |
|
enum | Dimensions {
X = 1,
Y = 2,
Z = 4,
XY = X | Y,
XZ = X | Z,
YZ = Y | Z,
XYZ = X | Y | Z
} |
| defines which dimensions should be sensed. The meaning is sensor specific. More...
|
|
typedef std::function
< std::string(int)> | NamingFunction |
| function that returns the name given the index More...
|
|
static std::list< sensor > | selectrows (const matrix::Matrix &m, short dimensions) |
| selects the rows specified by dimensions (X->0, Y->1, Z->2) More...
|
|
static int | selectrows (sensor *sensors, int length, const matrix::Matrix &m, short dimensions) |
| selects the rows specified by dimensions (X->0, Y->1, Z->2) More...
|
|
static Dimensions | parseSensorDimension (char *str) |
|
static std::string | dimensions2String (short dimensions) |
|
static std::string | defaultNameing (int index) |
| the default implementation is for index==0: basename, otherwise basename + (index+1) More...
|
|
Class for IR sensors.
IR sensors are based on distance measurements using the ODE geom class Ray. The sensor value is obtained by collisions, which are handled by the simulation environement. The information of a collision comes to the sensor via the collision callback of the substance used for the ray (actually for the transform). If no collision is detected the value should be zero, so that a stamp is used. The length measured in this way is modified by the 'characteristic' of the IR sensor