public void LerpUnclamped() { for (int centerAngle = 0; centerAngle < 360; centerAngle += 10) { Vector2 center = Geometry.PointOnCircle2(100, centerAngle); for (int radius = 1; radius < 102; radius += 10) { var circleA = new Circle2(center, radius); var circleB = new Circle2(-center, -radius); Assert.AreEqual(new Circle2(center * 3, radius * 3), Circle2.LerpUnclamped(circleA, circleB, -1)); Assert.AreEqual(circleA, Circle2.LerpUnclamped(circleA, circleB, 0)); Assert.AreEqual(new Circle2(), Circle2.LerpUnclamped(circleA, circleB, 0.5f)); Assert.AreEqual(circleB, Circle2.LerpUnclamped(circleA, circleB, 1)); Assert.AreEqual(new Circle2(-center * 3, -radius * 3), Circle2.LerpUnclamped(circleA, circleB, 2)); } } }