600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > C#CAD二次开发学习: 多段线Polyline中的GetParameterAtPoint的2点总结

C#CAD二次开发学习: 多段线Polyline中的GetParameterAtPoint的2点总结

时间:2019-10-03 21:50:22

相关推荐

C#CAD二次开发学习: 多段线Polyline中的GetParameterAtPoint的2点总结

本人编程小白,本文对实际操作中自己遇见一些问题做些整理,欢迎指正。

1. 首先关于Polyline中有很多方法有此单词Parameter,翻译为参数,却不知其真实含义,经过测试了解后说明如下:

以方法GetParameterAtPoint为例,获取指定点的参数,其意为该点到该段线所占的比例。

如下图,左边是起点,多段线共3段,在顶点处分别为0,1,2,3

2. 关于方法GetParameterAtPoint(pt),因为指定的点pt是通过其他计算得来,所以实际使用中经常莫名出错,猜测可能是点并不在线上,可能有微小误差。尝试采用GetClosestPointTo方法先获取其最近的在线上的点,目前初步测试可行。如下

public static double GetPolParAtPt(this Polyline pol,Point3d pt)

{

//对多义线和指定点,返回其参数值

//官方函数实际使用中经常莫名出错,考虑可能因为点不在线上造成此问题

//所以尝试此方法解决

double mypar = new double();

Point3d pttenm = pol.GetClosestPointTo(pt,false);

mypar = pol.GetParameterAtPoint(pttenm);

return mypar;

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。