The class modelling the e-puck robot. More...

Inheritance diagram for Epuck:

Public Member Functions

 Epuck (ConfigurationParameters &params, QString prefix)
 Constructor.
 
virtual ~Epuck ()
 Destructor.
 
virtual bool isKinematic () const
 Returns true if the robot is in kinematic mode.
 
virtual real orientation (const Box2DWrapper *plane) const
 Returns the orientation of the robot.
 
virtual wVector position () const
 Returns the position of the robot.
 
virtual real robotHeight () const
 Returns the height of the robot.
 
virtual real robotRadius () const
 Returns the radius of the robot.
 
virtual void save (ConfigurationParameters &params, QString prefix)
 Saves the actual status of parameters into the ConfigurationParameters object passed.
 
virtual void setOrientation (const Box2DWrapper *plane, real angle)
 Sets the orientation of the robot.
 
virtual void setPosition (const Box2DWrapper *plane, real x, real y)
 Sets the position of the robot in the plane.
 
- Public Member Functions inherited from RobotOnPlane
 RobotOnPlane (ConfigurationParameters &params, QString prefix)
 Constructor.
 
virtual ~RobotOnPlane ()
 Destructor.
 
void setPosition (const Box2DWrapper *plane, const wVector &pos)
 Sets the position of the robot in the plane.
 
- Public Member Functions inherited from Robot
 Robot (ConfigurationParameters &params, QString prefix)
 Constructor.
 
virtual ~Robot ()
 Destructor.
 
- Public Member Functions inherited from ParameterSettableInConstructor
 ParameterSettableInConstructor (ConfigurationParameters &, QString)
 
void addObserver (RuntimeParameterObserver *obs)
 
getRuntimeParameter (QString paramName)
 
virtual ParameterSettableUIgetUIManager ()
 
 ParameterSettable ()
 
virtual void postConfigureInitialization ()
 
void removeObserver (RuntimeParameterObserver *obs)
 
void setRuntimeParameter (QString paramName, T newvalue)
 
QString typeName () const
 
- Public Member Functions inherited from ParameterSettable
void addObserver (RuntimeParameterObserver *obs)
 
getRuntimeParameter (QString paramName)
 
void removeObserver (RuntimeParameterObserver *obs)
 
void setRuntimeParameter (QString paramName, T newvalue)
 
QString typeName () const
 
- Public Member Functions inherited from PhyEpuck
 PhyEpuck (World *world, QString name, const wMatrix &transformation=wMatrix::identity())
 
QColor color () const
 
void doKinematicSimulation (bool k)
 
bool getDrawFrontMarker () const
 
IRSensorControllergroundIRSensorController ()
 
bool isInvisible ()
 
bool isKinematic () const
 
const wMatrixmatrix () const
 
QString name () const
 
 Ownable ()
 
const QList< Owned > & owned () const
 
Ownableowner () const
 
virtual void postUpdate ()
 
virtual void preUpdate ()
 
IRSensorControllerproximityIRSensorController ()
 
void setAlpha (int alpha)
 
void setColor (QColor c)
 
void setDrawFrontMarker (bool drawMarker)
 
void setGroundIRSensorsGraphicalProperties (bool drawSensor, bool drawRay=false, bool drawRealRay=false)
 
void setInvisible (bool b)
 
void setMatrix (const wMatrix &newm)
 
void setOwner (Ownable *owner, bool destroy=true)
 
void setPosition (real x, real y, real z)
 
void setPosition (const wVector &newpos)
 
void setProximityIRSensorsGraphicalProperties (bool drawSensor, bool drawRay=false, bool drawRealRay=false)
 
void setTexture (QString textureName)
 
void setUseColorTextureOfOwner (bool b)
 
QString texture () const
 
bool useColorTextureOfOwner () const
 
WheelMotorControllerwheelsController ()
 
 WObject (World *world, QString name="unamed", const wMatrix &tm=wMatrix::identity(), bool addToWorld=true)
 
Worldworld ()
 
const Worldworld () const
 
- Public Member Functions inherited from WObject
 WObject (World *world, QString name="unamed", const wMatrix &tm=wMatrix::identity(), bool addToWorld=true)
 
