怎么判断两多段线相交?接触不算,叠合不算,并标出相交处。
本帖最后由 soly2006 于 2013-6-7 13:20 编辑如图,1、2种是真正的相交,3、4只是搭在一起,怎么能够判断出多段线如1、2 类似相交?
并在相交处标出位置?
vla-intersectwith连3、4种情况也包括在内,怎么剔除掉?
本帖最后由 soly2006 于 2013-8-26 20:41 编辑
高人指点一下啊,帮顶顶也不会怀孕。 我帮顶..我也想找 不会....找了好久也找不到... 倒是可以转到ArcGis里面做拓扑 第一和第二两种情况应该都可以通过是否有节点在另一多线段内进行判断 本帖最后由 xyp1964 于 2014-2-2 10:40 编辑
;; 怎么判断两多段线相交?接触不算,叠合不算,并标出相交处。http://bbs.mjtd.com/thread-101614-1-1.html;; 需要e派工具箱(XCAD)的支持:http://yunpan.cn/QXQKsW9gAPmpF 2014-02-01
(defun c:test1500 ()
(setq s1 (car (entsel "\n选择曲线1: "))
s2 (car (entsel "\n选择曲线2: "))
)
(if (setq ptn (xyp-get-Inters s1 s2 0)
ptn (mapcar '(lambda (x) (xyp-3d2d x)) ptn)
)
(progn
(setq ptn1 (xyp-get-Vertexs s1 0)
ptn2 (xyp-get-Vertexs s2 0)
mode t
)
(foreach pt ptn
(if (or (member pt ptn1) (member pt ptn2))
(setq mode nil)
)
)
(if mode
(mapcar '(lambda (x) (xyp-circle x 100)) ptn)
(progn
(alert "不相交")
(if (> (length ptn) 1)
(xyp-Pline ptn nil)
)
)
)
)
(alert "不相交")
)
(princ)
) 我写过判断曲线是否相交的,但是标识出相交点的没写,你可以修改下。 xyp1964 发表于 2014-2-1 19:51
实现原理是什么?能说说看,让小弟学习下。 本帖最后由 soly2006 于 2014-2-9 11:17 编辑
xyp1964 发表于 2014-2-1 19:51 static/image/common/back.gif
如果交点在两线的各自节点处,能出来么? xyp1964 发表于 2014-2-1 19:51 static/image/common/back.gif
院长厉害,不过看不懂啊,怎么搞的?