This object describes a footprint on a flat floor, by its (x,y) position and its rotation in world frame. More...
#include <hpp/gik/robot/foot-print-related.hh>
Public Member Functions | |
ChppGikFootprint (double inX, double inY, double inTheta) | |
Constructor. More... | |
void | worldTranslate (double inDx, double inDy) |
Translate with inDx and inDy being given in world coordinates. More... | |
void | localTranslate (double inDx, double inDy) |
Translate with inDx and inDy being given in local coordinates. More... | |
void | rotate (double inDtheta) |
rotate footprint by inDtheta More... | |
double | distanceTo (const ChppGikFootprint *inFootprint) const |
Distance to the given footprint. More... | |
bool | isPointInsideSafeZone (double inX, double inY) const |
Determine wether the given point is inside the footprint. More... | |
~ChppGikFootprint () | |
Get and Set methods for attX attY and attTheta (absolute coordinates) | |
{@ | |
void | x (double inX) |
void | y (double inY) |
void | th (double inTh) |
double | x () const |
double | y () const |
double | th () const |
Static Public Member Functions | |
static void | makeRelative (const ChppGikFootprint *inReferenceFootprint, ChppGikFootprint *outSubjectFootprint) |
Express outSubjectFootprint (supposed initially expressed in the same frame as inReferenceFootprint) in the local frame of inReferenceFootprint. More... | |
static void | makeAbsolute (const ChppGikFootprint *inReferenceFootprint, ChppGikFootprint *outSubjectFootprint) |
Reverse method of makeRelative (express outSubjectFootprint (supposed initially relative to inReferenceFootprint) in the frame in which inReferenceFootprint is expressed) More... | |
static ChppGikFootprint * | cookFootprint (const matrix4d &inTransformation, double inNormalFootHeight) |
make a footprint from a transformation. More... | |
This object describes a footprint on a flat floor, by its (x,y) position and its rotation in world frame.
A local frame is associated with a footprint: The local frame is set as follows: axis OX points ahead (to the toes), axis OY points to the left and axis OZ points upwards.
The footprint has a circular shape of radius (hardcoded 5cm, to be replaced after description of a footprint shape in CjrlHumanoidDynamicRobot).
ChppGikFootprint::ChppGikFootprint | ( | double | inX, |
double | inY, | ||
double | inTheta | ||
) |
Constructor.
inX inY and inTheta are absolute coordinates
ChppGikFootprint::~ChppGikFootprint | ( | ) |
|
static |
make a footprint from a transformation.
Return 0 if the foot transformation did not turn flat on the ground
double ChppGikFootprint::distanceTo | ( | const ChppGikFootprint * | inFootprint | ) | const |
Distance to the given footprint.
bool ChppGikFootprint::isPointInsideSafeZone | ( | double | inX, |
double | inY | ||
) | const |
Determine wether the given point is inside the footprint.
void ChppGikFootprint::localTranslate | ( | double | inDx, |
double | inDy | ||
) |
Translate with inDx and inDy being given in local coordinates.
|
static |
Reverse method of makeRelative (express outSubjectFootprint (supposed initially relative to inReferenceFootprint) in the frame in which inReferenceFootprint is expressed)
|
static |
Express outSubjectFootprint (supposed initially expressed in the same frame as inReferenceFootprint) in the local frame of inReferenceFootprint.
void ChppGikFootprint::rotate | ( | double | inDtheta | ) |
rotate footprint by inDtheta
void ChppGikFootprint::th | ( | double | inTh | ) |
double ChppGikFootprint::th | ( | ) | const |
void ChppGikFootprint::worldTranslate | ( | double | inDx, |
double | inDy | ||
) |
Translate with inDx and inDy being given in world coordinates.
void ChppGikFootprint::x | ( | double | inX | ) |
double ChppGikFootprint::x | ( | ) | const |
void ChppGikFootprint::y | ( | double | inY | ) |
double ChppGikFootprint::y | ( | ) | const |