明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2207|回复: 4

lisp程序怎么识别图纸中的多边形

[复制链接]
发表于 2011-10-23 21:14:10 | 显示全部楼层 |阅读模式
请教一个问题,我在做一个LISP程序,但是碰到一个问题,就是用什么办法让LISP程序识别多边形,比如我画的有四边形,三角形,六边形,梯形,还有不闭合的图形,请高手提供一个思路。非常感谢
发表于 2011-10-24 10:09:52 | 显示全部楼层
1、如果多边形是封闭的复线,可以用组码90的内容进行判断;
2、如果多边形不是封闭的,可以用命令BOUNDARY在域内一点,做出边界,取这个边界的组码90的内容进行判断。
 楼主| 发表于 2011-10-25 07:20:06 | 显示全部楼层
非常感谢ZZXXQQ,大部分问题已经解决,但是不明白版主说的,2、如果多边形不是封闭的,可以用命令BOUNDARY在域内一点,做出边界,取这个边界的组码90的内容进行判断。
我用boundary试验了多次,如果多边形不闭合的话,始终生不成边界。还请解释一下boundary的用法
发表于 2011-10-25 10:21:31 | 显示全部楼层
我写错了,应该是:如果多边形不是由封闭复线组成,但图形是封闭的,可以用boundary......
 楼主| 发表于 2011-10-27 23:29:27 | 显示全部楼层
本帖最后由 wade320 于 2011-10-28 00:03 编辑

非常感谢,还有一个问题,我选择出四边形以后,在这个很多四边形构成的选择集中用VLAX-CURVE-GETAREA,函数过滤掉不需要的四边形,但感觉这个算法太笨,有没有更好的算法,因为这个算法在图纸大时,反应很慢,我也没有想出其他办法去优化,zzxxQQ如果能给出其他的思路,不胜感激,另外还有个问题就是用vlax-curve-getarea函数时,为什么有的机子上保留小数点好几位,有的电脑没有保留小数点位数,也挺苦恼,我没有办法,只好取整了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-7-25 04:52 , Processed in 0.161424 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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