|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Проблема с vlax-put-property - ошибка несовпадения типов
Регистрация: 11.04.2008
Сообщений: 16
|
||
Просмотров: 810
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
Я б проверял последовательно:
1. my_Obj - это вообще что? Указатель на описание блока? 2. доступность allowedvalues на запись. Может, оно вообще ReadOnly И что по этому поводу говорит справка VBA?
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 11.04.2008
Сообщений: 16
|
Цитата:
В Гугле я никакой информации не нашел. Что такое справка VBA? |
|||
![]() |
|
||||
Регистрация: 11.04.2008
Сообщений: 16
|
Немного разобрался.
Тип объекта #<VLA-OBJECT IAcadDynamicBlockReferenceProperty 0000023822d5d508> Да, vlax-dump-Object показывает, что ридонли. Подозреваю, что ссылка на конкретный экземпляр объекта в чертеже. Я так понимаю, что нужно как-то дотянуться до общего описания блока в базе данных, и менять там. Только вот как? |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
Насколько я знаю, никакой официальной документации по поводу создания и редактирования описаний дин.блоков не существует. Вхождения - добро пожаловать.
А так, если выполняется переименование видимости, я б делал, наверное, по-другому. Получить описание блока, получить список видимостей, для каждого вхождения создать списки / точечные пары типа "ename (или handle, что больше нравится)"-"Порядок активной видимости в списке видимостей", запомнить все это богатство в глобальной переменной, зайти в редактор блока, руками поменять названия видимостей, выйти из редактора блока, вызвать команду восстановления: опять же для того же блока получаем список видимостей, проходим по списку, для каждого ename-handle-vla-указателя устанавливаем тот номер видимости, который был сохранен. Решение геморройное и не сильно красивое, но на бОльшее меня сейчас не хватит.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 18.12.2010
Сообщений: 5,107
|
Цитата:
|
|||
![]() |
|
||||
Регистрация: 11.04.2008
Сообщений: 16
|
Цитата:
А вы не в курсе, через API есть возможность описания дин.блоков редактировать? Я в своё время что-то через Delphi делал, вроде там шире возможности, насколько я помню. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404
|
И я сомневаюсь, что через СОМ можно подобные вещи делать.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 11.04.2008
Сообщений: 16
|
Кстати, нашел интересный способ решения задачи вручную. Сохранить в DXF, открыть в блокноте, и заменой переименовать нужные названия. Они сразу переименуются и в описании каждого блока, и в списке видимости, поэтому ничего не слетит.
|
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Возможные потери данных Property Sets в Civil, Architecture, MEP | АлексЮстасу | Вертикальные решения на базе AutoCAD | 9 | 21.01.2020 03:07 |
Как выполнить масштабирование с одновременным масштабированием МК типов линий? Тоже самое в блоке? | МишаИнженер | AutoCAD | 14 | 29.11.2019 19:47 |
LISP. Ошибка, слишком много аргументов. | SNIIP | LISP | 4 | 03.04.2015 11:02 |
Ошибка в расчетных данных SCAD. В чем проблема? | vanyaromashkin | SCAD | 6 | 13.05.2014 10:04 |
Ошибка загрузки рользовательских типов линий (lin) в AutoCad | s-e-r-g-e | AutoCAD | 12 | 09.12.2007 12:57 |