CAD .NET. Начало работы

Начало работы

В основе интерфейса библиотеки CAD.NET лежит структура наследуемых классов. Ниже приводятся краткие описания наиболее важных классов.

Класс CADImage определяет объект чертежа. Все доступные данные чертежа могут быть получены через свойства этого класса. Для создания нового чертежа требуется создать и инициализировать объект CADImage:

CADImage cadImage = new CADImage();
cadImage.InitialNewImage();

После выполнения данного кода новый чертёж готов к добавлению примитивов.

Библиотека включает классы-наследники CADImage, которые должны использоваться только для импорта чертежей соответствующего формата:

  • DWGImage - для импорта DWG чертежей
  • CGMImage - для импорта CGM чертежей
  • HPGLImage - для импорта чертежей форматов HPGL/2
  • GBRImage - для импорта чертежей формата Extended Gerber (RS-274X)
  • CADRasterImage - для импорта растровых изображений и метафайлов

Для импорта чертежей DXF формата следует использовать базовый класс CADImage.

Мы рекомендуем использовать функцию CADImage.CreateImageByExtension для автоматического создания требуемого класса (определяется расширением текстового параметра) при импорте. Следующий код автоматически инициализирует cadImage как объект класса требуемого формата (DWGImage), а затем выполнит импорт указанного чертежа

CADImage cadImage = CADImage.CreateImageByExtension(@"d:/1.dwg");
cadImage.LoadFromFile(@"d:/1.dwg");

При импорте существующего чертежа, метод инициализации выполнять не нужно.

Класс CADConverter содержит настройки чертежа, а также записи, относящиеся к любым существующим объектам чертежа. Такие невизуальные объекты как слои, блоки, стили хранятся в CADConverter объекте. Каждый чертёж имеет единственный CADConverter объект, доступ к которому осуществляется через свойство CADImage.Converter. При добавлении любого нового объекта, а также изменении любого существующего, запись нового/измененного объекта должна делаться в CADConverter:

cadImage.Converter.Loads(changedObject);

Класс CADEntity является базовым классом примитивов (т.е. визуальных объектов) чертежа, а также некоторых других объектов (например, слоёв или блоков). Для каждого примитива определяется свой набор свойств, что позволяет эффективно реализовывать доступ к графическим данным чертежа.

Класс CADEntityCollection представляет собой коллекцию примитивов (объектов CADEntity и наследуемых классов). Доступ к примитивам-членам может осуществляться как по индексу, так и по Handle (уникальному для каждого примитива идентификатору).

Класс CADLayout является наследником CADEntity и представляет собой невизуальный объект «лист», на котором находятся примитивы. CAD.NET группирует примитивы по листам, на которых они располагаются. Примитивы листа содержатся в CADLayout.Entities, который является объектом CADEntityCollection.

Коллекция CADImage.Layouts содержит все листы чертежа, а CADImage.CurrentLayout предоставляет доступ к текущему листу чертежа, т.е. листу, который будет отрисован.

В заключение пример, показывающий создание нового чертежа и добавление к нему примитива CADLine (линия):

CADImage cadImage = new CADImage();
cadImage.InitialNewImage();

CADLine vLine = new CADLine();
vLine.Point = new DPoint(80, 100, 0);
vLine.Point1 = new DPoint(150, 150, 0);
vLine.Color = Color.Blue;
vLine.LineWeight = 0.3;

cadImage.Converter.Loads(vLine);
cadImage.CurrentLayout.AddEntity(vLine);

После выполнения данного кода текущий лист чертёжа может быть отрисован с использованием метода CADImage.Draw.

Исходный код демо проектов доступен в составе компилируемой версии библиотеки CAD.NET. Для получения ссылки на загрузку библиотеки, пожалуйста, заполните форму или отправьте письмо на info@cadsofttools.com.

Email:*

Имя (не обязательно):

Сообщение (не обязательно):