Корпорация развития Нижегородской области: как СОМ работает в Model Studio CS

Селин
начальник отдела информационного моделирования Корпорации развития Нижегородской области
Как корпорация развития Нижегородской области смогла успешно использовать данные, полученные с помощью COM-интерфейса продукта АО "СиСофт Девелопмент" – Model Studio CS, для организации процесса моделирования и настройки вывода документации, рассказывает начальник отдела информационного моделирования Корпорации развития Нижегородской области Андрей Селин. Он отмечает, что решение не только позволило снизить долю ручного труда, но и свести к минимуму количество ошибок, связанных с человеческим фактором.
Инвестиции под ключ
АО "Корпорация развития Нижегородской области" – единый центр развития и привлечения инвестиций в регион. Он занимается поддержкой инвесторов и реализацией их объектов. Одна из структур корпорации – дирекция по проектированию, специалисты которой отвечают за архитектурные концепции, градостроительство и комплексное развитие территорий, разрабатывают проектную и рабочую документацию. В списке реализуемых проектов – конгрессно-выставочный комплекс "Нижний-Экспо", технопарк "Квантовая долина", индустриальные парки, развитие застроенной территории улицы Барминской.
Почему пришлось использовать COM-интерфейс?
В процессе проектирования специалисты дирекции по проектированию столкнулись с несколькими задачами, которые не решались при помощи базовых средств Model Studio CS. Во-первых, у проектировщиков не было возможности разбить спецификацию дисциплин ОВ и ВК по системам стандартными средствами: профили настройки проекций ПО используют параметры, которые не считывают систему элементов, актуальную для инженерных разделов. В результате приходилось добавлять что-то вручную, а это приводило к ошибкам, потерям данных и влияло на качество документации. Во-вторых, у некоторых элементов нет параметров, по которым их можно идентифицировать. Например, в случае с изоляцией известна только ее толщина или данные, занесенные в модель. Кроме того, решения, настроенные по умолчанию, не всегда подходили специалистам.
Что такое COM
СОМ – Component Object Model – это технологический стандарт компании Microsoft, предназначенный для создания программного обеспечения (ПО) на основе взаимодействующих компонентов, каждый из которых можно использовать во многих программах одновременно. Применительно к Model Studio CS этот интерфейс оперирует четырьмя элементами:
- "COM-оболочка" – точка входа, набор всех необходимых свойств для обращения к элементам базы данных Model Studio CS;
- "Коллекция" – набор элементов, информации;
- "Метод" – действие по извлечению информации из объектов либо запись в них какой-то информации;
- "Свойство" – способ извлечения информации из объектов Model Studio CS.
COM-оболочка одного элемента может быть свойством для другого элемента. Это есть точка связи этих элементов.
Синтаксис запросов к COM
Один из ключевых моментов в работы с COM – обращение к синтаксису запросов. Понять, чем является объект, можно благодаря справочнику программного интерфейса приложения (API). Второй – взаимосвязь между элементами. Например, Model Studio CS "видит" участок воздуховода, соединенный с вентилятором, несколько иначе, чем проектировщик. Это один набор компонентов: вентилятор с узлом и осевая воздуховода, которая не отображена в проекциях 2D и 3D, но при этом хранит в себе все свойства системы. Для каждой составляющей существует набор свойств.
Чтобы составить COM-запрос, нужно понимать, как строятся зависимости и где найти синтаксис. Точка входа – COM-оболочка. Для сегмента воздуховода в справочнике по COM API нужно найти соответствующую оболочку, далее обнаружить связь с осевой, например, элемент Element Axis (COM-оболочка осевой), и выделить ее свойства. Применение Element (COM-оболочки иерархической структуры элементов Model Studio CS) позволяет считать параметры (Parameters). В справочнике можно также найти свойства компонента и элемента. Кстати, подсказки есть в редакторе формул: синтаксис появляется, если выбрать "Свойства" (Value) или "Метод" (Item). У последнего есть четыре атрибута. Чтобы считать значение параметра, нужно вывести в конце "Value".
Понимая, как строятся зависимости и где посмотреть синтаксис, можно создать любой COM-запрос.
Использование СOM-запросов в корпорации развития
В Корпорации развития Нижегородской области применяют СOM-запросы в моделировании (виртуальное отображение и обработка) и в оформлении (проекции и спецификации). Например, если фрагмент трубопровода системы отопления необходимо обозначить разными цветами для подающией и обратной подсистемы, формулу заносят в Мастер оформления чертежа. Он обрабатывает модель по запросу и распределяет элементы по слоям, соответствующим значению подсистемы.
COM-запрос применяют в настройках навигатора. Навигатор позволяет группировать элементы только по одному параметру. У оборудования, элементов трубопровода и изоляции нет общего параметра, по которому можно было бы их сгруппировать. Для этого создается пользовательский параметр. В созданном параметре прописан запрос для каждого из типов компонента, и уже единое требование используется в навигаторе. Так можно посмотреть, есть ли какие-то элементы с не назначенной системой. Этот принцип используется при настройке проекции и спецификации.
При настройке проекций перед нами стоял ряд задач: распределение элементов по слоям, чтобы скрыть их или назначить цвет; фильтрация составляющих по системам, по этажам, а также настройка выносок и размеров. Для инженерных разделов важна система, к которой принадлежат элементы. Считываем их из параметров осевой через COM-запрос, а в проекции отображаются сами элементы. Распределение по слоям делалось по простому принципу: распознавали, распределяли и назначали слой. Фильтрация элементов по системам в мастере предварительно настроенных проекций использует тот же самый параметр, что и в навигаторе: ему просто присваивается значение одной из систем".
COM-запросы помогают и в настройке выносок. Например, для формирования обозначения опуска можно определить вертикальный участок трубы, задать условие минимального значения длины, тогда при срабатывании этого правила автоматически будет формироваться выноска, что упрощает жизнь проектировщикам. Выноски, как и назначение цвета, также выводятся по предварительно настроенным правилам в проекциях.
Спецификации – очень мощный инструмент Model Studio CS по отображению данных. Они позволяют показывать элементы в табличном виде, и, помимо заказных, можно делать проверочные и вспомогательные документы.
На примере системы воздуховода мы считываем системы, которые подключены к оборудованию. Если этого не делать, можно допустить ошибку и не учесть расходы на него. В заказной спецификации COM позволяет собрать все по системам.
Интерфейс для решения сложных задач
COM-интерфейс значительно расширяет возможности ПО для оформления, решает задачи, недоступные из "коробки". Он автоматизирует некоторые процессы, которые требуют участия проектировщика. Корпорация развития Нижегородской области значительно снизила количество таких операций, и это позволило минимизировать ошибки, связанные с человеческим фактором. Чтобы владеть инструментом, не нужны специальные навыки: все процессы доступны в интерфейсе программы. При внедрении сложных систем обязательно нужен специалист, который возьмет на себя обязанности по настройке.
Комплексным внедрением ПО для автоматизированного проектирования в Корпорации развития Нижегородской области занимался системный интегратор Model Studio CS – компания "СиСофт Нижний Новгород", которая настраивала систему. В корпорации использовали документ с примерами COM, что позволило закрыть 70% потребностей по настройке модуля Трубопроводы.
