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

GT2005Polygon Class Reference

#include <GT2005Polygon.h>

Collaboration diagram for GT2005Polygon:

Collaboration graph
[legend]
List of all members.

Public Types

enum  { maxPoints = 128 }

Public Member Functions

 GT2005Polygon (int nPoints=0, int sLength=0)
 ~GT2005Polygon ()
Vector3< double > getPointCoord (int pNum)
void setPointCoord (int pNum, Vector3< double > p)
void getSegment (int sNum, double &sLen, Vector3< double > &p)
void setSegment (int sNum, double sLen, Vector3< double > p)
double getSegmentLength (int sNum)
Vector3< double > getPositionOnShape (double pos)
void insertPoint (int pNum)
GT2005PolygoninterpolateShape (double amount, GT2005Polygon *s2)
void interpolateShapeP (double amount, GT2005Polygon *s2)
int getMaxX ()
int getMinX ()
double approxGroundTime ()
Vector3< double > calculateCenterOfMass ()
void finalize ()
GT2005Polygon scaleX (double s)
GT2005Polygon scaleY (double s)
GT2005Polygon rotateX (double a)
GT2005Polygon rotateY (double a)
GT2005Polygon rotateZ (double a)
void rotateXP (double a)
void rotateYP (double a)
void rotateZP (double a)
GT2005Polygon rotateZC (double a)
bool load (char *filename)
void save (char *filename)
GT2005Polygoncopy ()
GT2005PolygonmirrorY ()

Public Attributes

int stepLength
pSegment pPoints [maxPoints]
int numPoints
double polyLengthX
double groundTime
Vector3< double > centerOfMassCorrection
double rollAngle

Member Enumeration Documentation

anonymous enum
 

Enumeration values:
maxPoints 

Definition at line 32 of file GT2005Polygon.h.


Constructor & Destructor Documentation

GT2005Polygon::GT2005Polygon int  nPoints = 0,
int  sLength = 0
 

Definition at line 11 of file GT2005Polygon.cpp.

References numPoints, and rollAngle.

Referenced by copy(), interpolateShape(), and mirrorY().

GT2005Polygon::~GT2005Polygon  ) 
 

Definition at line 21 of file GT2005Polygon.cpp.


Member Function Documentation

Vector3< double > GT2005Polygon::getPointCoord int  pNum  ) 
 

Definition at line 26 of file GT2005Polygon.cpp.

References numPoints, GT2005Polygon::pSegment::point, and pPoints.

Referenced by getSegment(), interpolateShape(), interpolateShapeP(), and GTWalkParametersIndividual::mutate().

void GT2005Polygon::setPointCoord int  pNum,
Vector3< double >  p
 

Definition at line 37 of file GT2005Polygon.cpp.

References numPoints, GT2005Polygon::pSegment::point, and pPoints.

Referenced by setSegment().

void GT2005Polygon::getSegment int  sNum,
double &  sLen,
Vector3< double > &  p
 

Definition at line 54 of file GT2005Polygon.cpp.

References getPointCoord(), numPoints, pPoints, and GT2005Polygon::pSegment::sLen.

Here is the call graph for this function:

void GT2005Polygon::setSegment int  sNum,
double  sLen,
Vector3< double >  p
 

Definition at line 45 of file GT2005Polygon.cpp.

References numPoints, pPoints, setPointCoord(), and GT2005Polygon::pSegment::sLen.

Referenced by copy(), interpolateShape(), interpolateShapeP(), mirrorY(), GTWalkParametersIndividual::mutate(), rotateX(), rotateXP(), rotateY(), rotateYP(), rotateZ(), rotateZC(), rotateZP(), scaleX(), scaleY(), GT2005Parameters::setBasicPolygons(), and GT2005WalkingEngine::streamDebugData().

Here is the call graph for this function:

double GT2005Polygon::getSegmentLength int  sNum  ) 
 

Definition at line 63 of file GT2005Polygon.cpp.

