|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
03.03.2022, 11:18 | #1 | |
Что такое массив объектов чертежа AutoCAD на VBA?
Регистрация: 14.12.2008
Сообщений: 1,079
|
||
Просмотров: 3542
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,855
|
Анонимный блок с навешанными на него реакторами / событиями.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,855
|
А на фига это? Определить, выбран анонимный блок, вхождение дин.блока или дин. массива не сложно (как пример на лиспе: https://autolisp.ru/2021/02/11/primi...tivnyj-massiv/ ). А там уже найти описание блока и посчитать количество его примитивов - вопрос на полстроки кода.
P.S. На VBA не пишу и писать не собираюсь.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 14.12.2008
Сообщений: 1,079
|
Мне надо посчитать число блоков-символов хомутов, стягивающих две сетки. Некоторые блоки символов-хомутов я начертил массивами вдоль длинных сторон сетки. В некоторых местах расставил эти блоки поштучно. У меня есть программа подсчета числа блоков в выделенных объектах:
Код:
Как получить число элементов в массиве на VBA? В качестве примера: посчитайте программой число блоков "ХомутСетки_План" для сеток С-1, 2, 3 в прикрепленном файле Последний раз редактировалось МишаИнженер, 03.03.2022 в 13:22. |
|||
|
||||
Регистрация: 14.12.2008
Сообщений: 1,079
|
Я в названии темы в сообщении №1 показал на картинке свойства массива в VBA. Это простой BlockReference - ссылка на блок. По сути блок или ссылка. Конечно можно зайти в блок по этой ссылке и поискать там блоки "ХомутСетки_План". Эта идея хорошая! Попробую сегодня сделать. Спасибо!
|
|||
|
||||
КЖ; C# Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,589
|
|
|||
|
||||
Проектировщик электрических сетей Регистрация: 17.01.2014
Пенза
Сообщений: 176
|
Цитата:
А так конечно, лучше программно зайти внутрь и все посчитать внутри. К блокам я обращался, а к массивам нет. Если это одно и тоже то круто |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,855
|
Проверить наличие определенного словаря в описании блока.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
__________________
Мастерская СПДС |
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,855
|
Нет, это не MINSERT
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 14.12.2008
Сообщений: 1,079
|
Попробовал 2 способа:
1) Прочитать содержимое блока-массива с названием "U2388" 2) Взорвать ссылку на блок-массив и проверить полученные объекты И при обоих способах в блоке-массиве содержатся блоки с именем "U37" вместо "ХомутСетки_План" Так что найти блоки-хомуты в блоках-массивах не получается обоими способами Однако если кнопкой взорвать массив, то в чертеже появляются блоки не U37 а нормальные блоки "ХомутСетки_План". Откуда AutoCAD знает что блок U37 это "ХомутСетки_План"? Можно ли самому проверить это соответствие в программе VBA? |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,855
|
Разницу между Name и EffectiveName надо объяснять?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,855
|
В поисковиках забанили?
https://www.google.com/search?channe...+effectivename https://help.autodesk.com/view/ACD/2...5-B9D88011DEB5 И поставь себе оффлайн-справку
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Tekla 2018i. Как получить массив всех объектов чертежа? | smolskiy-pmi | Tekla | 1 | 01.03.2019 07:46 |
Autocad 2014 + СПДС-модуль проблема с заполнением таблиц и выделением объектов | zRaFiNaDz | Прочее ПО от Autodesk | 2 | 27.10.2017 16:33 |
Почему при открытом чертежа открывается еще один AutoCad? | 1Sasha1 | AutoCAD | 2 | 18.04.2012 11:30 |
При заливке объектов в AutoCAD 2011 виснет система | nikofleks | AutoCAD | 2 | 06.07.2010 11:28 |
Внедрение / связь инородных объектов с AutoCAD | Reka | AutoCAD | 8 | 07.12.2009 16:55 |