Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

PfPose Class Reference

A class to describe the pose of an object in a potential field. More...

#include <PfieldDatatypes.h>

Collaboration diagram for PfPose:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 PfPose ()
 Constructor.

 ~PfPose ()
 Destructor.

 PfPose (const PfPose &p)
 Copy-Constructor.

void init ()
 Resets all values.

PfVec getRelativeVectorTo (const PfVec &p) const
 Computes a relative vector to a position.

double getAngleTo (const PfVec &p) const
 Computes the relative angle to a position.

void addVector (const PfVec &vec)
 Adds a vector to the pose.

void addAbsVector (const PfVec &vec)
 Adds a vector to the pose not considering the rotation.

void rotateAround (const PfVec &position, double angle)
 Rotates the pose around a position.

void operator= (const PfPose &p)
 Copies data from another pose.

void normRotation ()
 Norms the rotation to the interval [-pi,..,pi].

void setPoseFromSamples ()
 Sets the pose from the sample with the highest probability.


Public Attributes

PfVec pos
 The position of the pose.

double rotation
 The rotation of the pose.

double speed
 The current speed.

double probability
 The probability of the pose.

bool hasProbabilityDistribution
 Flag: true, if this pose consists of several poses.

std::vector< PfPoseprobabilityDistribution
 A set of poses.


Detailed Description

A class to describe the pose of an object in a potential field.

Definition at line 202 of file PfieldDatatypes.h.


Constructor & Destructor Documentation

PfPose::PfPose  )  [inline]
 

Constructor.

Definition at line 219 of file PfieldDatatypes.h.

References hasProbabilityDistribution, pos, PfVec::x, and PfVec::y.

PfPose::~PfPose  )  [inline]
 

Destructor.

Definition at line 230 of file PfieldDatatypes.h.

References probabilityDistribution.

PfPose::PfPose const PfPose p  )  [inline]
 

Copy-Constructor.

Parameters:
p Another pose

Definition at line 238 of file PfieldDatatypes.h.

References hasProbabilityDistribution, pos, probability, probabilityDistribution, rotation, and speed.


Member Function Documentation

void PfPose::init  )  [inline]
 

Resets all values.

Definition at line 256 of file PfieldDatatypes.h.

References hasProbabilityDistribution, pos, probabilityDistribution, PfVec::x, and PfVec::y.

PfVec PfPose::getRelativeVectorTo const PfVec p  )  const [inline]
 

Computes a relative vector to a position.

Parameters:
p The position
Returns:
The vector

Definition at line 271 of file PfieldDatatypes.h.

References pos, and PfVec::rotate().

Here is the call graph for this function:

double PfPose::getAngleTo const PfVec p  )  const [inline]
 

Computes the relative angle to a position.

Parameters:
p The position
Returns:
The angle

Definition at line 282 of file PfieldDatatypes.h.

References PfVec::getAngle(), pos, and PfVec::rotate().

Referenced by computeChargeForSectorfield(), computeGradientForSectorfield(), PotentialfieldAStarNode::computeHeuristicBetween(), PotentialfieldAStarNode::expand(), FutureWorldModelGenerator::getMaxRotationForObject(), and Sector::pointInside().

Here is the call graph for this function:

void PfPose::addVector const PfVec vec  )  [inline]
 

Adds a vector to the pose.

Parameters:
vec The vector

Definition at line 292 of file PfieldDatatypes.h.

References hasProbabilityDistribution, pos, probabilityDistribution, and PfVec::rotate().

Referenced by PotentialfieldAStarNode::expand().

Here is the call graph for this function:

void PfPose::addAbsVector const PfVec vec  )  [inline]
 

Adds a vector to the pose not considering the rotation.

Parameters:
vec The vector

Definition at line 307 of file PfieldDatatypes.h.

References hasProbabilityDistribution, pos, and probabilityDistribution.

Referenced by FutureWorldModelGenerator::executeSingleTransformation(), and Motionfield::pathPlanningStillNeeded().

void PfPose::rotateAround const PfVec position,
double  angle
[inline]
 

Rotates the pose around a position.

Parameters:
position The position to rotate around
angle The angle to rotate

Definition at line 321 of file PfieldDatatypes.h.

References hasProbabilityDistribution, normRotation(), pos, probabilityDistribution, and PfVec::rotate().

Referenced by FutureWorldModelGenerator::executeSingleTransformation().

Here is the call graph for this function:

void PfPose::operator= const PfPose p  )  [inline]
 

Copies data from another pose.

Parameters:
p The pose

Definition at line 340 of file PfieldDatatypes.h.

References hasProbabilityDistribution, pos, probability, probabilityDistribution, rotation, and speed.

void PfPose::normRotation  )  [inline]
 

Norms the rotation to the interval [-pi,..,pi].

Definition at line 360 of file PfieldDatatypes.h.

References pi, and pi2.

Referenced by PotentialfieldComposition::execute(), FutureWorldModelGenerator::executeSingleTransformation(), FutureWorldModelGenerator::getMaxRotationForObject(), and rotateAround().

void PfPose::setPoseFromSamples  )  [inline]
 

Sets the pose from the sample with the highest probability.

Definition at line 374 of file PfieldDatatypes.h.

References pos, and probabilityDistribution.

