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:

[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< PfPose > | probabilityDistribution
| 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(), GT2005PotentialFieldBasicBehaviorAvoidRobots::execute(), GT2005PotentialFieldBasicBehaviorOffensiveSupport::execute(), GT2005PotentialFieldBasicBehaviorSupport::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(), GT2005PotentialFieldBasicBehaviorAvoidRobots::execute(), GT2005PotentialFieldBasicBehaviorOffensiveSupport::execute(), GT2005PotentialFieldBasicBehaviorSupport::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(), GT2005PotentialFieldBasicBehaviorAvoidRobots::execute(), GT2005PotentialFieldBasicBehaviorOffensiveSupport::execute(), GT2005PotentialFieldBasicBehaviorSupport::execute(), operator=(), and PfPose().

double PfPose::probability

| The probability of the pose. Definition at line 212 of file PfieldDatatypes.h. Referenced by PotentialFieldsObject::computeAbsFieldVecAt(), PotentialFieldsObject::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(), PotentialFieldsObject::computeAbsFieldVecAt(), PotentialFieldsObject::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(), PotentialFieldsObject::computeAbsFieldVecAt(), PotentialFieldsObject::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:

- Tools/PotentialFields/PfieldDatatypes.h