Модуль 3D-визуализации

Модуль 3D-визуализации SimInTech предназначен для динамического рендеринга объектов в трехмерном пространстве. Функционал модуля позволяет работать как со стандартными примитивами (сфера, конус и т.д.), так и с объектами, загруженными из файла.

Существует три способа создания окна модуля 3D-визуализации (число создаваемых окон не ограничено):
  1. При помощи скриптовых функций языка программирования (viewer3dcreate.dita, viewer3dcreatewindow.dita). Данные функции в качестве результата возвращают идентификатор (ID) созданного окна 3D-визуализации, при помощи которого осуществляется дальнейшая работа с экземпляром модуля.
  2. Из главного меню SimInTech («Инструменты 3D» – «Создать окно 3D-визуализации»). В данном случае для работы с модулем ID окна можно получить двумя способами:
    1. При помощи скриптовой функции viewer3dgetwindowlist.dita, которая возвращает массив ID всех существующих окон 3D-визуализации.
    2. При помощи функции «ID окна в буфер» меню «Инструменты» окна 3D-визуализации (Рис. 1).
  3. Из главного меню модуля теплогидравлики HS («Теплогидравлика» – «Создать окно 3D-визуализации»). ID окна может быть получено аналогично п. 2. Особенность данного способа заключается в совместной работе модуля 3D-визуализации с плагином кода HS, что позволяет выполнять рендеринг 3D-объектов для трубопроводов и прочих узлов теплогидравлического контура, а также визуализацию поля распределения того или иного параметра системы (Рис. 2).
Окно модуля 3D-визуализации состоит из четырех основных секций (Рис. 3):
  1. Главное меню. Содержит структурированный перечень всех функций модуля 3D-визуализации.
  2. Панель быстрого доступа. Обеспечивает быстрый доступ к базовым функциям модуля 3D-визуализации.
  3. Область рендеринга 3D-объектов. Предназначена для навигации по 3D-модели.
  4. Строка состояния. Служит для индикации некоторых параметров 3D-модели:
    1. Координаты выделенного 3D-объекта в глобальной системе координат (ГСК).
    2. Текущее значение кадровой частоты (FPS).
    3. Величина визуализируемого параметра в заданной точке (при совместной работе с плагином теплогидравлического модуля HS).

Существует опционально отображаемая пятая секция окна модуля 3D-визуализации – Дерево 3D-объектов (Рис. 4). Дерево содержит структурированный перечень всех 3D-объектов.

Как видно из рисунка 4, все 3D-объекты структурно делятся на три группы по способу их создания:
  1. Объекты со схемы. Перечень 3D-объектов, рендеринг которых выполнен по запросу плагина кода HS. При совместной работе модуля 3D-визуализации с плагином кода HS объектам расчетной схемы в SimInTech в соответствие создаются 3D-объекты по заданным координатам и геометрии. Работа с модулем 3D-визуализации доступна для следующих элементов библиотеки блоков HS:
    1. HS – Граничный узел
    2. HS – Внутренний узел.
    3. HS – Узел компенсатора.
    4. HS – Канал
    5. HS – Труба.
      Для рендеринга соответствующего 3D-объекта данные блоки обеспечены следующим набором свойств:
      1. Выполнять рендеринг 3D-примитива для объекта. Флаг необходимости создания 3D-объекта для блока.
      2. Тип графического примитива. Тип создаваемого для блока 3D-объекта (Сфера, Усеченный конус, Цилиндр, Параллелепипед).
      3. Координата X, м. Координаты опорных точек 3D-объекта по оси X. Для случая сферы число опорных точек всегда равно 1, для случая остальных графических примитивов – N+1, где N – число расчетных элементов (ячеек).
      4. Координата Y, м. Координаты опорных точек 3D-объекта по оси Y.
      5. Координата Z, м. Координаты опорных точек 3D-объекта по оси Z.
      6. Геометрия сечения, м. Геометрия поперечного сечения расчетных элементов (ячеек) 3D-объекта. В качестве геометрии для сферы задается диаметр, для усеченного конуса – наружный и внутренний диаметр входного сечения, наружный и внутренний диаметр выходного сечения, для цилиндра – наружный диаметр, для параллелепипеда – длина и ширина. Таким образом, размерность массива для случая сферы всегда равна 1, для случая усеченного конуса – N*4, для случая цилиндра – N, для случая параллелепипеда – N*2.
      7. Параметры визуализации. Служебное свойство, необходимое для хранения атрибутов 3D-объекта.
      8. Значение параметра №1, е.и. Величина параметра, подлежащего визуализации поля распределения. Задается для каждого расчетного элемента (ячейки).
      9. Значение параметра №2, е.и. Величина параметра, подлежащего визуализации поля распределения.
      10. Значение параметра №3, е.и. Величина параметра, подлежащего визуализации поля распределения.

      Выполнять рендеринг 3D-примитива для объекта. Флаг необходимости создания 3D-объекта для блока.Тип графического примитива. Тип создаваемого для блока 3D-объекта (Сфера, Усеченный конус, Цилиндр, Параллелепипед).

  2. Объекты из скрипта.
  3. Статические объекты.