三点创建圆弧(由于开发需要,将VB版本改成c#版本)
#region 根据三点创建圆弧private Point3d GetArcCenter(Point3d pt1,Point3d pt2,Point3d pt3,ref double radius)
{
double xysm, xyse, xy;
double[] m_ArcCenter = new double;
xy = Math.Pow(pt1.X, 2) + Math.Pow(pt1.Y, 2);
xyse = xy - Math.Pow(pt3.X, 2) - Math.Pow(pt3.Y, 2);
xysm = xy - Math.Pow(pt2.X, 2) - Math.Pow(pt2.Y, 2);
xy = (pt1.X - pt2.X) * (pt1.Y - pt3.Y) - (pt1.X - pt3.X) * (pt1.Y - pt2.Y);
// 判断参数有效性
if (Math.Abs(xy) 0 && Y > 0)||(X > 0 && Y0) || (X0)
{
CalculateLineAngle = Math.PI / 2;
}
}
else if (Y == 0)
{
if (X0)
{
CalculateLineAngle = 0;
}
}
else
{
;
}
if (Math.Abs(CalculateLineAngle - 0)
http://space.mjtd.com/xwb/images/bgimg/icon_logo.png
该贴已经同步到
页:
[1]