use of spacesettlers.utilities.Position in project spacesettlers by amymcgovern.
the class TestToroidal2DPhysics method testApplyTranslationalMovementHorizontalFromStop.
@Test
public void testApplyTranslationalMovementHorizontalFromStop() {
Movement movement = new Movement();
movement.setAngularAccleration(0);
movement.setTranslationalAcceleration(new Vector2D(10, 0));
double expectedX = 10;
double expectedY = 0;
Position newPosition = space.applyMovement(position, movement, timestep);
assertEquals(newPosition.getX(), expectedX, 0.01);
assertEquals(newPosition.getY(), expectedY, 0.01);
assertEquals(newPosition.getOrientation(), 0, 0.01);
assertEquals(newPosition.getAngularVelocity(), 0, 0.01);
assertEquals(newPosition.getTranslationalVelocityX(), 10, 0.01);
assertEquals(newPosition.getTranslationalVelocityY(), 0, 0.01);
}
use of spacesettlers.utilities.Position in project spacesettlers by amymcgovern.
the class TestToroidal2DPhysics method testApplyOrientationMoveFromTurning.
@Test
public void testApplyOrientationMoveFromTurning() {
Movement movement = new Movement();
movement.setAngularAccleration(Math.PI / 180.0);
movement.setTranslationalAcceleration(new Vector2D());
double expectedOrientation = (3.0 * Math.PI) / 180.0;
// first time is from stop
Position newPosition = space.applyMovement(position, movement, timestep);
// second time it is moving already
newPosition = space.applyMovement(newPosition, movement, timestep);
assertEquals(newPosition.getOrientation(), expectedOrientation, 0.01);
assertEquals(newPosition.getAngularVelocity(), Math.PI / 90.0, 0.01);
assertEquals(newPosition.getX(), 0, 0.0);
assertEquals(newPosition.getY(), 0, 0.0);
assertEquals(newPosition.getTranslationalVelocityX(), 0, 0);
assertEquals(newPosition.getTranslationalVelocityY(), 0, 0);
}
use of spacesettlers.utilities.Position in project spacesettlers by amymcgovern.
the class TestToroidal2DPhysics method testApplyNoMovementFromStop.
@Test
public void testApplyNoMovementFromStop() {
Movement movement = new Movement();
movement.setAngularAccleration(0);
movement.setTranslationalAcceleration(new Vector2D());
Position newPosition = space.applyMovement(position, movement, timestep);
assertEquals(newPosition.getX(), 0, 0.01);
assertEquals(newPosition.getY(), 0, 0.01);
assertEquals(newPosition.getOrientation(), 0, 0.01);
assertEquals(newPosition.getAngularVelocity(), 0, 0.01);
assertEquals(newPosition.getTranslationalVelocityX(), 0, 0.01);
assertEquals(newPosition.getTranslationalVelocityY(), 0, 0.01);
}
use of spacesettlers.utilities.Position in project spacesettlers by amymcgovern.
the class PolygonGraphics method fromPositions.
public static PolygonGraphics fromPositions(Color c, List<Position> points) {
Polygon myPolygon = new Polygon();
for (Position p : points) {
myPolygon.addPoint((int) p.getX(), (int) p.getY());
}
Rectangle2D bounds = myPolygon.getBounds2D();
return new PolygonGraphics(c, myPolygon, bounds);
}
Aggregations