Referenced by FutureWorldModelGenerator::transformWorldState().


Member Data Documentation

PfVec PfPose::pos
 

The position of the pose.

Definition at line 206 of file PfieldDatatypes.h.

Referenced by addAbsVector(), addVector(), computeChargeForPointfield(), computeChargeForSectorfield(), computeChargeForShapefield(), PotentialfieldAStarNode::computeCurrentParameters(), computeGradientForPointfield(), computeGradientForSectorfield(), computeGradientForShapefield(), PotentialfieldAStarNode::computeHeuristicBetween(), NoGeometry::distanceTo(), Polygon::distanceTo(), Line::distanceTo(), Circle::distanceTo(), PotentialfieldAStarNode::distToOtherNode(), AStarSearch< PotentialfieldAStarNode, PotentialfieldAStarParameterSet, double >::draw(), PotentialfieldComposition::execute(), Motionfield::execute(), GTStandardConverter::execute(), GT2004PotentialFieldBasicBehaviorOffensiveSupport::execute(), GT2004PotentialFieldBasicBehaviorSupport::execute(), GT2004PotentialFieldBasicBehaviorGoToPose::execute(), FutureWorldModelGenerator::executeSingleTransformation(), PotentialfieldAStarNode::expand(), NoGeometry::getAbs(), Polygon::getAbs(), Line::getAbs(), Circle::getAbs(), getAngleTo(), SingleFormation::getCharge(), Potentialfield::getDirectionArray(), SingleFormation::getDistanceToFormation(), Motionfield::getFieldVecFromAStarSearch(), FutureWorldModelGenerator::getMaxRotationForObject(), FutureWorldModelGenerator::getMaxTranslationForObject(), FormationObject::getPose(), SingleFormation::getPosition(), getRelativeVectorTo(), Potentialfield::getValueArray(), SingleFormation::getVec(), PotentialfieldAStarNode::hasReached(), init(), operator=(), Parser::parseInstance(), Motionfield::pathPlanningStillNeeded(), PfPose(), Action::poseInsideImpactArea(), rotateAround(), NoGeometry::setAbsoluteFromOther(), Polygon::setAbsoluteFromOther(), Line::setAbsoluteFromOther(), Circle::setAbsoluteFromOther(), GTStandardConverter::setData(), setPoseFromSamples(), PotentialfieldAStarNode::tooCloseToAnotherNode(), and RelativeFormation::updateGeometry().

double PfPose::rotation
 

The rotation of the pose.

Definition at line 208 of file PfieldDatatypes.h.

Referenced by computeGradientForSectorfield(), Polygon::distanceTo(), Line::distanceTo(), PotentialfieldComposition::execute(), Motionfield::execute(), GTStandardConverter::execute(), GT2004PotentialFieldBasicBehaviorOffensiveSupport::execute(), GT2004PotentialFieldBasicBehaviorSupport::execute(), GT2004PotentialFieldBasicBehaviorGoToPose::execute(), FutureWorldModelGenerator::executeSingleTransformation(), Polygon::getAbs(), Line::getAbs(), Motionfield::getFieldVecFromAStarSearch(), FutureWorldModelGenerator::getMaxRotationForObject(), operator=(), Parser::parseInstance(), PfPose(), Action::poseInsideImpactArea(), Polygon::setAbsoluteFromOther(), Line::setAbsoluteFromOther(), GTStandardConverter::setData(), and RelativeFormation::updateGeometry().

double PfPose::speed
 

The current speed.

Definition at line 210 of file PfieldDatatypes.h.

Referenced by Motionfield::execute(), Actionfield::execute(), GT2004PotentialFieldBasicBehaviorOffensiveSupport::execute(), GT2004PotentialFieldBasicBehaviorSupport::execute(), operator=(), and PfPose().

double PfPose::probability
 

The probability of the pose.

Definition at line 212 of file PfieldDatatypes.h.

Referenced by Object::computeAbsFieldVecAt(), Object::computeChargeAt(), GTStandardConverter::execute(), operator=(), PfPose(), and GTStandardConverter::setData().

bool PfPose::hasProbabilityDistribution
 

Flag: true, if this pose consists of several poses.

Definition at line 214 of file PfieldDatatypes.h.

Referenced by addAbsVector(), addVector(), Action::canBeApplied(), Object::computeAbsFieldVecAt(), Object::computeChargeAt(), FutureWorldModelGenerator::executeSingleTransformation(), Motionfield::getFieldVecFromAStarSearch(), init(), operator=(), PfPose(), rotateAround(), and FutureWorldModelGenerator::transformWorldState().

std::vector<PfPose> PfPose::probabilityDistribution
 

A set of poses.

Definition at line 216 of file PfieldDatatypes.h.

Referenced by addAbsVector(), addVector(), Action::canBeApplied(), Object::computeAbsFieldVecAt(), Object::computeChargeAt(), FutureWorldModelGenerator::executeSingleTransformation(), Motionfield::getFieldVecFromAStarSearch(), init(), operator=(), PfPose(), rotateAround(), setPoseFromSamples(), FutureWorldModelGenerator::transformWorldState(), and ~PfPose().


The documentation for this class was generated from the following file:
Generated on Thu Sep 23 20:10:36 2004 for GT2004 by doxygen 1.3.6