Инструменты пользователя

Инструменты сайта


Боковая панель

developers:tutorial:drawing

Это старая версия документа.


Добавление примитивов на чертёж

Модель чертежа описана в пространстве имен Topomatic.Dwg. Она представляет собой реализацию хранилища объектов, каждый из которых является примитивом чертежа. Обеспечивает работу с слоями чертежа, типами линии и прочими элементами.

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

  • Получить экземпляр класса Drawing - реализующий модель чертежа
  • Выполнить в нём необходимые изменения.

Создайте и настройте новый модуль для подключения к программному комплексу Топоматик Робур.

С помощью диалогового окна Менеджер ссылок добавьте ссылки на следующие библиотеки:

Не забудьте поставить флаг «Копировать локально» в «False». Кроме того, необходимо добавить нужные пространства имен в секцию using. Visual Studio позволяет легко сделать это, нажав правой клавишей на имени класса и выбрав добавление директивы using.

Алгоритм получения модели чертежа для текущего окна следующий:

  • Получаем текущий активный элемент управления CadView
  • Находим слой отображения модели чертежа DrawingLayer через статическую функцию GetDrawingLayer
  • Получаем модель чертежа через свойство слоя Drawing

Для удобства использования - оформим этот алгоритм как свойство нашего модуля:

partial class Module : Topomatic.ApplicationPlatform.Plugins.PluginInitializator
{
        ...
        //свойство для получения модели чертежа
        public Drawing Drawing
        {
            get
            {
                //получаем текущий активный CadView
                var cadView = this.CadView;
                if (cadView != null)
                {
                    //получаем текущий слой модели чертежа
                    var layer = DrawingLayer.GetDrawingLayer(cadView);
                    if (layer != null)
                        //возвращаем модель чертежа
                        return layer.Drawing;
                }
                return null;
            }
 
        }
}
developers/tutorial/drawing.1549195467.txt.gz · Последние изменения: 2021/07/22 14:28 (внешнее изменение)