From 5f53495817c9dedffbe443d20da9183cf2d32e4b Mon Sep 17 00:00:00 2001 From: Oliver Booth Date: Wed, 1 Jun 2022 15:35:33 +0100 Subject: [PATCH] Add Circle/F conversions --- X10D/src/Drawing/CircleF.cs | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/X10D/src/Drawing/CircleF.cs b/X10D/src/Drawing/CircleF.cs index 480f1d1..f969d0d 100644 --- a/X10D/src/Drawing/CircleF.cs +++ b/X10D/src/Drawing/CircleF.cs @@ -1,4 +1,4 @@ -using System.Drawing; +using System.Drawing; using System.Numerics; using X10D.Numerics; @@ -163,6 +163,27 @@ public readonly struct CircleF : IEquatable, IComparable, ICom return left.CompareTo(right) >= 0; } + /// + /// Explicitly converts a to a . + /// + /// The circle to convert. + /// The converted circle. + public static explicit operator Circle(CircleF circle) + { + PointF center = circle.Center; + return new Circle(new Point((int)center.X, (int)center.Y), (int)circle.Radius); + } + + /// + /// Implicitly converts a to a . + /// + /// The circle to convert. + /// The converted circle. + public static implicit operator CircleF(Circle circle) + { + return new CircleF(circle.Center, circle.Radius); + } + /// /// Compares this instance to another . ///