Main Page   Class Hierarchy   Compound List   Compound Members  

ArPose Class Reference

The class which represents a position. More...

#include <ariaUtil.h>

Inheritance diagram for ArPose::

ArPoseWithTime List of all members.

Public Methods

 ArPose (double x=0, double y=0, double th=0)
 Constructor, with optional initial values. More...

 ArPose (const ArPose &pose)
 Copy Constructor.

virtual ~ArPose (void)
 Destructor.

virtual void setPose (double x, double y, double th=0)
 Sets the position to the given values. More...

virtual void setPose (ArPose position)
 Sets the position equal to the given position. More...

void setX (double x)
 Sets the x position.

void setY (double y)
 Sets the y position.

void setTh (double th)
 Sets the heading.

void setThRad (double th)
 Sets the heading, using radians.

double getX (void)
 Gets the x position.

double getY (void)
 Gets the y position.

double getTh (void)
 Gets the heading.

double getThRad (void)
 Gets the heading, in radians.

void getPose (double *x, double *y, double *th=NULL)
 Gets the whole position in one function call. More...

virtual double findDistanceTo (ArPose position)
 Finds the distance from this position to the given position. More...

virtual double findAngleTo (ArPose position)
 Finds the angle between this position and the given position. More...

virtual void print (void)
 Logs the coordinates using ArLog.


Detailed Description

The class which represents a position.

This class represents a robot position with heading. The heading defaults to 0, and so does not need to be used (this avoids having 2 types of positions). Everything in the class is inline so it should be fast.


Constructor & Destructor Documentation

ArPose::ArPose double    x = 0,
double    y = 0,
double    th = 0
[inline]
 

Constructor, with optional initial values.

Sets the position with the given values, can be used with no variables, with just x and y, or with x, y, and th

Parameters:
x  the position to set the x position to, default of 0
y  the position to set the y position to, default of 0
th  the position to set the th position to, default of 0


Member Function Documentation

virtual double ArPose::findAngleTo ArPose    position [inline, virtual]
 

Finds the angle between this position and the given position.

Parameters:
position  the position to find the angle to
Returns:
the angle to the given position from this instance, in degrees

virtual double ArPose::findDistanceTo ArPose    position [inline, virtual]
 

Finds the distance from this position to the given position.

Parameters:
position  the position to find the distance to
Returns:
the distance to the position from this instance

void ArPose::getPose double *    x,
double *    y,
double *    th = NULL
[inline]
 

Gets the whole position in one function call.

Gets the whole position at once, by giving it 2 or 3 pointers to doubles. If you give the function a null pointer for a value it won't try to use the null pointer, so you can pass in a NULL if you don't care about that value. Also note that th defaults to NULL so you can use this with just x and y.

Parameters:
x  a pointer to a double to set the x position to
y  a pointer to a double to set the y position to
th  a pointer to a double to set the heading to, defaults to NULL

virtual void ArPose::setPose ArPose    position [inline, virtual]
 

Sets the position equal to the given position.

Parameters:
position  the position value this instance should be set to

virtual void ArPose::setPose double    x,
double    y,
double    th = 0
[inline, virtual]
 

Sets the position to the given values.

Sets the position with the given three values, but the theta does not need to be given as it defaults to 0.

Parameters:
x  the position to set the x position to
y  the position to set the y position to
th  the position to set the th position to, default of 0


The documentation for this class was generated from the following file:
Generated on Tue Nov 12 17:43:59 2002 for Aria by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001