Download coen-2003-project-22..
Transcript
formationClass::formationClass(int numOfRobots)
: myNumOfRobots(numOfRobots)
{
//myNumOfRobots = numOfRobots;
coordinate c = coordinate(0,0);
for(int i = 0; i < numOfRobots; i++)
{
myPositions[i] = c;
}
}
// default and empty constructor
formationClass::formationClass()
: myNumOfRobots(1)
{
//myNumOfRobots = 1;
coordinate c = coordinate(0,0);
myPositions[0] = c;
}
int formationClass::getNumRobots()
{
return myNumOfRobots;
}
// Each robot has local coordinates (thinks it is at (0,0)) so we need
// to convert every coordinate that they changed into the global
coordinates
ArTransform formationClass::getGTransform(int position, ArPose
currentPosition)
{
ArPose original, transformed;
ArTransform newTransform;
int oldX =
int oldY =
coordinate
int newX =
int newY =
currentPosition.getX();
currentPosition.getY();
c = myPositions[position-1];
oldX + c.getX();
oldY + c.getY();
original.setPose(oldX, oldY);
transformed.setPose(newX, newY);
newTransform.setTransform(original, transformed);
return newTransform;
}
coordinate formationClass::getPosition(int positionIndex)
{
return myPositions[positionIndex-1];
}
void formationClass::setPosition(int positionIndex, coordinate
myCoordinate)
{
myPositions[positionIndex-1] = myCoordinate;
72