开启左侧

各位大神有什么方法可以取到如图所示xld的一个边

[复制链接]
wx_X6ZrPEkK 发表于 2019-7-23 18:09:50 | 显示全部楼层 |阅读模式
各位大神有什么方法可以取到如图所示xld的一个边,就是图上蓝色笔所示的边。两个dxf已经一起贴出来了,谢谢大神们
002.JPG

dxf.zip

9.76 KB, 下载次数: 4

绝地武士 发表于 2019-7-23 20:22:21 | 显示全部楼层
  1. read_contour_xld_dxf (Contours1,'C:/Users/Admin/Desktop/dxf/0021.dxf', [], [], DxfStatus)
  2. read_contour_xld_dxf (Contours2,'C:/Users/Admin/Desktop/dxf/0022.dxf', [], [], DxfStatus)
  3. intersection_contours_xld (Contours1, Contours2, 'all', Row, Column, IsOverlapping)
复制代码

这样就可以获取重叠部分的交集获取最外面一圈,不过出来的点位顺序需要重新排序下,时间原因就没有写!
最后用排过序的生成轮廓:
  1. gen_contour_polygon_xld (Contour, Row, Column)
复制代码
 楼主| wx_X6ZrPEkK 发表于 2019-7-24 10:33:08 | 显示全部楼层
绝地武士 发表于 2019-7-23 20:22
这样就可以获取重叠部分的交集获取最外面一圈,不过出来的点位顺序需要重新排序下,时间原因就没有写!
最 ...

这个我当时就是不知道怎么重新排序才没用的。。。。。。
我现在是直接遍历两个dxf的点,找相同的。但for循环比较慢,
绝地武士 发表于 2019-7-24 14:25:03 | 显示全部楼层
wx_X6ZrPEkK 发表于 2019-7-24 10:33
这个我当时就是不知道怎么重新排序才没用的。。。。。。
我现在是直接遍历两个dxf的点,找相同的。但for ...

可以用两点坐标超过多少就把后面的滤掉这样就可以了,一般之间都是一个像素变化,不过也是用for循环,还好吧!
mediation 发表于 2019-7-24 14:26:17 | 显示全部楼层
wx_X6ZrPEkK 发表于 2019-7-24 10:33
这个我当时就是不知道怎么重新排序才没用的。。。。。。
我现在是直接遍历两个dxf的点,找相同的。但for ...

可以先把点转化为Region,再转为contour
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表