References numPoints, pPoints, and GT2005Polygon::pSegment::sLen.

Referenced by interpolateShape(), interpolateShapeP(), and GTWalkParametersIndividual::mutate().

Vector3< double > GT2005Polygon::getPositionOnShape double  pos  ) 
 

Definition at line 72 of file GT2005Polygon.cpp.

References numPoints, GT2005Polygon::pSegment::point, pPoints, and GT2005Polygon::pSegment::sLen.

void GT2005Polygon::insertPoint int  pNum  ) 
 

Definition at line 427 of file GT2005Polygon.cpp.

References numPoints, GT2005Polygon::pSegment::point, pPoints, and GT2005Polygon::pSegment::sLen.

GT2005Polygon * GT2005Polygon::interpolateShape double  amount,
GT2005Polygon s2
 

Definition at line 446 of file GT2005Polygon.cpp.

References getPointCoord(), getSegmentLength(), GT2005Polygon(), numPoints, GT2005Polygon::pSegment::point, pPoints, setSegment(), and stepLength.

Referenced by GT2005Parameters::calculateCurrentPoly(), and GTWalkParametersIndividual::crossingOverOf().

Here is the call graph for this function:

void GT2005Polygon::interpolateShapeP double  amount,
GT2005Polygon s2
 

Definition at line 466 of file GT2005Polygon.cpp.

References getPointCoord(), getSegmentLength(), numPoints, GT2005Polygon::pSegment::point, pPoints, setSegment(), and stepLength.

Referenced by GTWalkParametersIndividual::crossOver().

Here is the call graph for this function:

int GT2005Polygon::getMaxX  ) 
 

Definition at line 98 of file GT2005Polygon.cpp.

References max, numPoints, GT2005Polygon::pSegment::point, pPoints, and Vector3< double >::x.

Referenced by approxGroundTime(), and finalize().

int GT2005Polygon::getMinX  ) 
 

Definition at line 122 of file GT2005Polygon.cpp.

References min, numPoints, GT2005Polygon::pSegment::point, pPoints, and Vector3< double >::x.

Referenced by approxGroundTime(), and finalize().

double GT2005Polygon::approxGroundTime  ) 
 

Definition at line 141 of file GT2005Polygon.cpp.

References getMaxX(), getMinX(), numPoints, GT2005Polygon::pSegment::point, pPoints, GT2005Polygon::pSegment::sLen, and Vector3< double >::z.

Referenced by finalize().

Here is the call graph for this function:

Vector3< double > GT2005Polygon::calculateCenterOfMass  ) 
 

Definition at line 186 of file GT2005Polygon.cpp.

References numPoints, GT2005Polygon::pSegment::point, pPoints, Vector3< V >::x, Vector3< double >::x, Vector3< V >::y, Vector3< double >::y, Vector3< V >::z, and Vector3< double >::z.

Referenced by rotateZC().

void GT2005Polygon::finalize  ) 
 

Definition at line 209 of file GT2005Polygon.cpp.

References approxGroundTime(), getMaxX(), getMinX(), numPoints, GT2005Polygon::pSegment::point, polyLengthX, pPoints, GT2005Polygon::pSegment::sLen, and Vector3< double >::x.

Referenced by GT2005Parameters::calculateCurrentPoly(), copy(), mirrorY(), operator>>(), GT2005Parameters::setBasicPolygons(), and GT2005Parameters::setOptimizedPolys().

Here is the call graph for this function:

GT2005Polygon GT2005Polygon::scaleX double  s  ) 
 

Definition at line 233 of file GT2005Polygon.cpp.

References groundTime, numPoints, GT2005Polygon::pSegment::point, polyLengthX, pPoints, setSegment(), stepLength, Vector3< double >::x, Vector3< V >::x, Vector3< double >::y, Vector3< V >::y, Vector3< double >::z, and Vector3< V >::z.

Here is the call graph for this function:

GT2005Polygon GT2005Polygon::scaleY double  s  ) 
 

