Мэпинг параметров и категорий IFC - CIVIL

Мэпинг параметров и категорий IFC - CIVIL

Гость из угла у камина


БиО и ПС самые простые модели - в части параметризации, но о них мало говорят.

Когда вы создадите ваши модели, вам потребуется до финального шага сделать две вещи - добавить параметры, и мепинг категорий.

Мепинг\добавление параметров

Последовательность СОЗДАНИЯ параметров

Прежде, чем что либо заполнять - надо сначала создать группу и параметры в ней, а затем присвоить элементам.

Сначала перейдите на вкладку Управление, выберите "Определить наборы характеристик". В появившемся окне кликните правой кнопкой мыши и создайте "Группу для параметров". Название указывайте как в требованиях для АГР, у меня на скриншоте это RUS_ГРУППА.

Затем на вкладке "Применяется к" нужно выбрать перечень элементов для которых можно будет добавить эти параметры (аналог категория в Revit)

И уже на вкладке "Определение" - вы создаете через кнопки 5 - нужные вам параметры

Меню добавления созданных нами групп с параметрами

А теперь применим нашу "Группу с параметрами к элементу". Выберем элементы, перейдем на вкладку Дополнительно (в окне Свойств).

Через кнопку 2 откроем меню добавления, выберем нужные группы и всё готово.

Если на этом этапе у вас кнопка не активна - значит вы не добавили элементы на вкладке "Применяется к" из предыдущего шага.

Мэпинг категорий

При стандартной выгрузке элементов из Civil - у вас часто все они будут попадать в категорию IfcProxyElementGeometry - что нас не устраивает, при этом стандартными инструментами, я не нашел как починить данну. проблему, поэтому:

Идём на оффициальный сайт Autodesk и через дебри и личный кабинет скачиваем себе IFC 4.3 Import/Export Extension for Civil 3D или идем на Я.Диск где в архив я выкачал последние 3 версии этого плагина.

После установки, у нас на вкладке "Надстройки" появятся заветные кнопки с экспортом в IFC.

Экспорт надстроек и отображение параметров у элемента

Теперь, если мы будем выгружать через этот плагин - по умолчанию, у нас будет сразу нужная нам категория IfcBuildElement

Но если не получилось - смотрим что можно сделать дальше:

Нажимаем на кнопку "Save Mapping". Эта команда создаст файл IfcInfraExportMapping.json в папке с вашим текущим чертежом - где будет происходить мэпинг категорий.

Далее, если вы нажмете "Export to IFC" - вашим элементам внутри CIVIL будут добавлены параметры IFCExportAS - до этого они могли не отображаться.

И теперь вы можете либо вручную, через параметр IFCExportAS указать категорию, либо внутри файла JSON указать правила

Синтаксис JSON

Файл содержит JSON-массив объектов. Каждый объект - это одно правило, состоящее из трех ключевых полей.

[
  {
    "Name": "Название_объекта_или_код",
    "IfcExportAs": "IFCКласс.Подтип",
    "Export": true
  },
  {
    "Name": "Еще_один_объект",
    "IfcExportAs": "IfcBuildingElementProxy",
    "Export": true
  }
]

"Name" (строка): Это имя или код объекта Civil 3D, к которому вы хотите применить правило. Это может быть имя слоя, код связи (Link Code), код формы (Shape Code) или имя самого объекта

Важно: "Name" поддерживает регулярные выражения (regex). Это мощный инструмент, который позволяет создавать гибкие правила. Например, "Name": ".*_Опора" применит правило ко всем объектам, чье имя заканчивается на _Опора

"IfcExportAs" (строка): Здесь вы указываете, в какой класс IFC превратить объект . Это именно то, что мы обсуждали в прошлый раз. Синтаксис такой:

  • Просто класс: "IfcFooting"
  • Класс с подтипом: "IfcAnnotation.StringLine" (как в примере Autodesk) .
  • Пользовательский тип: "IfcBuiltElement.UserDefined"

"Export" (логическое значение): Определяет, будет ли объект экспортироваться. true - экспортировать, false - исключить из выгрузки

Система обрабатывает правила в строго определенном порядке. Это важно, так как правило, найденное на позднем этапе, переопределяет найденное на раннем .

  1. Этап 1: "Умное" предположение - Civil 3D сам пытается угадать класс на основе типа объекта (например, коридор станет IfcRoad).
  2. Этап 2: По имени слоя - система ищет правило, где "Name" совпадает с именем слоя объекта.
  3. Этап 3: По кодам (только для коридоров) - для объектов коридора система ищет правила, где "Name" совпадает с кодом точки, связи или формы .
  4. Этап 4: Применение вашего JSON-файла - применяются правила из вашего IfcInfraExportMapping.json

Ваш JSON-файл имеет самый высокий приоритет. Правила, которые вы в него запишете, будут иметь приоритет над всеми встроенными настройками Civil 3D.


Пример 1: Переназначить класс для всех объектов на слое "CUT-SLOPE"

Вот как будет выглядеть правило, которое найдет все объекты на слое CUT-SLOPE и назначит им класс IfcFill (насыпь):

{
  "Name": "CUT-SLOPE",
  "IfcExportAs": "IfcFill",
  "Export": true
}

Пример 2: Переназначить класс для всех форм (Shape) с кодом "PAVEMENT"

Это правило применится ко всем формам в коридоре, у которых код равен PAVEMENT, и назначит им специальный класс IfcPavement (дорожное покрытие

{
  "Name": "PAVEMENT",
  "IfcExportAs": "IfcPavement",
  "Export": true
}



Report Page