52 lines
1.2 KiB
C#
52 lines
1.2 KiB
C#
using System;
|
|
using System.Drawing;
|
|
using System.Runtime.CompilerServices;
|
|
|
|
namespace HYJig
|
|
{
|
|
public class XArc2D : XDrawable2D, ICloneable
|
|
{
|
|
public XArc2D(Point ptStart, Point ptEnd, Point ptOnArc)
|
|
{
|
|
this.PointStart = ptStart;
|
|
this.PointEnd = ptEnd;
|
|
this.PointOnArc = ptOnArc;
|
|
}
|
|
|
|
public override void Draw(XGraphics g)
|
|
{
|
|
try
|
|
{
|
|
RectangleF rectangleF = default(RectangleF);
|
|
double num = 0.0;
|
|
double num2 = 0.0;
|
|
Class2.smethod_0(this.PointStart, this.PointEnd, this.PointOnArc, ref rectangleF, ref num, ref num2);
|
|
g.m_graphics.DrawArc(g.m_pen, rectangleF, (float)num, (float)num2);
|
|
}
|
|
catch
|
|
{
|
|
}
|
|
}
|
|
|
|
public object Clone()
|
|
{
|
|
try
|
|
{
|
|
return new XArc2D(this.PointStart, this.PointEnd, this.PointOnArc);
|
|
}
|
|
catch
|
|
{
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public Point PointStart { get; set; }
|
|
|
|
public Point PointEnd { get; set; }
|
|
|
|
public Point PointOnArc { get; set; }
|
|
|
|
public int Radius { get; } = 0;
|
|
}
|
|
}
|