如何将多线上的点座标按“多线起点-终点顺序”进行排序?
现有1条多线,其上已标注6个点(P1-P6),假设座标如图,怎样使用LISP方法按此多线的方向将P1-P6点的座标按“多线起点-终点顺序”进行排序? 生成表( (P1 (1 2))(P2 (2 3)) (P3 (3 2)) (P4 (5 2)) (P5 (6 1)) (P6 (4 -1)))不胜感激! 按到起点的距离排序就行了。 vlax-curve-getDistAtPoint 借助 (vlax-curve-getParamAtPoint curve-obj point) 即可 谢谢回复,问题解决,明经,你太伟大啦! 汇总:
(1) 借助 (vlax-curve-getParamAtPoint curve-obj point) ,判断某点是否在线上
(2) 借助 (vlax-curve-getDistAtPoint)计算该点至起点的距离
(3) 按到起点的距离排序就行了
特别感谢上面2位兄弟的支持 另外问题,还要请教?____如现有"多线外的1点,如何求出该点至此多线的垂点座标?"
zj12345678 发表于 2011-10-19 14:31 static/image/common/back.gif
另外问题,还要请教?____如现有"多线外的1点,如何求出该点至此多线的垂点座标?"
(vlax-curve-getclosestpointto en pt) 全部测试通过,效率极高,感谢明经,感谢版主
页:
[1]