明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1679|回复: 5

请问怎么样可以打开图中的除了尺寸标注的所有块

[复制链接]
发表于 2004-5-26 11:20:00 | 显示全部楼层 |阅读模式
请问怎么样可以打开图中的除了尺寸标注的所有块。
发表于 2004-5-26 11:22:00 | 显示全部楼层
用过滤选择,把尺寸过滤掉。然后再炸开。
 楼主| 发表于 2004-5-26 11:25:00 | 显示全部楼层
谢谢!有没有现成的程序啊?以前好象有个炸开所有块的主题,怎么找不到了。
 楼主| 发表于 2004-5-26 11:43:00 | 显示全部楼层
还有我能不能先判断得到的对象是一个尺寸对象,然后再决定是否要炸开?如果能,怎么样判断得到 的对象是尺寸对象?
发表于 2004-5-26 20:39:00 | 显示全部楼层

语法

(ssget [mode] [pt1 [pt2]] [pt-list] [filter-list])

功能及参数

我们可使用 ssget 函数来获取一组选择集。mode 参数是一个字符串, 可指定图元选择形式以供操作。如, WWPCCPLPI F , 这也就是 AutoCAD 中的 WindowWPolygonCrossingCPolygonLastPreviouImplied Fence 等图元选择模式。另一个可以用的 mode 参数就是“X, 它的意思是要选择全部的数据库。pt1 pt2 参数是代表点的表, 是使用来设定选择图形时所要使用的点。如果没有设定 mode 参数, 而只设定了一点的参数, 那就表示要以单独一点的方法来选取图元。这个函数会忽略OSNAP命令的目前设定(表示没有图形捕捉), 除非您在函数中特别要求它。filter-list 参数将可以配合任何模式使用, 这将可以允许您在图元选择的过程中得到良好的控制。如果省略了所有的参数, ssget 将提示用户经过 AutoCAD Select object:结构, 以交互的方式来建立选择集。选择集可以包含图纸空间和模型空间中的图元, 但是当这个选择集被使用于一个操作中时, 这个空间中且前没有作用的图元将会被过滤。对于所有 AutoCAD 的命令都是如此。如果您发展了自己的 AutoLISP ADS 应用程序, 我们建议您以相同的方式来过滤选择集。ssget 所得到的选择集仅包含主图元, 而不包括属性或多重折线的顶点。


范例

(ssget)

要求您使用一般的图形选取方法

(ssget P)

选择您最近所选取的图形

(ssget L)

选择您最后加入数据库内的图元

(ssget I)

建立在 Implied 选择模式下所选取图元的选择集。(PICKFIRST 有效时)

