CAD получить все объекты (COM VB Interface Language) на уровне 0

Основное использование функции:


IMxDrawSelectionSet :: Выбрать


Выбор конфигурации установлен. Детали следующим образом:


параметры объяснение

[В] режиме MCAD_McSelect

Строительство набор выбора режима

[В] ВАРИАНТ point1

Конфигурация в выбранное время, необходимое для выбора множества объектов точки

[В] ВАРИАНТ point2

Конфигурация в выбранное время, необходимое для выбора множества объектов точки

[В, по выбору] VARIANT filterData

Фильтр структура набора данных выбора

Вы можете принимать следующие значения

mcSelectionSetWindow = 0, mcSelectionSetCrossing = 1, mcSelectionSetFence = 2, mcSelectionSetPrevious = 3, mcSelectionSetLast = 4, mcSelectionSetAll = 5, выбрать все объекты на фиг поверхность mcSelectionSetWindowPolygon = 6, mcSelectionSetCrossingPolygon = 7, mcSelectionSetUserSelect = 8 mcSelectionImpliedSelectSelect = 9, _I фиг обратный ток объект, который был выбран


Код реализуется следующим образом:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
   '设置过滤条变量
Dim filter As MxDrawResbuf
Set filter = New MxDrawResbuf
' 把图层名 "0" 作为过滤条件
filter.AddString "0" , 8
 
'定义选择集对象
Dim ss As MxDrawSelectionSet
Set ss = New MxDrawSelectionSet
 
' 选择图上的所有实体,过滤条为filter
ss.Select 5, , , , filter
 
' 遍历选择集中的实体
Dim i As Integer
 
i = 0
Do While i < ss.Count
     Dim ent As MxDrawEntity
     Set ent = ss.Item(i)
     MsgBox ent.Layer
     i = i + 1
Loop

рекомендация

отwww.cnblogs.com/yzy0224/p/11004342.html