一、选择集过滤时的使用方式如下:

Object 指使用SelectionSet这个方法适用的对象

运用select方法

Select的5种mode选择方式:

1:择全部对象(acselectionsetall)

2:选择上次创建的对象(acselectionsetlast)

3:选择上次选择的对象(acselectionsetprevious)

4:选择矩形窗口内对象(acselectionsetwindow)

5:选择矩形窗口内以及与边界相交的对象(acselectionsetcrossing)

1) object.Select Mode[, Point1][, Point2][, FilterType][, FilterData]

2) object.SelectOnScreen [FilterType][, FilterData]

3) object.SelectAtPoint Point, FilterType, FilterData

FilterType:Variant[变体](整数数组); 仅用于输入;(可选项) 指定使用的过滤器类型的 DXF 组码。

FilterData:Variant[变体](变体数组); 仅用于输入;(可选项) 过滤器的值。

二、DXF群组码共同群组码代码一览表

群码 说明 预设值
-4 过滤群组方式,例如 <AND 、AND>、<OR、OR>、<XOR、XOR>、<NOT、NOT> 单一条件时可省略
-1 图元名称(会随每一个图档开启而有所不同) 不可省略
0 图元类型,例如 “ARC”、 “LINE”、”CIRCLE”… 不可省略
5 处理码 不可省略
6 线型名称(如果线型不为”BYLAYER”,此群码值会出现) BYLAYER
8 图层名称 不可省略
48 线性比例(选择性) 1.0
60 物件可见性, 0=可见, 1=不可见 0
62 颜色编号 (如果线型不为”BYLAYER”,此群群码会出現)当值为0時,即指BYLAYER,如果是负值即指该图层是关闭的(选择性) BYLAYER
67 值为空或0时即指图元在模型空间,如果为1指在图形空间 0

三、过滤群组方式

– FilterType (DXF 群组码) = -4

过滤群组方式 內含项目 描述 运算法则
“<AND” … “AND>” 1 或 多个 所有项目的交集 1+1=1, 1+0=0, 0+1=0, 0+0=0
“<OR” … “OR>” 1 或多个 所有项目的并集 1+1=1, 1+0=1, 0+1=1, 0+0=0
“<XOR” … “XOR>” 2个 两个项目的异或运算 1+1=0, 1+0=1, 0+1=1, 0+0=0
“<NOT” … “NOT>” 1个 不包含此项目的值 NOT(1)=0,NOT(0)=1

四、范例:

1、过滤条件为图元为MTEXT

图元是MTEXT

FilterData MTEXT
FilterType 0

2、过滤条件为图元为CIRCLE或LINE

图元是CIRCLE OR 图元是LINE

FilterData <OR CIRCLE LINE OR>
FilterType -4 0 0 -4

3、过滤条件为图元在DIM 图层(LAYER)中的CIRCLE或LINE

(图元是CIRCLE OR 图元是LINE) AND 图层位于DIM层

FilterData <AND <OR CIRCLE LINE OR> DIM AND>
FilterType -4 -4 0 0 -4 8 -4

4、过滤的条件为图元为CIRCLE或LINE但图层(LAYER)不属于DIM层

(图元是CIRCLE OR 图元是LINE) AND NOT(图层位于DIM层)

FilterData <AND <OR CIRCLE LINE OR> <NOT DIM NOT> AND>
FilterType -4 -4 0 0 -4 -4 8 -4 -4

DXF组码表

组码 说明
-5 APP:persistent reactor 链表
-4 APP:条件运算符(仅用于 ssget)
-3 APP:扩展数据 (XDATA) 标记(固定)
-2 APP:图元名引用 (固定)
-1 APP:图元名。每次打开图形时它都改变,且不被保存。(固定)
0 表示图元类型的文字字符串(固定)
1 图元的主要文字值
2 名称(属性标记、块名称等)
3-4 其他的文字值或名称值
5 图元句柄。最多 16 位十六进制数字的文字字符串(固定)
6 线型名(固定)
7 文字样式名(固定)
8 图层名(固定)
9 DXF:变量名标识符(仅用于 DXF 文件的 HEADER 区域)。
10 主要点。此点为直线或文字图元的起点,圆的圆心等等。

DXF:主要点的 X 值(其后为 Y 和 Z 值的组码 20 和 30) APP:三维点(三个实数构成的表)

11-18 其他点。

DXF:其他点的 X 值(其后为 Y 和 Z 值的组码 21-28 和 31-38) APP:三维点(三个实数构成的表)

