Словарные записи в графических примитивах

В продолжение статьи Использование словарных записей

Известно, что можно создать пользовательский словарь на документ. Можно создать его и на графический примитив. Но вот что любопытно: если использовать vla-GetExtensionDictionary, то у возвращаемого объекта есть метод vla-AddObject. Теоретически это означает, что можно создать "словарь в словаре".

И в этом "вложенном" словаре можно создавать и удалять записи - то есть работать как с полноценным словарем.

Но! Только до тех пор, пока не будет выполнена команда копирования через буфер обмена; или не будет выполнена попытка скопировать объект через vla-CopyObjects; или не будет выполнен _.wblock. В полученной копии этих "вложенных" словарей не будет: AutoCAD их уничтожает (хотя ошибками с точки зрения _.audit они не являются).

Мораль сей басни такова: не следует использовать методы только потому, что они есть ;)

Похоже, что именованные словари (имею в виду создаваемые лиспом) допустимы только для документа; для графических объектов ситуация иная.

Размещено в AutoCAD, Код LISP · Метки: , ,



Поделитесь своим мнением


Я не робот.