| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Имя блока по его вхождению

Имя блока по его вхождению

Ответ
Поиск в этой теме
Непрочитано 11.10.2007, 21:04 #1
Имя блока по его вхождению
Mischa
 
Москва
Регистрация: 10.10.2007
Сообщений: 23

Доброго времени суток! Подскажите, пожалуйста

For I = 0 To ThisDrawing.ModelSpace.Count - 1
Set Entit = ThisDrawing.ModelSpace.Item(I)

If Entit.ObjectName = "AcDbBlockReference" Then
Set BlockRef = Entit

А как теперь узнать имя блока, вхождение которого присвоено переменной BlockRef?
Просмотров: 3575
 
Непрочитано 11.10.2007, 21:33
#2
fixo

Lisp/VBA/VB.NET Hobbyist
 
Регистрация: 24.03.2005
Славен Град Петров
Сообщений: 367


Это сделать довольно просто,
но мне в принципе не нравится твой
подход. Вместо того чтобы перебирать все объекты
в цикле не проще создать SelectionSet с фильтром?

Код:
[Выделить все]
Dim Entit As AcadEntity
Dim BlockRef As AcadBlockReference
Dim i As Long
For i = 0 To ThisDrawing.ModelSpace.Count - 1
Set Entit = ThisDrawing.ModelSpace.Item(i)
If Entit.ObjectName = "AcDbBlockReference" Then
Set BlockRef = Entit
If BlockRef.IsDynamicBlock Then
Debug.Print BlockRef.EffectiveName
Else
Debug.Print BlockRef.Name
End If
End If
Next
~'J'~
fixo вне форума  
 
Непрочитано 11.10.2007, 22:19
#3
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,853


On Error не забудьте только добавить
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 14.10.2007, 14:57
#4
Mischa


 
Регистрация: 10.10.2007
Москва
Сообщений: 23


Спасибо за советы!

По поводу SelectionSet с фильтром: для вхождения блока
FilterType = 0
FilterData = INSERT

Я правильно понял?
Mischa вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Имя блока по его вхождению

Размещение рекламы