Приложение AutoCAD

Объект Application является корневым объектом AutoCAD .NET API. Из-под объекта Application можно получить доступ к главному окну, а также к любому открытому чертежу. После открытия чертежа можно также получить доступ к его объектам.

Важно иметь в виду, что в AutoCAD .NET API приложение Application не является объектом, с которым можно взаимодействовать. В отличие от Document, который можно получить, например, как Autodesk.AutoCAD.ApplicationServices.Application.DocumentManager.MdiActiveDocument, приложение невозможно получить никаким образом, оно существует в виде статического класса, у которого можно только вызывать его методы и свойства. Например, у объекта Application есть свойство DocumentManager, которое возвращает объект Autodesk.AutoCAD.ApplicationServices.DocumentCollection. Этот объект предоставляет доступ к чертежам, которые в данный момент открыты в сессии AutoCAD; кроме того, он позволяет создавать новые документы, сохранять и открывать файлы чертежей. Другие свойства объекта Application предоставляют доступ к данным, специфичным для приложения.

Большинство свойств объекта Application предоставляют доступ к объектам AutoCAD .NET API, однако некоторые из них ссылаются на объекты AutoCADActiveX® Automation. К таким свойствам относятся COM-версия объекта приложения (AcadApplication), менюбар (MenuBar), загруженные группы меню (MenuGroups) и настройки профиля (Preferences). Получить COM-объект приложения можно при помощи конструкции:

var nApp = Autodesk.AutoCAD.ApplicationServices.Application.AcadApplication as AutoCAD.AcadApplication;

Можно отметить следующие свойства приложения:

  • DocumentManager: предоставляет доступ к взаимодействию с отдельными чертежами для данной сессии AutoCAD;
  • DocumentWindowCollection: коллекция всех окон документов (каждый из документов хранится в DocumentManager), в основном окна характеризуются различными свойствами размеров и координат;
  • MainWindow: доступ к имени, размеру, расположению и видимости окна приложения AutoCAD;
  • UserConfigurationManager: управление профилями настройки приложения;