soly2006 发表于 2014-2-9 10:41:46

荒野孤行 发表于 2014-2-2 10:01 static/image/common/back.gif
我写过判断曲线是否相交的,但是标识出相交点的没写,你可以修改下。

能否放出源码学习一下,谢谢。

soly2006 发表于 2014-2-10 09:31:51

xyp1964 发表于 2014-2-1 19:51 static/image/common/back.gif


第二种情况好像未能考虑,相交处是节点的情况。

cable2004 发表于 2014-2-10 12:44:51

本帖最后由 cable2004 于 2014-2-10 22:38 编辑

soly2006 发表于 2014-2-10 14:14:39

cable2004 发表于 2014-2-10 12:44 static/image/common/back.gif


麻烦测试一下第二种情况。能放源码吗?学习一下。

cable2004 发表于 2014-2-10 22:44:58

本帖最后由 cable2004 于 2014-2-10 23:03 编辑


[*]



图片已更新,工具你试试吧!就用到下面一个函数,再求交点。

;;;******************************************************************************
[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif;;; No.51判断点是否在多边形内(狂刀程序)                                       

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif;;;xPt是要判断的点坐标(x y z ), Points是多边形顶点列表((x1 y1 z1) (x2 y2 z2)...)

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif;;;******************************************************************************

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif(defun isPtinPM(xPt Points)

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif(equal

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif    PI

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif    (abs

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif      (apply

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif'+

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif(mapcar'(lambda (x y) (rem (- (angle xPt x) (angle xPt y)) PI))

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif    (reverse (cdr (reverse (cons (last Points) Points))))

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif    Points

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif)

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif      )

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif    )

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif    1e-6

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif)          ;end_equal

[*]http://bbs.mjtd.com/source/plugin/imc_colorcode/images/jssc_none.gif)          ;end_defun



cable2004 发表于 2014-2-11 07:05:11

又是一个搞排料程序呀!

自贡黄明儒 发表于 2014-2-11 10:45:58

soly2006 发表于 2014-2-10 14:14 static/image/common/back.gif
麻烦测试一下第二种情况。能放源码吗?学习一下。

窃以为,第二种情况,如果某子段的两个端点正好是交点,那么这个子段的中点在另一条曲上线,证明是搭接的。

soly2006 发表于 2014-2-11 12:56:42

自贡黄明儒 发表于 2014-2-11 10:45 static/image/common/back.gif
窃以为,第二种情况,如果某子段的两个端点正好是交点,那么这个子段的中点在另一条曲上线,证明是搭接的 ...


搭接好判断,穿过怎么处理?

soly2006 发表于 2014-2-11 13:03:02

cable2004 发表于 2014-2-10 22:44 static/image/common/back.gif
[*]





运行后这样结果?


cable2004 发表于 2014-2-11 15:21:48

你下载我的程序试试,应该可以判断!
页: 1 [2] 3
查看完整版本: 怎么判断两多段线相交?接触不算,叠合不算,并标出相交处。