Имя оригинального имени динамического блока

Автор Тема: Имя оригинального имени динамического блока  (Прочитано 2707 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн valtur1983Автор темы

  • ADN OPEN
  • Сообщений: 46
  • Карма: 2
Доброго дня!

Вставляю в чертеж элементы из другого чертежа, при вставке динамических блоков им присваивается имя "*U", подскажите как добраться до оригинального имени, чтобы подсчитать кол-во вставок нужных блоков

Отмечено как Решение valtur1983 21-11-2021, 18:11:02

Оффлайн Владимир Шу

  • ADN Club
  • *****
  • Сообщений: 611
  • Карма: 155
    • ПГСу Бложик
Как то так...
Код - C# [Выбрать]
  1.     public static string GetEffectiveName(this Db.BlockReference br)
  2.     {
  3.       string result = "NAN";
  4.       Db.ObjectId id = br.BlockTableRecord;
  5.       if (br.IsDynamicBlock)
  6.         id = br.DynamicBlockTableRecord;
  7.  
  8.       using (Db.BlockTableRecord btr = id.Open(Db.OpenMode.ForRead, true) as Db.BlockTableRecord)
  9.         result = btr.Name;
  10.  
  11.       return result;
  12.     }

А вообще эта тема регулярно всплывает на форуме...
Ну и классика: https://adn-cis.org/kak-najti-vse-vstavki-dinamicheskogo-bloka.html

Оффлайн valtur1983Автор темы

  • ADN OPEN
  • Сообщений: 46
  • Карма: 2
Спасибо!