public void rotate(Matrix3d rotation) { transformGenerator.rotate(rotation); }
generator.rotate(1.7, Axis.Z); expectedTransform = new RigidBodyTransform(); expectedTransform.setRotationEulerAndZeroTranslation(0.0, 0.0, 1.7); assertTrue(transform.epsilonEquals(expectedTransform, 1e-10)); generator.rotate(1.3, Axis.Y); expectedTransform = new RigidBodyTransform(); expectedTransform.setRotationEulerAndZeroTranslation(0.0, 1.3, 1.7); assertTrue(transform.epsilonEquals(expectedTransform, 1e-10)); generator.rotate(0.2, Axis.X); expectedTransform = new RigidBodyTransform(); expectedTransform.setRotationEulerAndZeroTranslation(0.2, 1.3, 1.7);
public void rotate(Quat4d rotation) { transformGenerator.rotate(rotation); }
public void rotate(RotationMatrix rotation) { transformGenerator.rotate(rotation); }
public void rotate(Quaternion rotation) { transformGenerator.rotate(rotation); }
public void rotate(double rotationAngle, Axis axis) { transformGenerator.rotate(rotationAngle, axis); }
public void rotate(double rotationAngle, Axis axis) { transformGenerator.rotate(rotationAngle, axis); }
public void addCubeReferencedAtCenter(double lengthX, double widthY, double heightZ) { RigidBodyTransformGenerator transformGeneratorTwo = new RigidBodyTransformGenerator(transformGenerator); transformGeneratorTwo.set(transformGenerator); transformGeneratorTwo.translate(0.0, 0.0, heightZ / 2.0); addRectangle(transformGeneratorTwo, lengthX, widthY); transformGeneratorTwo.translate(0.0, 0.0, -heightZ); transformGeneratorTwo.rotate(Math.PI, Axis.Y); addRectangle(transformGeneratorTwo, lengthX, widthY); transformGeneratorTwo.rotate(Math.PI, Axis.Y); transformGeneratorTwo.set(transformGenerator); transformGeneratorTwo.rotate(Math.PI / 2.0, Axis.Y); transformGeneratorTwo.translate(0.0, 0.0, lengthX / 2.0); addRectangle(transformGeneratorTwo, heightZ, widthY); transformGeneratorTwo.translate(0.0, 0.0, -lengthX); transformGeneratorTwo.rotate(Math.PI, Axis.Y); addRectangle(transformGeneratorTwo, heightZ, widthY); transformGeneratorTwo.rotate(Math.PI, Axis.Y); transformGeneratorTwo.set(transformGenerator); transformGeneratorTwo.rotate(Math.PI / 2.0, Axis.X); transformGeneratorTwo.translate(0.0, 0.0, widthY / 2.0); addRectangle(transformGeneratorTwo, lengthX, heightZ); transformGeneratorTwo.translate(0.0, 0.0, -widthY); transformGeneratorTwo.rotate(Math.PI, Axis.X); addRectangle(transformGeneratorTwo, lengthX, heightZ); transformGeneratorTwo.rotate(Math.PI, Axis.X); }
public void addRampReferencedAtBottomMiddle(double lengthX, double widthY, double heightZ) { RigidBodyTransformGenerator transformGeneratorTwo = new RigidBodyTransformGenerator(transformGenerator); double slope = Math.atan2(heightZ, lengthX); transformGeneratorTwo.set(transformGenerator); transformGeneratorTwo.translate(lengthX / 2.0, 0.0, heightZ / 2.0); transformGeneratorTwo.rotate(-slope, Axis.Y); addRectangle(transformGeneratorTwo, EuclidGeometryTools.pythagorasGetHypotenuse(lengthX, heightZ), widthY); ConvexPolygon2D leftSide = new ConvexPolygon2D(); leftSide.addVertex(0.0, 0.0); leftSide.addVertex(- lengthX, 0.0); leftSide.addVertex(- lengthX, heightZ); leftSide.update(); ConvexPolygon2D rightSide = new ConvexPolygon2D(); rightSide.addVertex(0.0, 0.0); rightSide.addVertex(lengthX, 0.0); rightSide.addVertex(lengthX, heightZ); rightSide.update(); transformGeneratorTwo.set(transformGenerator); transformGeneratorTwo.translate(0.0, 0.5 * widthY, 0.0); transformGeneratorTwo.rotate(0.5 * Math.PI, Axis.X); transformGeneratorTwo.rotate(Math.PI, Axis.Y); addPolygon(transformGeneratorTwo, leftSide); transformGeneratorTwo.set(transformGenerator); transformGeneratorTwo.translate(0.0, -0.5 * widthY, 0.0); transformGeneratorTwo.rotate(0.5 * Math.PI, Axis.X); addPolygon(transformGeneratorTwo, rightSide); }
public void addCubeReferencedAtCenter(double lengthX, double widthY, double heightZ) { RigidBodyTransformGenerator transformGeneratorTwo = new RigidBodyTransformGenerator(transformGenerator); transformGeneratorTwo.set(transformGenerator); transformGeneratorTwo.translate(0.0, 0.0, heightZ / 2.0); addRectangle(transformGeneratorTwo, lengthX, widthY); transformGeneratorTwo.translate(0.0, 0.0, -heightZ); addRectangle(transformGeneratorTwo, lengthX, widthY); transformGeneratorTwo.set(transformGenerator); transformGeneratorTwo.rotate(Math.PI / 2.0, Axis.Y); transformGeneratorTwo.translate(0.0, 0.0, lengthX / 2.0); addRectangle(transformGeneratorTwo, heightZ, widthY); transformGeneratorTwo.translate(0.0, 0.0, -lengthX); addRectangle(transformGeneratorTwo, heightZ, widthY); transformGeneratorTwo.set(transformGenerator); transformGeneratorTwo.rotate(Math.PI / 2.0, Axis.X); transformGeneratorTwo.translate(0.0, 0.0, widthY / 2.0); addRectangle(transformGeneratorTwo, lengthX, heightZ); transformGeneratorTwo.translate(0.0, 0.0, -widthY); addRectangle(transformGeneratorTwo, lengthX, heightZ); }
generator.rotate(yaw, Axis.Z); RigidBodyTransform transform = generator.getRigidBodyTransformCopy();
assertTrue(transform.epsilonEquals(expectedTransform, 1e-10)); generator.rotate(-Math.PI / 2.0, Axis.Y); generator.translate(2.0, 0.0, 0.0); expectedTransform = new RigidBodyTransform(); assertTrue(transform.epsilonEquals(expectedTransform, 1e-10)); generator.rotate(Math.PI / 2.0, Axis.Z); generator.translate(3.0, 0.0, 0.0); expectedTransform = new RigidBodyTransform();
transformGenerator.rotate(Math.PI / 4.0, Axis.Z); RigidBodyTransform transform = transformGenerator.getRigidBodyTransformCopy(); Point3D startPosition = new Point3D(-6.0, 0.0, 0.0);