#include <ariaUtil.h>
Inheritance diagram for ArPose:

This class represents a robot position with heading. The heading is automatically adjusted to be in the range -180 to 180. It also 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.
Public Member Functions | |
| ArPose (const ArPose &pose) | |
| Copy Constructor.  | |
| ArPose (double x=0, double y=0, double th=0) | |
| Constructor, with optional initial values.   | |
| virtual double | findAngleTo (ArPose position) const | 
| Finds the angle between this position and the given position.   | |
| virtual double | findDistanceTo (ArPose position) const | 
| Finds the distance from this position to the given position.   | |
| void | getPose (double *x, double *y, double *th=NULL) const | 
| Gets the whole position in one function call.   | |
| double | getTh (void) const | 
| Gets the heading.  | |
| double | getThRad (void) const | 
| Gets the heading, in radians.  | |
| double | getX (void) const | 
| Gets the x position.  | |
| double | getY (void) const | 
| Gets the y position.  | |
| virtual void | log (void) const | 
| Logs the coordinates using ArLog.  | |
| virtual bool | operator!= (const ArPose &other) const | 
| virtual ArPose | operator+ (const ArPose &other) const | 
| Add the other pose's X, Y and theta to this pose's X, Y, and theta (sum in theta will be normalized to (-180,180)), and return the result.  | |
| ArPose & | operator+= (const ArPose &other) | 
| virtual ArPose | operator- (const ArPose &other) const | 
| Substract the other pose's X, Y, and theta from this pose's X, Y, and theta (difference in theta will be normalized to (-180,180)), and return the result.  | |
| ArPose & | operator-= (const ArPose &other) | 
| virtual bool | operator< (const ArPose &other) const | 
| Less than operator (for sets).  | |
| virtual bool | operator== (const ArPose &other) const | 
| Equality operator (for sets).  | |
| virtual void | setPose (ArPose position) | 
| Sets the position equal to the given position.   | |
| virtual void | setPose (double x, double y, double th=0) | 
| Sets the position to the given values.   | |
| void | setTh (double th) | 
| Sets the heading.  | |
| void | setThRad (double th) | 
| Sets the heading, using radians.  | |
| void | setX (double x) | 
| Sets the x position.  | |
| void | setY (double y) | 
| Sets the y position.  | |
| virtual double | squaredFindDistanceTo (ArPose position) const | 
| Finds the square distance from this position to the given position.   | |
| virtual | ~ArPose () | 
| Destructor.  | |
Protected Attributes | |
| double | myTh | 
| double | myX | 
| double | myY | 
      
  | 
  ||||||||||||||||
| 
 Constructor, with optional initial values. Sets the pose to the given values. The constructor can be called with no parameters, with just x and y, or with x, y, and th. The given heading (th) is automatically adjusted to be in the range -180 to 180. 
 
  | 
  
      
  | 
  
| 
 Finds the angle between this position and the given position. 
 
 
  | 
  
      
  | 
  
| 
 Finds the distance from this position to the given position. 
 
 
  | 
  
      
  | 
  ||||||||||||||||
| 
 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. 
  | 
  
      
  | 
  
| 
 Adds the given pose to this one. Java and Python Wrappers: Not available in Java or Python wrapper libraries.  | 
  
      
  | 
  
| 
 Subtracts the given pose from this one. Java and Python Wrappers: Not available in Java or Python wrapper libraries.  | 
  
      
  | 
  
| 
 Sets the position equal to the given position. 
 
  | 
  
      
  | 
  ||||||||||||||||
| 
 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. 
  | 
  
      
  | 
  
| 
 Finds the square distance from this position to the given position. This is only here for speed, if you aren't doing this thousands of times a second don't use this one use findDistanceTo 
 
 
  | 
  
 1.4.2