如何快速定位到多段线的某一个长度位置
来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/08/16 03:06:06
如何快速定位到多段线的某一个长度位置
您好,我遇到了一个很棘手的问题,您可以不可以帮一下我,就是比如 有一条688.5米弯弯曲曲的多段线,注意是多段线不是直线,如何才能按照指定的起点快速定位到317.6米这个位置,并且能把该位置的坐标标注出来~ 您可以不可以教一下我~~拜托啦~~谢谢~~
您好,我遇到了一个很棘手的问题,您可以不可以帮一下我,就是比如 有一条688.5米弯弯曲曲的多段线,注意是多段线不是直线,如何才能按照指定的起点快速定位到317.6米这个位置,并且能把该位置的坐标标注出来~ 您可以不可以教一下我~~拜托啦~~谢谢~~
![如何快速定位到多段线的某一个长度位置](/uploads/image/z/19304905-49-5.jpg?t=%E5%A6%82%E4%BD%95%E5%BF%AB%E9%80%9F%E5%AE%9A%E4%BD%8D%E5%88%B0%E5%A4%9A%E6%AE%B5%E7%BA%BF%E7%9A%84%E6%9F%90%E4%B8%80%E4%B8%AA%E9%95%BF%E5%BA%A6%E4%BD%8D%E7%BD%AE)
要用lisp,定位很简单,就以下的函数:
(if (null vlax-dump-object) (vl-load-com) ) ;;加载vlax扩展函数ent是(多段线图元)
(Setq ob (Vlax-Ename->Vla-Object ent) ;;转换为VLA对象
st (Vlax-curve-getStartPoint ob) ;;取得曲线开始点
en (Vlax-curve-getEndPoint ob);;取得曲线结束点
L1 (Vlax-curve-getDistAtpoint ob en);;取得曲线长度
pm (vlax-curve-getPointAtDist ob (* L1 0.5));;取得曲线中点根据长度定位点
)
以上函数用到里面即可.定位点要确认这个多段线不是封闭的线,封闭的线不能够定位.
再问: 能不能在定位之后 在该点处标注坐标?
(if (null vlax-dump-object) (vl-load-com) ) ;;加载vlax扩展函数ent是(多段线图元)
(Setq ob (Vlax-Ename->Vla-Object ent) ;;转换为VLA对象
st (Vlax-curve-getStartPoint ob) ;;取得曲线开始点
en (Vlax-curve-getEndPoint ob);;取得曲线结束点
L1 (Vlax-curve-getDistAtpoint ob en);;取得曲线长度
pm (vlax-curve-getPointAtDist ob (* L1 0.5));;取得曲线中点根据长度定位点
)
以上函数用到里面即可.定位点要确认这个多段线不是封闭的线,封闭的线不能够定位.
再问: 能不能在定位之后 在该点处标注坐标?