xiabin68
发表于 2015-5-3 22:47:11
重慶崽兒 发表于 2015-4-19 23:07 static/image/common/back.gif
感觉也不合适,如果4、5个点的坐标都一样呢?
一样就是重复点了,还有就是图形是闭合了
zjlszw
发表于 2015-11-18 17:49:36
需要循环嵌套,今天下午刚刚写过类似的程序。思路是从第一个点开始判断,设定一个模糊距离,如果小于指定距离则删除点表坐标,然后是第二点依次循环直到大于模糊距离为止,然后从第二点开始,这个是外循环,前面一个是内循环。
重慶崽兒
发表于 2015-11-19 18:22:59
zjlszw 发表于 2015-11-18 17:49 static/image/common/back.gif
需要循环嵌套,今天下午刚刚写过类似的程序。思路是从第一个点开始判断,设定一个模糊距离,如果小于指定距 ...
3Q
zjlszw
发表于 2015-11-20 12:24:34
客气了。编程我也是初学者,技术不太好,一个程序需要写很久。
重慶崽兒
发表于 2015-11-20 18:13:26
zjlszw 发表于 2015-11-20 12:24 static/image/common/back.gif
客气了。编程我也是初学者,技术不太好,一个程序需要写很久。
(setq lst (mapcar 'cdr (vl-remove-if '(lambda(x) (/= 10 (car x))) en)))
(setq old (last lst))
(setq lst (mapcar '(lambda(x) (if (<= (distance old x) 0.0001) nil (setq old x))) lst))
(setq lst (vl-remove 'nil lst))这个思路我之前有用过,效果还行,但是遇到折返线就不行了还得去除折返线
重慶崽兒
发表于 2015-11-20 18:14:46
重慶崽兒 发表于 2015-11-20 18:13 static/image/common/back.gif
这个思路我之前有用过,效果还行,但是遇到折返线就不行了还得去除折返线
折返线处理的方式是,对比角度
但还是有不完美的地方,总之,现在还没找到完美解决方案