public void ShouldCorrectlyRotateVectorByNegativeAngle() { // Arrage var vector = new Vector2(0, -3); var angle = Math.PI / -2; // Act var rotatedVector = Physic.RotateVector(vector, angle); // Assert var expectedVector = new Vector2(-3, 0); Assert.AreEqual(rotatedVector.X, expectedVector.X, 0.0001); Assert.AreEqual(rotatedVector.Y, expectedVector.Y, 0.0001); }
public void ShouldCorrectlyRotateVector1() { // Arrage var vector = new Vector2(10, 0); var angle = Math.PI / 4; // Act var rotatedVector = Physic.RotateVector(vector, angle); // Assert var expectedVector = Vector2.Normalize(new Vector2(1, 1)) * vector.Length(); Assert.AreEqual(expectedVector.X, rotatedVector.X, 1e-6); Assert.AreEqual(expectedVector.Y, rotatedVector.Y, 1e-6); }