Определение элемента информационной модели

Информационная модель - это трёхмерное графическое представление о взаимном расположении существующих и проектных объектов в пространстве с заданной системой координат.

Элементы информационной модели - это объекты, которые могут обладать объёмными моделями, а так же семантическими свойствами.


Раздел на модерации

Функция v-object-typed

Описание
Создание элемента информационной модели с заданным типом
Возвращаемое значение
Элемент ИМ
Синтаксис
(v-object-typed smdx_type property_1 property_2 ... property_N)
Аргумент Тип Описание
smdx_type Строка Тип элемента информационной модели
property_# Свойство Свойство компонента
Пример
; Создание элемента ИМ типа "SmdxPoint"
(v-object-typed "SmdxPoint"
  ; Инициализация значений свойств уже существующих в типе "SmdxPoint"
  (defproperty x 1.0 "X" (v-property-length-m))
  (defproperty y 0.0 "Y" (v-property-length-m))
  (defproperty z 0.0 "Z" (v-property-length-m))
  ; Добавление пользовательского свойства elevation
  (defproperty elevation 0.0 "Elevation" (v-property-length-m))
)

Функция defelement

Описание
Создание элемента информационной модели из компонента
Возвращаемое значение
Элемент ИМ
Синтаксис
(v-object-typed component property_1 property_2 ... property_N)
Аргумент Тип Описание
component Компонент Компонент
property_# Свойство Свойство компонента
Пример
; Сохранение определения встраиваемого компонента
(setq
  my_component  (defcomponent "Балка" "SmdxElement"
                  (defproperty length_property 1.0 "Длина"
                    (v-property-double "m" 0 100)
                  )
                  (defgeometry
                    (v-extrude
                      (v-profile-p 0.01 0.2)
                      (vec length_property 0)
                    )
                  )
                )
)
 
; Создание элемента ИМ из компонента
(defelement my_component
  ; Изменение значения свойства компонента
  (defproperty length_property 2.0 "Длина" (v-property-double "m" 0 100))
  ; Добавление пользовательского свойства thickness_property
  (defproperty thickness_property 15 "Толщина" (v-property-double "mm" 0 100))
)
developers/references/tlc/dictionary/im_element/start.txt · Последние изменения: 2023/07/09 16:34 — proxor