QColor color () const
 
bool isInvisible ()
 
const wMatrixmatrix () const
 
QString name () const
 
 Ownable ()
 
const QList< Owned > & owned () const
 
Ownableowner () const
 
void setAlpha (int alpha)
 
void setColor (QColor c)
 
void setInvisible (bool b)
 
void setMatrix (const wMatrix &newm)
 
void setOwner (Ownable *owner, bool destroy=true)
 
void setPosition (const wVector &newpos)
 
void setPosition (real x, real y, real z)
 
void setTexture (QString textureName)
 
void setUseColorTextureOfOwner (bool b)
 
QString texture () const
 
bool useColorTextureOfOwner () const
 
Worldworld ()
 
const Worldworld () const
 
- Public Member Functions inherited from Ownable
const QList< Owned > & owned () const
 
Ownableowner () const
 
void setOwner (Ownable *owner, bool destroy=true)
 

Static Public Member Functions

static void describe (QString type)
 Add to Factory::typeDescriptions() the descriptions of all parameters and subgroups.
 
- Static Public Member Functions inherited from RobotOnPlane
static void describe (QString type)
 Add to Factory::typeDescriptions() the descriptions of all parameters and subgroups.
 

Additional Inherited Members

- Public Types inherited from ParameterSettableInConstructor
enum  Property
 
- Public Types inherited from PhyEpuck
typedef QList< OwnedOwnedList
 
- Public Attributes inherited from ParameterSettableInConstructor
 AllowMultiple
 
 Default
 
 IsList
 
 IsMandatory
 
- Static Public Attributes inherited from ParameterSettableInConstructor
static const double Infinity
 
static const int MaxInteger
 
static const int MinInteger
 
- Static Public Attributes inherited from PhyEpuck
static const real axletrack
 
static const real batterym
 
static const real batteryplacedistancefromground
 
static const real batteryplacex
 
static const real batteryplacey
 
static const real batteryplacez
 
static const real bodyh
 
static const real bodyr
 
static const real passivewheelm
 
static const real passivewheelr
 
static const real wheelh
 
static const real wheelm
 
static const real wheelr
 
static const real wholebodym
 
- Protected Slots inherited from PhyEpuck
void setLeftWheelDesideredVelocity (real velocity)
 
void setRightWheelDesideredVelocity (real velocity)
 
- Protected Member Functions inherited from RobotOnPlane
const QColor & robotColor () const
 Returns the robot color specified by the configuration parameter.
 
- Protected Member Functions inherited from PhyEpuck
virtual void changedMatrix ()
 
- Static Protected Member Functions inherited from ParameterSettableInConstructor
static Descriptor addTypeDescription (QString type, QString shortHelp, QString longHelp=QString(""))
 
static void setGraphicalEditor (QString type)
 
- Protected Attributes inherited from PhyEpuck
QColor colorv
 
bool invisible
 
QString namev
 
QString texturev
 
wMatrix tm
 
bool usecolortextureofowner
 
Worldworldv
 

Detailed Description

The class modelling the e-puck robot.

This inherits from PhyEpuck, so you can use all its methods

Definition at line 396 of file robots.h.

Constructor & Destructor Documentation

Epuck ( ConfigurationParameters params,
QString  prefix 
)

Constructor.

Parameters
paramsthe configuration parameters object with parameters to use
prefixthe prefix to use to access the object configuration parameters. This is guaranteed to end with the separator character when called by the factory, so you don't need to add one

Definition at line 584 of file robots.cpp.

References PhyEpuck::doKinematicSimulation(), ConfigurationHelper::getBool(), PhyEpuck::groundIRSensorController(), PhyEpuck::proximityIRSensorController(), RobotOnPlane::robotColor(), PhyEpuck::setColor(), WheelMotorController::setEnabled(), IRSensorController::setEnabled(), PhyEpuck::setGroundIRSensorsGraphicalProperties(), PhyEpuck::setProximityIRSensorsGraphicalProperties(), and PhyEpuck::wheelsController().

~Epuck ( )
virtual

Destructor.

Definition at line 640 of file robots.cpp.

Member Function Documentation

void describe ( QString  type)
static

