向量
//判断三点的方向ture表示顺时针,false表示逆时针public boolisClockWise(Point3d spt, Point3d ptTo, Point3d ept)
{
Vector3d spt_ptTo = new Vector3d(spt.X - ptTo.X, spt.Y - ptTo.Y, spt.Z - ptTo.Z);
Vector3d spt_ept = new Vector3d(spt.X - ept.X, spt.Y - ept.Y, spt.Z - ept.Z);
Vector3d vec= spt_ptTo.CrossProduct(spt_ept);
double angle = vec.GetAngleTo(Vector3d.ZAxis);
if (angle != 0) return true;//顺时针
else return false; //逆时针
}
这个函数在画圆弧时十分有用,这也是我今天刚刚学会的,不足之处还请各位多多指教
1,是否测试过三点同线的情况?
2,是否测试过Z坐标不为零或说Z坐标不相等的情况? 谢谢指点
页:
[1]