(ssget '(2 2))

选择经过 2, 2 这点的图元(ssget “W'(0 0) '(5 5))│选择在 0, 0 5, 5 这个窗口内的图元

(ssget w'(0 0)'(5 5))

选择在0,05,5这个视窗内的图素

(ssget C'(0 0) '(1 1))

选择凡是接触或在0, 01, 1这个窗口内的图元

(ssget X)

建立在数据库中所有图元的选择集

(ssget Xfilter-list)

选择符合 filter-list 条件的图元

(ssget filter-list)

要求用户作一般的图元选择, 但只有符合 filterlist 条件的图元可加入选择组

(ssget Pfilter-list)

建立符合 filter-list 条件且最近被选取图元的选择组

下面的 ssget 范例将需要先给定点表:(setq pt_list '((1 1)(3 1)(5 2)(2 4)))

(ssget WPpt_list)

建立包含在经过 pt_list所定义的多边形中所有图元的选择集

(ssget CPpt_list)

建立包含与接触到经过pt_list 所定义的多边形中所有图元的选择集

(ssget “Fpt_list)

建立包含在经过 pt_list所定义的交叉框中所有图元的选择集。

(ssget “WPpt_list filter-list)

建立包含在符合 filter- list pt_list 所定义的多边形中所有图元的选择集

ssget 只有在没有参数的情况下使用时, 被选取到的图形才会以高亮度来显示。关键在这个图元是如何被选取到的, 选择组中并不保留这种数据 (但是 entsel 却会显示这种数据, 请见下面所述)。因选择集占用不少 AutoCAD 临时的文件空间, 因此 LISP 不会允许您一次开启 128 个以上的选择集。一旦超过限制数, AutoCAD 会拒绝再建立更多的选择集, 同时所有 ssget 调用均会返回 nil。您若想要将不需要的选择集变量关闭, 可以将它设定为 nil。当您在 AutoLISP 做完选择集的设定后, 您就可以使用Previous 来回应 AutoCAD 中任何的 Select objects:的提示。AutoCAD 将会选取在选择集变量中所有的图元。

● 选择集过滤器

选择集过滤器表可以配合任何的选择模式使用。filterlist 是一个联合表, 类似经过 entget 返回的表形式。filter-list 将指定要检查的适当图元以及什么值会符合。

使用这个结构, 您可以在指定形式、指定图层或指定颜色下得到一个包含所有图元的选择集。下述的范例将返回仅由蓝线所组成的选择集(使用 Implied 选取模式, 且 PICKFIRST有效时):

(ssget “I” '((0 . “LINE”) (62 . 5)))

先使用 ssget 过滤器, 您将可以为特殊应用程序选择包含扩展图元数据的所有图元。这可经过使-3 群组码来完成:

(ssget “P”'((0 . “CIRCLE”) (-3 (“APPNAME”))))

将为应用程序 “APPNAME” 选择所有包含 Xdata 的圆。

● 相关的测试

除非有特别的指定, 在 filter-list 中对每一个项目的“equal” 测试将是在后台进行的。对数字群组 (整型数, 实型数, 点以及向量) 而言, 您可以包含特殊的-4 群组码来指定其他相关的操作。-4 群组是一个包含在过滤表中下一组的测试操作字符串, 例如:

(ssget “X”'((0 . “CIRCLE”) (-4 .“>=”) (40 . 2.0)))

这将选择所有半径大于或等于 2.0 的圆。

下表将列出可能的操作:

*

通用字符(表示所有的意思)

=

等于

! =

/=

<>

不等于

<

小于

<=

小于等于

>

大于

>=

大于等于

&

Bitwise AND (仅用于整型数群组)

&=

Bitwise marked equals (仅用于整型数群组)

这些关系操作的使用将视您测试的群组种类而定:

对实型数与整型数值两群组而言, 除了bitwise操作(“&”和“&=”) 以外的所有关系操作都有效。

对整型数值群组而言, bitwise 操作(“&”和“&=”) 都是有效的。如果 ((integer_group & filter) /= 0), 则bitwise 操作“&”将为真, 意即如果有任何的位设定在记号内, 则也将设定在整型数群组中。如果((integer_group & filter) = filter), 则 bitwise 操作“&=”将为真, 意即如果有任何的位设定在记号内, 则也将设定在 integer_group 中。其他群组也许设定在 integer_group 中, 但并不检查。

对点群组而言, X, Y, Z的测试应该合并至一单一字符串(以每一操作间以逗号分开的方式。如, “>, >, *”)。如果一操作被从字符串中忽略 (如,“=, <>”, 少了 Z 测试), “*” 操作将被假设。

方位向量(群组形式210)将可以仅以“*”, “=” 与“! =”(或另两个不等于操作)来比较。

您不能使用配合字符串群组的关系操作。请以万用字符取代。

● 逻辑群组的过滤器测试

在上面所描述的关系操作属于二进制位。您也可以经过建立嵌套的布尔表达式(如下表的群组操作)来测试群组。群组操作将由-4 群组所指定, 就像关系运算符。它们是成对的, 过滤器表左右括号的平衡也一样, 否则 ssget 的调用将失效。这些可被包含在运算域中的运算符的数量将视下述表中的操作而定:

起始操作

中间运算域

结束操作

<AND

一个或一个以上的运算域

AND>

<OR

一个或一个以上的运算域

OR>

<XOR

两个运算域

XOR>

<NOT

一个运算域

NOT>

配合群组操作, 一运算域是一个图元项群组。在一个图元项群组之后的将是一个关系操作或是经过这些操作所建立的嵌套表达式。

在一个过滤器表中的一个群组操作范例将如下所示:

(ssget “X” '((-4 .“<OR”)

(-4 . “<AND”)

(0 . “CIRCLE”)

(40 . 1.0)

(-4 .“AND>”)

(-4 .“<AND”)

(0 .“LINE”)

(8 .“ABC”)

(-4 .AND>)

(-4 .“OR>”))

)

如此将选择半径为 1.0 的圆, 与在“ABC”图层上的所有线。群组操作的大小写都是一样的, 所以您也可以使用小写字符, 如:“ and”,“<or”,“xor>”等。

 楼主| 发表于 2004-5-27 08:39:00 | 显示全部楼层
谢谢!!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-28 07:47 , Processed in 0.185406 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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