利用AutoLISP管理图形数据库共23页.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.1选择集的处理 所谓选择集是指图形中选定的部分图元或所有图 元的集合。 Auto lisp提供了选择以下六种有关选 择集的处理函数 1) ssget-创建选择集 2)ssad---把图元加到选择集中 从选择集中删除图元 4) length-测定选择集中的图元数 5) shame--从选择集中获取图元名 6) ssmemb--测试图元是否为选择集成员 511创建选择集 调用格式1:(sget[方式[点1[点2])有如下形式 1)( ssget)不带任何参数,请求进行一般图元选择 2)( ssget(2035)-选择通过点“20,35”的图元。 3)( ssgetL)-选择最新加入数据库的图元 ( ssget“P)--选择前一次已选择过的图元 5)( ssgetw(0)‘(55)-选择窗口内的图元 6)( ssgetc(0)(55)-选择窗口涉及的图元 7)( ssget“wp[点1[点2].)-多边形窗口方式选择 8)( ssget“cp”[点1[点2].)--多边形窗叉方式选择 9)( ssget“F”[点们[点2].)--折线方式选择 10)( ssget“×)--选择全部图元 调用格式2:( ssget X[过滤表] 例如: ( ssgetx”(O.“C|RCLE))-选择所有的圆。 ( ssget“x”(8.“3)--选择层3上的所有图元 ( ssget“x”(0.“ CIRCLE”)(8.3)(62.1) 选择层3上红颜色的圆。 说明 1)用ssgt函数只能选择主图元,而不能选择子图元。 2)选择集可以保存于 AutoLISP变量中。如 ( setq s1( ssget“×”(0.LNE)(8.“3”) 3)选择集中的图元是唯一的。 4)当前图形中建立的选择集数量不能多于128个,如果 超过这个极限,则ssge函数将返回nl 过滤DXF码 组码意义 数据类型 应用 0 图元类型 字符串 (0.“ CIRCLE) 插入块名 字符串 (2.“ BLOCK) 3尺寸图元方式字符串 3.“ TOLERANCE) 线形名 字符串 6.“ CONTINUOUS”) 字型名 字符串 (7.“ STANDARD”) 层名 字符串 (8.“ BLOCK) 38 标高 实 (38.5.0) 39 厚度 实型 (39.8.0) 颜色号 整型 (62.1) 构造选择集举例: ( setq a1( ssget(0.“TEXT);选择文本加入选择集 setq a2(ssget ((0. LINE ) 选择线图元加入选择集 ( setq a3( ssget“L(.“C|RCLE));选择最近画的一个圆 ( setq a4( ssgetP”(8.“1);选择前一个选择集中1层上 的图元 ( setq a5( ssget(62·3);选择绿色图元加入选择集 ( setq a6(sget“x(0.“ CIRCLE)(8.“2)(62.1) 选择2层上红色圆加入选择集 1)通配符模式 过滤器序列中指定的符号名称可包含通配符模式,常用 的通配符如 匹配任何单个字符 匹配任何单个字母 # 匹配任何单个数字 匹配除字母和数字之外的任何单个字符 匹配任何字符串,包括null串 匹配连字符范围内的字符,如[1-5] 通配符可单独使用,也可组合使用,其中最常用的是 和“?”。例如: setq s( ssget“X (8.“A*”));表示层 名第一个子母为A的所有层均被加入选择集。 (2)关系测试 等于 不等于 小于 大于 小于等于 大于等于 恒为真 *4 位与 位屏蔽 如:( setq s( ssget“X CIRCLE”)( 40.20.0));所有半径大于20的圆加入选择集。 (3)逻辑分组 通过应用逻辑分组运算符,可以创建更为复杂的多层嵌 套关系测试。 逻辑分组运算符如下: KAND AND 与运算,测试一个或多个DXF组 KOR OR 或运算,测试一个或多个DXF组 KXOR XOR 异或运算,测试两个DXF组 KNOT NOT 非运算,测试一个DXF组 例如: ( setq s( ssget“X ((-4.“OR”)(8 (8 )(-4 )) 5.12操作选择集 1)(ssad[图元名][选择集]);向选择集中加入图元 建立空集—( setq sl(ssad) 建立只有一个图元的选择集 ( setq s2( sadd[图元名]) 2)( ssdel[图元名][选择集]);从选择集

文档评论(0)

kefuxing + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档