Add to Factory::typeDescriptions() the descriptions of all parameters and subgroups.

Parameters
typeis the name of the type regarding the description. The type is used when a subclass reuse the description of its parent calling the parent describe method passing the type of the subclass. In this way, the result of the method describe of the parent will be the addition of the description of the parameters of the parent class into the type of the subclass

Definition at line 613 of file robots.cpp.

References ParameterSettableInConstructor::addTypeDescription(), ParameterSettable::BoolDescriptor::def(), ParameterSettable::StringDescriptor::def(), RobotOnPlane::describe(), ParameterSettable::Descriptor::describeBool(), ParameterSettable::Descriptor::describeString(), ParameterSettable::BoolDescriptor::help(), and ParameterSettable::StringDescriptor::help().

bool isKinematic ( ) const
virtual

Returns true if the robot is in kinematic mode.

Returns
true if the robot is in kinematic mode

Implements RobotOnPlane.

Definition at line 681 of file robots.cpp.

References PhyEpuck::isKinematic().

real orientation ( const Box2DWrapper plane) const
virtual

Returns the orientation of the robot.

This returns the angle around the z axis of the "plane". An angle of 0 means that the X axis of the plane and of the robot are coincident (positive angles follow the right-hand rule). This function returns the angle in radiants

Parameters
planethe plane on which the robot is placed. You can use the plane returned by Arena::getPlane(), here.

Implements RobotOnPlane.

Definition at line 665 of file robots.cpp.

References PhyBox::matrix(), PhyEpuck::matrix(), and Box2DWrapper::phyObject().

Referenced by EpuckSampledProximityIRSensor::update().

wVector position ( ) const
virtual

Returns the position of the robot.

Returns
the position of the robot

Implements RobotOnPlane.

Definition at line 650 of file robots.cpp.

References PhyEpuck::matrix(), and wMatrix::w_pos.

Referenced by EpuckSampledProximityIRSensor::update().

real robotHeight ( ) const
virtual

Returns the height of the robot.

This is the height of the cylinder containing the robot. In some cases wheeled robots are modelled as cylinders to simplify calculations

Returns
the height of the robot

Implements RobotOnPlane.

Definition at line 671 of file robots.cpp.

References PhyEpuck::batteryplacedistancefromground, PhyEpuck::batteryplacez, and PhyEpuck::bodyh.

real robotRadius ( ) const
virtual

Returns the radius of the robot.

This is the radius of the cylinder containing the robot. In some cases wheeled robots are modelled as cylinders to simplify calculations

Returns
the radius of the robot

Implements RobotOnPlane.

Definition at line 676 of file robots.cpp.

References PhyEpuck::bodyr.

void save ( ConfigurationParameters params,
QString  prefix 
)
virtual

Saves the actual status of parameters into the ConfigurationParameters object passed.

This is not implemented, calling this causes an abort

Parameters
paramsthe configuration parameters object on which save actual parameters
prefixthe prefix to use to access the object configuration parameters.

Reimplemented from RobotOnPlane.

Definition at line 608 of file robots.cpp.

References Logger::error().

void setOrientation ( const Box2DWrapper plane,
real  angle 
)
virtual

Sets the orientation of the robot.

This modifies the angle around the z axis of the "plane". An angle of 0 means that the X axis of the plane and of the robot are coincident (positive angles follow the right-hand rule). This function wants the angle in radiants

Parameters
planethe plane on which the robot is placed. You can use the plane returned by Arena::getPlane(), here.
anglethe new orientation in radiants

Implements RobotOnPlane.

Definition at line 655 of file robots.cpp.

References PhyEpuck::matrix(), and PhyEpuck::setMatrix().

void setPosition ( const Box2DWrapper plane,
real  x,
real  y 
)
virtual

Sets the position of the robot in the plane.

The robot is placed on the face of the "plane" parallel to the local XY plane and with positive z coordinate.

Parameters
planethe plane on which the robot should be placed. You can use the plane returned by Arena::getPlane(), here.
xthe new x coordinate
ythe new y coordinate

Implements RobotOnPlane.

Definition at line 644 of file robots.cpp.

References PhyEpuck::setPosition().


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