Разбираемся с IfcAnnotation

Разбираемся с IfcAnnotation

@IgorSherstennikov

Подробнее изучить как устроены аннотации в схеме IFC нас побудил @rvrn500. В своем посте https://t.me/IFC_club/10/3722 он делится результатами своих исследований по выгрузки аннотаций из Autodesk Revit в IFC. Используя инструмент "Линия модели" он смог создать аналог выноски и экспортировать их.

Давайте разберемся, что записалось в IFC-файл при таком экзотическом способе.

Просмотрщик BIMvision открыл файл и успешно отобразил все элементы.

При этом стандартного класса IfcAnnotation, отвечающего за аннотации, в дереве элементов не оказалось.

При выборе элемента текст аннотации не присутствует в нем в виде атрибутов или свойств. Т.е. идентифицировать текст можно только визуально.

Если более детально изучить одну из аннотаций в текстовом редакторе, найдя элемент по его Guid (2q4CoYpEL6PfqZR5DIC3jM), то вскрывается еще больше особенностей.

Первое что бросается в глаза - элементу присвоен класс IFCBUILDINGELEMENTPROXY, со всеми присущими ему атрибутами.

Но основные фокусы связаны с геометрией. Условно, она состоит из двух ''субэлементов'': выноски и текста.

Выноска построена из двух линий, описываемых точкой начала и конца.

Не идеальный вариант, но криминала мы не видим и при желании таким образом можно целиком перегнать линии из DWG-файла прямо в IFC (однако не стоит так делать).

С геометрией ''Текста'' куда веселее. Ожидалось найти в файле ''Выноска 3_ХY'' в виде значения атрибута элемента, которое и должно отображаться в выноске. Но фактически каждая буква или символ описывается замкнутым полигоном с учетом всех поворотов и изгибов. При этом сам полигон строится по точкам, которые также записаны в файле.


В итоге при таком способе:

- текста как такого в выноске нет, а есть лишь его "взорванное" векторное представление, поэтому использовать его для машинной обработки не получится;

- вместо 13 символов в слове ''Выноска 3_ХY'' мы имеем порядка 10 000, что кратно увеличивает размер файла.

Важно понимать, что это недокументированное использование классов. Так что не стоит жаловаться на потерю данных и увеличение размер файла.

Использовать такой метод следует только в крайнем случае - если ПО не позволяет, но очень нужно чтобы в IFC были хоть какие-то аннотационные пометки.


В противовес такому подходу посмотрим на файл IFC, который содержит стандартный класс IfcAnnotation.

BIMvision также справляется с чтением и отображением таких элементов.

Из минусов - в просмотрщике также не видно текста аннотации ни в атрибутах, ни в свойствах.

Однако, давайте также как и в предыдущем примере посмотрим что записано в файле через текстовый редактор.

Геометрия элемента задается атрибутом, в который записывается обычный ТЕКСТ.

При этом спецификация позволяет задать тексту нужный шрифт, цвет и многое другое. А при желании можно вытащить необходимые данные из атрибута и произвести их обработку.

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


Мы видим большие перспективы за внедрением аннотаций в файл IFC, и вероятнее всего, именно они позволят отказаться от традиционных чертежей в PDF и избежать расхождения данных.

@ifc_ru

@ifc_club

Report Page