Definition at line 256 of file GT2005Polygon.cpp.

References groundTime, numPoints, GT2005Polygon::pSegment::point, polyLengthX, pPoints, setSegment(), stepLength, Vector3< double >::x, Vector3< V >::x, Vector3< double >::y, Vector3< V >::y, Vector3< double >::z, and Vector3< V >::z.

Here is the call graph for this function:

GT2005Polygon GT2005Polygon::rotateX double  a  ) 
 

Definition at line 279 of file GT2005Polygon.cpp.

References groundTime, numPoints, GT2005Polygon::pSegment::point, polyLengthX, pPoints, setSegment(), stepLength, Vector3< double >::x, Vector3< V >::x, Vector3< double >::y, Vector3< V >::y, Vector3< V >::z, and Vector3< double >::z.

Here is the call graph for this function:

GT2005Polygon GT2005Polygon::rotateY double  a  ) 
 

Definition at line 303 of file GT2005Polygon.cpp.

References groundTime, numPoints, GT2005Polygon::pSegment::point, polyLengthX, pPoints, setSegment(), stepLength, Vector3< double >::x, Vector3< V >::x, Vector3< double >::y, Vector3< V >::y, Vector3< V >::z, and Vector3< double >::z.

Here is the call graph for this function:

GT2005Polygon GT2005Polygon::rotateZ double  a  ) 
 

Definition at line 327 of file GT2005Polygon.cpp.

References groundTime, numPoints, GT2005Polygon::pSegment::point, polyLengthX, pPoints, setSegment(), stepLength, Vector3< double >::x, Vector3< V >::x, Vector3< V >::y, Vector3< double >::y, Vector3< double >::z, and Vector3< V >::z.

Here is the call graph for this function:

void GT2005Polygon::rotateXP double  a  ) 
 

Definition at line 351 of file GT2005Polygon.cpp.

References numPoints, GT2005Polygon::pSegment::point, pPoints, setSegment(), Vector3< double >::x, Vector3< V >::x, Vector3< double >::y, Vector3< V >::y, Vector3< V >::z, and Vector3< double >::z.

Here is the call graph for this function:

void GT2005Polygon::rotateYP double  a  ) 
 

Definition at line 366 of file GT2005Polygon.cpp.

References numPoints, GT2005Polygon::pSegment::point, pPoints, setSegment(), Vector3< double >::x, Vector3< V >::x, Vector3< double >::y, Vector3< V >::y, Vector3< V >::z, and Vector3< double >::z.

Here is the call graph for this function:

void GT2005Polygon::rotateZP double  a  ) 
 

Definition at line 381 of file GT2005Polygon.cpp.

References numPoints, GT2005Polygon::pSegment::point, pPoints, setSegment(), Vector3< double >::x, Vector3< V >::x, Vector3< V >::y, Vector3< double >::y, Vector3< double >::z, and Vector3< V >::z.

Here is the call graph for this function:

GT2005Polygon GT2005Polygon::rotateZC double  a  ) 
 

Definition at line 396 of file GT2005Polygon.cpp.

References calculateCenterOfMass(), centerOfMassCorrection, groundTime, numPoints, GT2005Polygon::pSegment::point, polyLengthX, pPoints, setSegment(), stepLength, Vector3< V >::x, Vector3< V >::y, and Vector3< V >::z.

Here is the call graph for this function:

bool GT2005Polygon::load char *  filename  ) 
 

Definition at line 526 of file GT2005Polygon.cpp.

References InFile::exists().

Here is the call graph for this function:

void GT2005Polygon::save char *  filename  ) 
 

Definition at line 542 of file GT2005Polygon.cpp.

GT2005Polygon * GT2005Polygon::copy  ) 
 

Definition at line 482 of file GT2005Polygon.cpp.