20, 30 DXF:主要点的 Y 和 Z 值
21-28, 31-37 DXF:其他点的 Y 和 Z 值
38 DXF:如果非零,则为图元的标高
39 如果非零,则为图元的厚度(固定)
40-48 浮点值(文字高度、比例因子等)
48 线型比例。浮点标量值。缺省值适用于所有图元类型。
49 可重复的浮点值。一个图元中的可变长度表(例如 LTYPE 表中的虚线长度)中可出现多个组码 49。组码 7x 总是在第一个组码 49 前出现,用于指定表的长度。
50-58 角度(在 DXF 文件中单位为度,在 AutoLISP 和 ARX 应用程序中单位为弧度)。
60 表示图元可见性的整数值。不赋值或值为 0 时表示可见;为 1 时表示不可见。
62 颜色代码(固定)
66 “图元跟随”标志(固定)
67 空间,即模型空间或图纸空间(固定)
68 APP:表示视口打开但不可见、未激活或者关闭。
69 APP:视口标识数字。
70-78 整数值,如重复部分的计数器、标志位或模式等。
90-99 32 位整数值
100 子类数据标记(把继承下来的类名当作字符串)。由具体类继承下来的所有对象和图元类都必须有此项。此标记用于分离某个对象中由不同的类定义的数据。它也满足从 ARX 继承下来的每个独立的具体类的 DXF 命名需要(请参见子类标记)。
102 控制字符串,其后为“{<任意名称>”或 “}”。除了字符串必须以 “{” 开始外,它与外部数据组码 1002 类似。其后可跟任意字符串,且此字符串的解释取决于应用程序。另一个可用的控制字符串为 “}”,它标识组的结束。如上所述,除了在执行图形核查操作期间外 AutoCAD 一般不解释这些字符串;它们仅用于应用程序。
105 DIMVAR 符号表条目对象句柄。
210 拉伸方向(固定)。

DXF:拉伸方向的 X 值 APP:三维拉伸方向矢量

220, 230 DXF:拉伸方向的 Y 和 Z 值
280-289 8 位整数值
290-299 布尔标志值
300-309 任意的文字字符串
310-319 任意二进制数据组,与组码 1004 具有相同表示法和限制:最长为 254 个字符的十六进制字符串表示最长为 127 个字节的数据数据组。
320-329 任意对象句柄。句柄值保留原样,在执行 INSERT 和 XREF 操作时它们不被转化。
330-339 软键指针句柄。任意指向同一 DXF 文件或图形中的其他对象的软键指针,在执行 INSERT 和 XREF 操作时被转化。
340-349 硬键指针句柄。任意指向同一 DXF 文件或图形中的其他对象的硬键指针,在执行 INSERT 和 XREF 操作时被转化。
350-359 软键从属句柄。链接到同一 DXF 文件或图形中其他对象的任意软键从属链接,在执行 INSERT 和 XREF 操作时被转化。
360-369 硬键从属句柄。链接到同一 DXF 文件或图形中其他对象的任意硬键从属链接,在执行 INSERT 和 XREF 操作时被转化。
370-379 线宽枚举值 (AcDb::LineWeight)。作为短整数保存并移动。自定义非图元对象可使用全部范围组码,但图元类只能在其描述中使用371-379的DXF组码,因为AutoCAD和AutoLISP都总是采用370组码作为图元的线宽。在这里370组码就象其它的“公用”图元字段一样。
380-389 打印样式名类型枚举(AcDb::PlotStyleNameType)。作为短整数保存并移动。自定义非图元对象可使用全部范围组码,但图元类只能在其描述中使用381-389的DXF组码,其原因与上面的线宽范围相同。
390-399 描述打印样式名对象的句柄值,本质上是硬指针,但它有一不同的范围以使向后兼容能容易地处理。作对象的ID(在DXF文件中为句柄)和在AutoLISP中为特殊的类型保存并移动。自定义非图元对象可使用全部范围组码,但图元类只能在其描述中使用391-399的DXF组码,其原因与上面的线宽范围相同。
400-409 16位整数
410-419 字符串
999 DXF:999 组码表示其后为注释字符串行。DXFOUT 不在 DXF 输出文件中包括此组;DXFIN 能识别词组码,但忽略其后的注释。通过 999 组码,用户可以在所编辑的 DXF 文件中包括注释。
1000 扩展数据中的 ASCII 字符串(最长 255 个字节)。
1001 扩展数据的已注册应用程序名(ASCII 字符串,最长 31 个字节)。
1002 扩展数据控制字符串(”{” 或 “}”)。
1003 扩展数据图层名。
1004 扩展数据中的字节数据组(最长 127 字节)。
1005 扩展数据中的图元句柄。文字字符串,最多 16 位十六进制数字。
1010 扩展数据中的点

DXF:X 值(其后跟组码 1020 和 1030) APP:三维点

1020, 1030 DXF:点的 Y 和 Z 值
1011 扩展数据中的三维世界空间位置

DXF:X 值(其后跟组码 1021 和 1031):三维点

1021, 1031 DXF:世界空间位置的 Y 和 Z 值。
1012 扩展数据中的三维世界空间位移

DXF:X 值(其后跟组码 1022 和 1032):三维矢量

1022, 1032 DXF:世界空间位移的 Y 和 Z 值
1013 扩展数据中的三维世界空间方向

DXF:X 值(其后跟组码 1022 和 1032) APP:三维矢量

1023, 1033 DXF:世界空间方向的 Y 和 Z 值
1040 扩展数据浮点值。
1041 扩展数据距离值。
1042 扩展数据比例因子。
1070 扩展数据 16 位符号整数。
1071 扩展数据 32 位符号整数。

来源:互联网

本内容为作者个人观点,不代表学测量网站立场.
如对本文有异议或投诉,联系bd@xueceliang.cn

标签:

作者简介

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注