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

ADN Club => AutoCAD .NET API => Тема начата: serega374 от 04-11-2018, 08:27:14

Название: Как скрыть атрибут блока?
Отправлено: serega374 от 04-11-2018, 08:27:14
Добрый день,
Создаю программно блок с несколькими атрибутами. Как сделать так что бы он не отображался на чертеже - был скрытым. Я попробовал Visible = false; но тогда он вообще не присутствует в блоке.
Код - C# [Выбрать]
  1.  // создаем определение атрибута
  2.                 AttributeDefinition adATTRName = new AttributeDefinition
  3.                 {
  4.                     Position = new Point3d(0, 0, 0),
  5.                     Tag = "ATTRName",
  6.                     Visible=false
  7.                 };
  8.                 AttributeDefinition adATTRObozn = new AttributeDefinition
  9.                 {
  10.                     Position = new Point3d(0, 5, 0),
  11.                     Tag = "ATTRObozn",
  12.                    // Visible=false
  13.                                     };
  14.                 //...часть кода пропущено...//
  15.                 // задаем значение атрибута "наименование"
  16.                 AttributeReference arATTRName = new AttributeReference();
  17.                 arATTRName.SetAttributeFromBlock(adATTRName, brRefBlock.BlockTransform);
  18.                 arATTRName.TextString = "Стойка базовой станции";
  19.                 brRefBlock.AttributeCollection.AppendAttribute(arATTRName);
  20.                 trAdding.AddNewlyCreatedDBObject(arATTRName, true);
  21.  
  22.                 // задаем значение атрибута "обозначение"
  23.                 AttributeReference arATTRObozn = new AttributeReference();
  24.                 arATTRObozn.SetAttributeFromBlock(adATTRObozn, brRefBlock.BlockTransform);
  25.                 arATTRObozn.TextString = "BTS-312";
  26.                 brRefBlock.AttributeCollection.AppendAttribute(arATTRObozn);
  27.                 trAdding.AddNewlyCreatedDBObject(arATTRObozn, true);
  28.  

(https://i.postimg.cc/gwvjPgXT/image.png) (https://postimg.cc/gwvjPgXT)

PS И как потом выдернуть текстовые значения атрибутов из блоков?

Название: Re: Как скрыть атрибут блока?
Отправлено: serega374 от 04-11-2018, 08:36:24
Допёр) Надо юзать
Код - C# [Выбрать]
  1. arATTRObozn.Invisible = true;
Название: Re: Как скрыть атрибут блока?
Отправлено: Александр Ривилис от 04-11-2018, 13:10:43
Я попробовал Visible = false; но тогда он вообще не присутствует в блоке.
Он присутствует, но его нельзя выбрать ручными методами, так как он не видим в принципе.