public void GetRectAtOffsetSize0(double centerX, double centerY, double radius, double angle, double offset) { var arc = new ArcInfo(new Point(centerX, centerY), radius, Angle.FromDegrees(0), Angle.FromDegrees(360)); var textSize = new Size(0, 0); var pointFromRectAtOffset = arc.GetUpperLeftPointAtOffset(textSize, Angle.FromDegrees(angle), offset); var pointFromAtRadius = arc.GetPointAtRadius(Angle.FromDegrees(angle), arc.Radius + offset); Assert.AreEqual(pointFromAtRadius.X, pointFromRectAtOffset.X); Assert.AreEqual(pointFromAtRadius.Y, pointFromRectAtOffset.Y); }
public void GetRectAtOffsetAt90Degrees() { var arc = new ArcInfo(new Point(100, 100), 100, Angle.FromDegrees(0), Angle.FromDegrees(360)); var positionAtZero = arc.GetPointAtRadius(Angle.FromDegrees(90), arc.Radius); var textSize = new Size(10, 10); var newPos = arc.GetUpperLeftPointAtOffset(textSize, Angle.FromDegrees(90), 0); Console.WriteLine(newPos); Console.WriteLine(positionAtZero + new Vector(-10, -5)); }