References finalize(), groundTime, GT2005Polygon(), numPoints, GT2005Polygon::pSegment::point, polyLengthX, pPoints, setSegment(), Vector3< double >::x, Vector3< V >::x, Vector3< double >::y, Vector3< V >::y, Vector3< double >::z, and Vector3< V >::z.

Referenced by GT2005Parameters::calculateCurrentPoly(), GT2005WalkingEngine::executeParameterized(), GTWalkParametersIndividual::operator=(), and GT2005Parameters::setBasicPolygons().

Here is the call graph for this function:

GT2005Polygon * GT2005Polygon::mirrorY  ) 
 

Definition at line 504 of file GT2005Polygon.cpp.

References finalize(), groundTime, GT2005Polygon(), numPoints, GT2005Polygon::pSegment::point, polyLengthX, pPoints, setSegment(), Vector3< double >::x, Vector3< V >::x, Vector3< double >::y, Vector3< V >::y, Vector3< double >::z, and Vector3< V >::z.

Here is the call graph for this function:


Member Data Documentation

int GT2005Polygon::stepLength
 

Definition at line 29 of file GT2005Polygon.h.

Referenced by GT2005WalkingEngine::executeParameterized(), interpolateShape(), interpolateShapeP(), GTWalkParametersIndividual::mutate(), operator<<(), operator>>(), rotateX(), rotateY(), rotateZ(), rotateZC(), scaleX(), scaleY(), GT2005Parameters::setBasicPolygons(), and GT2005Parameters::setOptimizedPolys().

pSegment GT2005Polygon::pPoints[maxPoints]
 

Definition at line 38 of file GT2005Polygon.h.

Referenced by approxGroundTime(), calculateCenterOfMass(), copy(), finalize(), getMaxX(), getMinX(), getPointCoord(), getPositionOnShape(), getSegment(), getSegmentLength(), insertPoint(), interpolateShape(), interpolateShapeP(), mirrorY(), operator<<(), operator>>(), rotateX(), rotateXP(), rotateY(), rotateYP(), rotateZ(), rotateZC(), rotateZP(), scaleX(), scaleY(), GT2005Parameters::setOptimizedPolys(), setPointCoord(), and setSegment().

int GT2005Polygon::numPoints
 

Definition at line 41 of file GT2005Polygon.h.

Referenced by approxGroundTime(), calculateCenterOfMass(), GTWalkParametersIndividual::calculateTauTau0(), copy(), finalize(), getMaxX(), getMinX(), getPointCoord(), getPositionOnShape(), getSegment(), getSegmentLength(), GT2005Polygon(), insertPoint(), interpolateShape(), interpolateShapeP(), mirrorY(), GTWalkParametersIndividual::mutate(), operator<<(), operator>>(), rotateX(), rotateXP(), rotateY(), rotateYP(), rotateZ(), rotateZC(), rotateZP(), scaleX(), scaleY(), GT2005Parameters::setOptimizedPolys(), setPointCoord(), setSegment(), and GT2005WalkingEngine::streamDebugData().

double GT2005Polygon::polyLengthX
 

Definition at line 44 of file GT2005Polygon.h.

Referenced by GT2005WalkingEngine::calculateData(), copy(), finalize(), mirrorY(), rotateX(), rotateY(), rotateZ(), rotateZC(), scaleX(), and scaleY().

double GT2005Polygon::groundTime
 

Definition at line 45 of file GT2005Polygon.h.

Referenced by copy(), mirrorY(), rotateX(), rotateY(), rotateZ(), rotateZC(), scaleX(), and scaleY().

Vector3<double> GT2005Polygon::centerOfMassCorrection
 

Definition at line 46 of file GT2005Polygon.h.

Referenced by rotateZC().

double GT2005Polygon::rollAngle
 

Definition at line 48 of file GT2005Polygon.h.

Referenced by GT2005Polygon(), operator<<(), operator>>(), and GT2005Parameters::setOptimizedPolys().


The documentation for this class was generated from the following files:
Generated on Mon Mar 20 22:14:46 2006 for GT2005 by doxygen 1.3.6