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

21/11/2014

Использование .NET API для добавления масштаба аннотаций в чертеж

Следующий код на C# показывает последовательность действий для добавления нового масштаба в список масштабов:

Код - C#: [Выделить]
  1. [CommandMethod("AddScale")]
  2. static public void addScale()
  3. {
  4.  Document doc = Application.DocumentManager.MdiActiveDocument;
  5.  Database db = doc.Database;
  6.  // Получаем objectContextManager           
  7.  try
  8.  {
  9.      ObjectContextManager contextManager =
  10.                                     db.ObjectContextManager;
  11.      // Если всё в порядке               
  12.      if (contextManager != null)
  13.      {
  14.          // Теперь получаем контекст коллекции аннотативных масштабов
  15.          // (с именем ACDB_ANNOTATIONSCALES)                   
  16.          ObjectContextCollection contextCollection =
  17.            contextManager.GetContextCollection(
  18.                                     "ACDB_ANNOTATIONSCALES");
  19.          // Если всё в порядке                   
  20.          if (contextCollection != null)
  21.          {
  22.              // Создадим новый масштаб                       
  23.              AnnotationScale annotationScale =
  24.                                     new AnnotationScale();
  25.              annotationScale.Name = "RanScale 1:64";
  26.              annotationScale.PaperUnits = 1;
  27.              annotationScale.DrawingUnits = 64;
  28.              // Теперь добавим этот масштаб к коллекции                       
  29.              contextCollection.AddContext(annotationScale);
  30.          }
  31.      }
  32.  }
  33.  catch (System.Exception ex)
  34.  {
  35.      Editor ed = doc.Editor;
  36.      ed.WriteMessage(ex.ToString());
  37.  }
  38. }

 

Источник: http://adndevblog.typepad.com/autocad/2012/05/using-the-net-api-to-add-a-scale-to-a-drawing.html

Обсуждение: http://adn-cis.org/forum/index.php?topic=1095

Опубликовано 21.11.2014
Отредактировано 21.11.2014 в 15:48:57