Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: pucher от 20-08-2018, 21:24:51

Название: Добраться до свойств параметра динамического блока?
Отправлено: pucher от 20-08-2018, 21:24:51
Здравствуйте. Есть динамический блок с доступными двумя ручками, за которые его можно растягивать. Растяжение происходит при помощи полярного параметра. У этого параметра среди свойств есть координаты его начала и конца. Как программно их получить? Блок видоизменять возможности нет. Спасибо.

(https://s8.postimg.cc/d2hc29gz5/polar.jpg) (https://postimg.cc/image/d2hc29gz5/)
Название: Re: Добраться до свойств параметра динамического блока?
Отправлено: avc от 20-08-2018, 21:49:10
У BlockReference есть DynamicBlockReferencePropertyCollection. В ней все параметры
Название: Re: Добраться до свойств параметра динамического блока?
Отправлено: pucher от 20-08-2018, 22:37:32
У BlockReference есть DynamicBlockReferencePropertyCollection. В ней все параметры
Код - C# [Выбрать]
  1.                     BlockReference block = (BlockReference)entity;
  2.  
  3.                     foreach (DynamicBlockReferenceProperty property in block.DynamicBlockReferencePropertyCollection)
  4.                     {
  5.                         if (property.PropertyName == "нужное мне")
  6.                         {
  7.  
  8.                         }
  9.                     }
  10.  
Вроде бы до нужного параметра я добираюсь. Как из него извлечь необходимые координаты?
Название: Re: Добраться до свойств параметра динамического блока?
Отправлено: Александр Ривилис от 21-08-2018, 05:41:23
Вроде бы до нужного параметра я добираюсь. Как из него извлечь необходимые координаты?
Публичного API для этого нет.
Название: Re: Добраться до свойств параметра динамического блока?
Отправлено: Владимир Шу от 21-08-2018, 07:40:56
Публичного API может и нет, но кто Вам мешает пометить каким бы то ни было образом линию, которую растягиваете (xdata или просто цветом) и смотреть свойства этой линии уже внутри анонимного блока.
Ссылка на видео: https://youtu.be/vue0OmM3zAE (https://youtu.be/vue0OmM3zAE)