glTF Extension to Keep BIM Data
K Ambrazheichyk, A Valodzin, A Nazarau, E Kudelina

glTF Extension to Keep BIM Data

Abstract. The extension allows keeping domain specific data in relation to geometry. It is applicable when #glTF standard “extras” property is not enough to store huge amounts of metadata or when it's insufficient from the file size or data complexity perspective. The extension was originally developed for architecture, engineering and construction (#AEC) industry to keep Building Information Model (#BIM) data, but it's suitable for any other industry which operates huge amounts of information associated with #3D models.

1. Introduction

Building Information Modelling (BIM) has become tremendously popular in modern engineering. Variety of software has produced a wide variety of file formats, and each of those formats has to contain a large amount of information. Usually, BIM file formats are heavy and long to process which becomes an even bigger problem when it comes to file sharing and conversion. Currently accepted standard for BIM file transmission is #IFC which is powerful but heavy and almost impossible to read with a naked eye.

The problems described above can be also applied to graphical files and they were partially overcome with the introduction of glTF by Khronos Group in 2015. The format provides nice and logical representation of graphical information and thus sets the ground for BIM graphics storage. This has already been performed by Griffel Studio with the release of glTF Exporter for #Revit. The next logical step was to add BIM metadata, such as member dimensions, material properties, and other relevant structural data, to the glTF while maintaining basic principles of the format and keeping the amount of data as little as possible to serve its purpose. Thanks to Khronos Group, the authors of glTF have made the format extensible.

This article describes the BIM data organisation within glTF, as proposed by Griffel Studio.

2. BIM Extension Description

A real world object (column, wall, etc.) is represented as a mesh attached to a node inside glTF file. Original glTF specification offers extras property to store metadata related to the node. This approach is good enough either for models with a small number of nodes or for the models where nodes have various sets of parameters so that there is no point in unification. However, in real-world structural models multiple objects may have exactly the same sets of parameters, and this is where the benefits of using the extension will show themselves.

To start with, we list all unique parameter names and all unique values as two separate lists. Then we create all possible name-value pairs which occur in the model, and such name-value pairs are called properties. Each property has a unique index which is used to unambiguously assign the property to the node. Moreover, properties may be grouped into types. A type is a set of properties common for multiple nodes. Each node can reference multiple properties and only one type. Thus, instead of writing each element parameter one after another into extras, it is sufficient to list all unique combinations of parameters and assign types or properties to nodes.

3. Example

Let us describe two timber doors using the BIM Extension. Each door is 900 mm wide. First door is 2,1 m high and the second is 2,4 m high. In this example properties are: "Width - 900 mm", "Height - 2,1 m", "Height - 2,4 m", "Material - Timber". Here both doors are 900 mm wide and are made of timber, hence properties “Width - 900 mm” and “Material - Timber” can be combined into a type.

GRIFFEL_bim_data extension structure inside glTF file.
glTF nodes reference GRIFFEL_bim_data extension and the extension body

4. Conclusion

glTF BIM Extension solves the problem of?storing large amounts of repetitive metadata in a compact and fast to interpret way. The extension was developed with AEC models in view, however it is not limited to that, it can be used for other types of models just as well. We consider it to be the step towards BIM files simplification and easier interoperability.

You can read full specification in the official repository: glTF/extensions/2.0/Vendor/GRIFFEL_bim_data at main · KhronosGroup/glTF (github.com)

Machiel Odendaal

Helping Architects to design their Digital Practices.

2 年

要查看或添加评论,请登录

社区洞察

其他会员也浏览了