MarXbot class The marXbot represent an marXbot robot. More...
Public Member Functions | |
PhyMarXbot (World *world, QString name, const wMatrix &tm=wMatrix::identity()) | |
Create a MarXbot. More... | |
virtual | ~PhyMarXbot () |
Destroy the MarXbot. More... | |
void | doKinematicSimulation (bool k) |
Changes the robot model from dynamic to kinematic and vice-versa. More... | |
IRSensorController * | groundAroundIRSensorController () |
return the ground IR sensors on the base (just above the wheels) More... | |
IRSensorController * | groundBottomIRSensorController () |
returns the ground IR sensors below the battery pack More... | |
bool | isKinematic () const |
Returns true if we are using the kinematic model. More... | |
virtual void | postUpdate () |
postUpdate the robot this method is called at each step of the world just after the physic update More... | |
virtual void | preUpdate () |
preUpdate the robot this method is called at each step of the world just before the physic update More... | |
IRSensorController * | proximityIRSensorController () |
returns the proximity infrared sensors More... | |
void | setGroundAroundIRSensorsGraphicalProperties (bool drawSensor, bool drawRay=false, bool drawRealRay=false) |
Sets whether ground around IR sensors are drawn or not and how. More... | |
void | setGroundBottomIRSensorsGraphicalProperties (bool drawSensor, bool drawRay=false, bool drawRealRay=false) |
Sets whether ground bottom IR sensors are drawn or not and how. More... | |
void | setProximityIRSensorsGraphicalProperties (bool drawSensor, bool drawRay=false, bool drawRealRay=false) |
Sets whether proximity IR sensors are drawn or not and how. More... | |
TractionSensorController * | tractionSensorController () |
return traction sensor of the robot More... | |
WheelMotorController * | wheelsController () |
returns the motor controller for the wheels More... | |
Public Member Functions inherited from WObject | |
WObject (World *world, QString name="unamed", const wMatrix &tm=wMatrix::identity(), bool addToWorld=true) | |
create the object and automatically put this into the world More... | |
virtual | ~WObject () |
destroy the Object and drop it from the world More... | |
QColor | color () const |
return the color of this object More... | |
void | drawLocalAxes (bool d) |
Sets whether the object local frame of reference should be drawn or not. More... | |
bool | isInvisible () const |
return if it is invisible More... | |
const QString & | label () const |
Returns the text label to render along with the object. More... | |
const QColor & | labelColor () const |
Returns the color of the label. More... | |
const wVector & | labelPosition () const |
Returns the label position relative to this object. More... | |
bool | labelShown () const |
Returns whether the label is shown or not. More... | |
bool | localAxesDrawn () const |
Returns true if the local frame of refecence of the object should be drawn. More... | |
const wMatrix & | matrix () const |
return a reference to the transformation matrix More... | |
QString | name () const |
Return the name of this object. More... | |
void | setAlpha (int alpha) |
set the value of alpha channel (the transparency) More... | |
void | setColor (QColor c) |
Set the color to use on rendering. More... | |
void | setInvisible (bool b) |
set invisibility More... | |
void | setLabel (QString label) |
Sets a text label to render along with the object. More... | |
void | setLabel (QString label, wVector pos) |
Sets a text label to render along with the object and its position. More... | |
void | setLabel (QString label, wVector pos, QColor color) |
Sets a text label to render along with the object and its position and color. More... | |
void | setLabelColor (const QColor &color) |
Sets the color of the label. More... | |
void | setLabelPosition (const wVector &pos) |
Sets the label position relative to this object. More... | |
void | setMatrix (const wMatrix &newm) |
set a new matrix More... | |
void | setPosition (const wVector &newpos) |
set the position specified in global coordinate frame More... | |
void | setPosition (real x, real y, real z) |
set the position specified in global coordinate frame More... | |
void | setTexture (QString textureName) |
Set the texture to use for this WObject when rendered. More... | |
void | setUseColorTextureOfOwner (bool b) |
set if the object will be rendered with the color and texture of our owner (if we have one) More... | |
void | showLabel (bool show) |
Sets whether to show the label or not. More... | |
QString | texture () const |
Return the texture name. More... | |
bool | useColorTextureOfOwner () const |
if true, we will use color and texture of our owner (if we have one) More... | |
World * | world () |
Return the world. More... | |
const World * | world () const |
Return the world (const version) More... | |
Public Member Functions inherited from Ownable | |
Ownable () | |
Constructor. More... | |
virtual | ~Ownable () |
Destructor. More... | |
const QList< Owned > & | owned () const |
Returns the list of objects owned by this one. More... | |
Ownable * | owner () const |
Returns the owner of this object. More... | |
void | setOwner (Ownable *owner, bool destroy=true) |
Sets the owner of this object. More... | |
Static Public Attributes | |
static const real | attachringh = 0.0285f |
static const real | attachringm = 0.08f |
static const real | axledistance = 0.104f |
static const real | basem = 0.4f |
static const real | basex = 0.034f |
static const real | basey = 0.143f |
static const real | basez = 0.048f |
static const real | bodyh = 0.0055f |
static const real | bodym = 0.02f |
static const real | bodyr = 0.085f |
static const real | ledsh = 0.010f |
static const real | ledsm = 0.03f |
static const real | ledsradius = 0.080f |
static const real | trackheight = 0.0295f |
static const real | trackm = 0.05f |
static const real | trackradius = 0.022f |
static const real | treaddepth = 0.004f |
static const real | wheelh = 0.0215f |
static const real | wheelm = 0.02f |
static const real | wheelr = 0.027f |
Protected Slots | |
void | setLeftWheelDesideredVelocity (real velocity) |
Sets the desidered velocity of the left wheel. More... | |
void | setRightWheelDesideredVelocity (real velocity) |
Sets the desidered velocity of the right wheel. More... | |
Protected Member Functions | |
virtual void | changedMatrix () |
update the matrix of all sub-objects More... | |
Additional Inherited Members | |
Public Types inherited from Ownable | |
typedef QList< Owned > | OwnedList |
The type for the list of owned objects. More... | |
Protected Attributes inherited from WObject | |
QColor | colorv |
Color, it contains also alpha channel. More... | |
bool | invisible |
if TRUE it will not renderized More... | |
QColor | labelcol |
The color of the label. More... | |
bool | labeldrawn |
Whether the label should be rendered or not. More... | |
wVector | labelpos |
The position of the label in the object frame of reference. More... | |
QString | labelv |
The text label of the object. More... | |
bool | localFrameOfReferenceDrawn |
If true, the local frame of reference of the object is drawn. More... | |
QString | namev |
Name of the WObject. More... | |
QString | texturev |
Texture name. More... | |
wMatrix | tm |
Trasformation matrix. More... | |
bool | usecolortextureofowner |
if true, we will use color and texture of our owner (if we have one). More... | |
World * | worldv |
World. More... | |
Detailed Description
MarXbot class The marXbot represent an marXbot robot.
See http://mobots.epfl.ch/marxbot.html
Definition at line 381 of file phymarxbot.h.
Constructor & Destructor Documentation
PhyMarXbot | ( | World * | world, |
QString | name, | ||
const wMatrix & | tm = wMatrix::identity() |
||
) |
Create a MarXbot.
- Parameters
-
tm specify the position and rotation of the marXbot
Definition at line 554 of file phymarxbot.cpp.
References MaterialDB::createMaterial(), PhyJoint::dofs(), MaterialDB::enableCollision(), wMatrix::identity(), World::materials(), WObject::matrix(), wMatrix::pitch(), wMatrix::roll(), WObject::setColor(), MaterialDB::setElasticity(), PhyMarXbot::setLeftWheelDesideredVelocity(), PhyObject::setMass(), WObject::setMatrix(), Ownable::setOwner(), PhyMarXbot::setRightWheelDesideredVelocity(), MaterialDB::setSoftness(), WheelMotorController::setSpeedLimits(), WObject::setUseColorTextureOfOwner(), WObject::tm, farsa::toRad(), PhyJoint::updateJointInfo(), WObject::world(), and wMatrix::yaw().
|
virtual |
Destroy the MarXbot.
Definition at line 828 of file phymarxbot.cpp.
Member Function Documentation
|
protectedvirtual |
update the matrix of all sub-objects
Reimplemented from WObject.
Definition at line 941 of file phymarxbot.cpp.
References WObject::matrix(), WObject::setMatrix(), WObject::tm, PhyFixed::updateJointInfo(), and PhyJoint::updateJointInfo().
void doKinematicSimulation | ( | bool | k | ) |
Changes the robot model from dynamic to kinematic and vice-versa.
- Parameters
-
k if true switches to the kinematic MarXbot model, if false to the dynamic one (at creation the model is always dynamic)
Definition at line 893 of file phymarxbot.cpp.
References PhyJoint::enable(), PhyObject::setKinematic(), and PhyFixed::updateJointInfo().
|
inline |
return the ground IR sensors on the base (just above the wheels)
Definition at line 441 of file phymarxbot.h.
|
inline |
returns the ground IR sensors below the battery pack
Definition at line 437 of file phymarxbot.h.
|
inline |
Returns true if we are using the kinematic model.
Definition at line 476 of file phymarxbot.h.
|
virtual |
postUpdate the robot this method is called at each step of the world just after the physic update
Reimplemented from WObject.
Definition at line 861 of file phymarxbot.cpp.
References SensorController::isEnabled(), WObject::matrix(), WObject::tm, SimulatedIRProximitySensorController::update(), and SimulatedIRGroundSensorController::update().
|
virtual |
preUpdate the robot this method is called at each step of the world just before the physic update
Reimplemented from WObject.
Definition at line 844 of file phymarxbot.cpp.
References MotorController::isEnabled(), WObject::matrix(), WObject::setMatrix(), WheelMotorController::update(), and WObject::world().
|
inline |
returns the proximity infrared sensors
Definition at line 433 of file phymarxbot.h.
void setGroundAroundIRSensorsGraphicalProperties | ( | bool | drawSensor, |
bool | drawRay = false , |
||
bool | drawRealRay = false |
||
) |
Sets whether ground around IR sensors are drawn or not and how.
Definition at line 888 of file phymarxbot.cpp.
References SimulatedIRGroundSensorController::setGraphicalProperties().
void setGroundBottomIRSensorsGraphicalProperties | ( | bool | drawSensor, |
bool | drawRay = false , |
||
bool | drawRealRay = false |
||
) |
Sets whether ground bottom IR sensors are drawn or not and how.
Definition at line 883 of file phymarxbot.cpp.
References SimulatedIRGroundSensorController::setGraphicalProperties().
|
protectedslot |
Sets the desidered velocity of the left wheel.
This is used when in kinematic to move the robot. We only use velocity because robots can only move by setting wheel velocities
- Parameters
-
velocity the desidered velocity (in radiants per second)
Definition at line 931 of file phymarxbot.cpp.
Referenced by PhyMarXbot::PhyMarXbot().
void setProximityIRSensorsGraphicalProperties | ( | bool | drawSensor, |
bool | drawRay = false , |
||
bool | drawRealRay = false |
||
) |
Sets whether proximity IR sensors are drawn or not and how.
Definition at line 878 of file phymarxbot.cpp.
References SimulatedIRProximitySensorController::setGraphicalProperties().
|
protectedslot |
Sets the desidered velocity of the right wheel.
This is used when in kinematic to move the robot. We only use velocity because robots can only move by setting wheel velocities
- Parameters
-
velocity the desidered velocity (in radiants per second)
Definition at line 936 of file phymarxbot.cpp.
Referenced by PhyMarXbot::PhyMarXbot().
|
inline |
return traction sensor of the robot
Definition at line 445 of file phymarxbot.h.
|
inline |
returns the motor controller for the wheels
Definition at line 429 of file phymarxbot.h.
The documentation for this class was generated from the following files:
- worldsim/include/phymarxbot.h
- worldsim/src/phymarxbot.cpp