private void UpdatePoints() { mLinePrimitive.CreateCircle(Radius, 15); if (mCircleOrigin == Geometry.CircleOrigin.TopLeft) { mLinePrimitive.Shift(Radius, Radius); } }
private void UpdatePoints() { mLinePrimitive.CreateCircle(Radius, 15); if (mCircleOrigin == Geometry.CircleOrigin.TopLeft) { if (Rotation != 0) { Matrix matrix = Matrix.CreateRotationZ(-MathHelper.ToRadians(Rotation)); var vector = Radius * matrix.Right + Radius * matrix.Up; mLinePrimitive.Shift(vector.X, vector.Y); } else { mLinePrimitive.Shift(Radius, Radius); } } }