Тема: Как для атрибута получить соответствующий AttributeDefinition
Хочу сделать свой диалог редактирования атрибутов блока (BlockReference'а).
Проблема в том, что в AttributeDefinition есть prompt, а в атрибуте его нет. А связь не могу найти :(
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → ObjectARX → Как для атрибута получить соответствующий AttributeDefinition
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Хочу сделать свой диалог редактирования атрибутов блока (BlockReference'а).
Проблема в том, что в AttributeDefinition есть prompt, а в атрибуте его нет. А связь не могу найти :(
промт можно взять из AcDbAttributeDefinition вставленного блока(AcDbBlockTableRecord) которому соответствует данный AcDbAttribute
> Ведмедь
Связи прямой нет. Нужно:
1) Пробежаться итератором по всем неконстантным определяениям атрибута (AcDbAttributeDefinition) в блоке (AcDbBlockTableRecord) и создать из их id (AcDbObjectId) массив (AcDbObjectIdArray) ids1.
2) Пробежаться по всем аттрибутам (AcDbAttribute) в вставленном блоке (AcDbBlockReference) и создать из их id (AcDbObjectId) массив (AcDbObjectIdArray) ids2.
3) Каждому элементу из ids1 есть соответствие в ids2 (по номеру элемента). Так что найти prompt (и не только) не будет представлять проблемы.
> Александр Ривилис
То есть соответствие просто по порядковому номеру? Ок, попробую. Спасибо.
> Ведмедь
То есть соответствие просто по порядковому номеру?
Именно. Но не забудь пропустить константные определения атрибутов - иначе соответствия не будет.
А разве не проще соответствующее определение атрибута находить по тегу атрибута?
> Вячеслав
Проще, но неправильно. В блоке может быть несколько атрибутов с одинаковым тэгом. Т.е. если ты сам создаешь блок и все определения атрибутов имеют разные теги - то все будет в порядке. Но в общем случае это не так.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → ObjectARX → Как для атрибута получить соответствующий AttributeDefinition
Форум работает на PunBB, при поддержке Informer Technologies, Inc