An Engineering BIM Model Lightweight Rendering Method Based on Model Semantic Information

By analyzing semantic information and optimizing the BIM model, combining the cone and semantic culling technology, using WebGPU for multi-threaded rendering, the low display rate caused by the large amount of BIM model data in the browser is solved, and efficient and lightweight rendering is achieved.

CN119963736BActive Publication Date: 2025-07-22POWERCHINA BEIJING ENG CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202510062862.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-01-15
Publication Date
2025-07-22
Estimated Expiration
2045-01-15

AI Technical Summary

Technical Problem

When rendering BIM models in browsers, the data volume is large, resulting in low display rate and poor user experience, especially BIM models with complex geometric characteristics cannot be rendered efficiently.

Method used

By analyzing the semantic information of the BIM model, establishing an octree optimized structure, combining visual cone and semantic culling technology, using WebGPU for multi-threaded rendering, eliminating invisible areas and components, and reducing the amount of data.

Benefits of technology

It improves the loading and rendering efficiency of BIM models, reduces the amount of data, improves the usage of GPU hardware, and supports the rendering applications of massive BIM models.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119963736B_ABST
    Figure CN119963736B_ABST
Patent Text Reader

Abstract

The present invention provides a lightweight rendering method for an engineering BIM model based on model semantic information, including: parsing the engineering BIM model to obtain the semantic information of the engineering BIM model; performing octree space segmentation on the engineering BIM model to establish an optimized octree structure of the engineering BIM model; obtaining the semantic information of each tile at each level; and performing spatial culling based on the view frustum and semantic culling based on model semantics. By the method of the present invention, the efficiency of octree index calculation and simplified calculation of model rendering for the engineering BIM model can be improved, the data volume of simultaneously rendering the BIM model by the browser can be reduced, the utilization rate of hardware such as GPU can be increased, the loading and rendering efficiency of the BIM model can be improved, more BIM models can be simultaneously loaded under the condition of the same hardware configuration, and the rendering application of a large number of BIM models is supported.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of computer graphics, and particularly relates to a lightweight rendering method for engineering BIM models based on model semantic information. Background Art

[0002] Ordinary 3D models focus on expressing geometric shape structures and appearance texture mapping, and usually use triangular patch structures to restore geometric structures; BIM models (i.e., Building Information Models) represent buildings and their related information in a digital way, usually including indoor and outdoor multi-level geometric structures, multi-scale geometric structures from large ranges to local small models, and geometric characteristics such as geometric structures conforming to mathematical laws. At the same time, BIM models have a large number of structural groupings and design attribute information.

[0003] Currently, the technologies for realizing 3D rendering based on browsers mainly include WebGPU and WebGL, both of which can realize 3D graphics rendering using JavaScript in the HTML5 Canvas element. Among them, WebGL supports providing 3D graphics rendering capabilities in browser web pages, provides a relatively high-level API for easy start-up and use, but lacks support for modern GPU features. At the same time, WebGL mainly executes in a single thread and lacks support for multi-threading. Therefore, WebGL cannot adapt to complex 3D scenes and is more suitable for quickly developing and deploying conventional basic 3D graphics rendering applications. As an emerging technology, WebGPU natively supports a variety of modern graphics features, provides a lower-level API closer to GPU hardware, supports multi-threaded execution of command buffers and data processing operations, and has many technical advantages such as a more flexible and efficient resource management mechanism. Through mechanisms such as low-level control, command buffers, and pipeline state objects, it can more efficiently utilize GPU resources and is more suitable for 3D applications that require high performance and advanced graphics functions, and is suitable for rendering applications of BIM models with complex geometric characteristics.

[0004] BIM models have characteristics such as geometric laws, complex file structures, and a large number of attached structural attribute information. Currently, when rendering BIM models through a front-end browser, there are the following deficiencies: in the current perspective, the amount of data for loading and rendering BIM models is relatively large, thus reducing the display rate of BIM models and the user experience of viewing BIM models on the screen. Summary of the Invention

[0005] Aiming at the defects existing in the prior art, the present invention provides a lightweight rendering method for engineering BIM models based on model semantic information, which can effectively solve the above problems.

[0006] The technical solution adopted by the present invention is as follows:

[0007] The present invention provides a lightweight rendering method for engineering BIM models based on model semantic information, comprising the following steps:

[0008] Step S1, the engineering BIM model includes multiple BIM components with a hierarchical relationship; parsing the engineering BIM model to obtain the semantic information of the engineering BIM model; wherein, the semantic information of the engineering BIM model includes: the hierarchical inclusion relationship between BIM components, the texture and material information of BIM components, and the geometric structure of BIM components;

[0009] Step S2, combining the semantic information of the engineering BIM model, performing octree space segmentation on the engineering BIM model, and establishing an optimized octree structure of the model of the engineering BIM model; the optimized octree structure of the model is a multi-level tile structure corresponding to the contour of the engineering BIM model;

[0010] Step S3, obtaining the semantic information of each tile at each level, including the relevant patch information of the BIM components directly included in the tile and the BIM component inclusion relationship information;

[0011] The relevant patch information of the BIM component refers to the patch information of the BIM component located inside the tile; the BIM component inclusion relationship information means that for the BIM component A directly included in the tile, if there is no further inclusion of other BIM components inside it, it is recorded that the BIM component A has no inclusion relationship; if there is further inclusion of the BIM component B inside it, then further judge the material of the BIM component A according to the texture and material information of the BIM component. If there is a transparent material, it is recorded that the BIM component A and the BIM component B are in an inclusion visible relationship; otherwise, it is recorded that the BIM component A and the BIM component B are in an inclusion invisible relationship;

[0012] Step S4, concurrently requesting the tiles at all levels of the engineering BIM model through WebGPU technology in the browser, and calculating the position of the tile at the 0th level in the three-dimensional scene as the initial position; storing the tiles at all levels with a hierarchical relationship and the initial position;

[0013] Step S5, spatial culling based on the frustum:

[0014] When rendering is required, first load the tiles at all levels with a hierarchical relationship and display them in the three-dimensional scene according to the initial position of the tile at the 0th level;

[0015] Obtain the frustum according to the camera position in the three-dimensional scene, calculate the intersection boundary between the frustum and the tiles at all levels; according to the intersection boundary, determine the tiles at all levels located inside the intersection boundary as the tiles in the visible area, and cull the tiles at other levels located in the invisible area;

[0016] Step S6, semantic elimination based on model semantics:

[0017] According to the semantic information of tiles at all levels located in the visible area, render the relevant patches of BIM components directly included in the tiles. At the same time, for the directly included BIM components, if there are BIM components B with an invisible inclusion relationship inside them, automatically filter and do not render BIM components B; if there are BIM components B with a visible inclusion relationship inside them, render BIM components B;

[0018] Thus, lightweight rendering of the engineering BIM model based on model semantic information is achieved.

[0019] Preferably, the semantic information of the engineering BIM model further includes BIM component grouping information; the BIM component grouping information means that if multiple BIM components represent the same ground object, multiple BIM components are regarded as a whole BIM component through semantic association, and the outline of the BIM component is determined through the whole BIM component, and then its association relationship with the tile is determined.

[0020] Preferably, step S2 is specifically:

[0021] Step S2.1, according to the geometric structure of the engineering BIM model, determine the outline of the engineering BIM model, and then establish the minimum bounding volume of the engineering BIM model as the tile at the 0th level;

[0022] Step S2.2, divide the tile at the 0th level into 8 sub-tiles of the same size. If a certain sub-tile does not contain any patches of the BIM model, remove the sub-tile; the remaining sub-tiles are the sub-tiles of the tile at the 0th level and are also the tiles at the 1st level;

[0023] Step S2.3, for each tile at the 1st level, if the size of the BIM model it contains is less than the size threshold, or if the number of patches of the BIM model it contains is less than the patch number threshold, stop dividing it into the next level; otherwise, continue to divide it into 8 sub-tiles of the same size, and so on, thereby establishing the optimized octree structure of the engineering BIM model.

[0024] Preferably, it further includes:

[0025] Step S7, when the three-dimensional view is zoomed or panned, recalculate the frustum according to the new camera position, repeat steps S5 to S6, and recalculate the tiles in the visible area and the semantic information of the tiles to achieve the rendering of the visible BIM components in the visible area.

[0026] The engineering BIM model lightweight rendering method based on model semantic information provided by the present invention has the following advantages:

[0027] Through the method of the present invention, the efficiency of the octree index calculation of the engineering BIM model and the simplified calculation of model rendering can be improved, the data volume of simultaneously rendering the BIM model by the browser can be reduced, the utilization rate of hardware such as the GPU can be increased, the loading and rendering efficiency of the BIM model can be improved, more BIM models can be loaded simultaneously under the condition of the same hardware configuration, and the rendering application of a large number of BIM models is supported. BRIEF DESCRIPTION OF THE DRAWINGS

[0028] Figure 1 is the overall flowchart of the engineering BIM model lightweight rendering method based on model semantic information provided by the present invention;

[0029] Figure 2 is the schematic diagram of the optimized octree structure of the model provided by the present invention;

[0030] Figure 3 is the detailed flowchart of the engineering BIM model lightweight rendering method based on model semantic information provided by the present invention. DETAILED DESCRIPTION OF THE EMBODIMENTS

[0031] In order to make the technical problems, technical solutions and beneficial effects solved by the present invention clearer, the present invention will be further described in detail below with reference to the drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.

[0032] The present invention provides an engineering BIM model lightweight rendering method based on model semantic information, which relates to the visual rendering of three-dimensional models and engineering BIM models, and particularly relates to a method for performing occlusion culling calculation based on the semantic information of the BIM model when rendering a three-dimensional BIM model in a browser to achieve lightweight rendering, and is mainly applied to the lightweight rendering and application of BIM three-dimensional models in industries such as engineering digital twins and smart cities.

[0033] Refer to Figure 1 , the present invention provides an engineering BIM model lightweight rendering method based on model semantic information, including the following steps:

[0034] Step S1, the engineering BIM model includes multiple BIM components with a hierarchical relationship; the engineering BIM model is parsed to obtain the semantic information of the engineering BIM model; wherein, the semantic information of the engineering BIM model includes: the hierarchical inclusion relationship between BIM components, the texture material information of BIM components, and the geometric structure of BIM components; of course, the semantic information of the engineering BIM model can further include model indexes, design parameters, management attributes, etc.;

[0035] To further improve the rendering efficiency, the semantic information of the engineering BIM model further includes BIM component grouping information; the BIM component grouping information means that if multiple BIM components represent the same ground feature, through semantic association, multiple BIM components are regarded as an overall BIM component, and the BIM component contour is determined through the overall BIM component, and then its association relationship with the tile is determined. In the subsequent description, if a BIM component has grouping information, the BIM component in the following refers to the overall BIM component.

[0036] Step S2: Combining the semantic information of the engineering BIM model, perform octree space segmentation on the engineering BIM model to establish an optimized octree structure of the engineering BIM model; the optimized octree structure of the model is a multi-level tile structure corresponding to the contour of the engineering BIM model;

[0037] Refer to Figure 2 , step S2 is specifically as follows:

[0038] Step S2.1: According to the geometric structure of the engineering BIM model, determine the contour of the engineering BIM model, and then establish the minimum bounding box of the engineering BIM model as the tile at the 0th level;

[0039] Step S2.2: Divide the tile at the 0th level into 8 sub-tiles of the same size. The specific division method is: perform spatial octree division in the way of dividing the length, width and height of the tile at the 0th level into two equal parts to obtain 8 sub-tiles of the same size.

[0040] According to the engineering BIM model and the contours of BIM components at each level, if a certain sub-tile does not contain any patches of the BIM model and is a blank sub-tile, then filter out this sub-tile; the remaining sub-tiles are the sub-tiles of the tile at the 0th level and are also the tiles at the 1st level;

[0041] Of course, in practical applications, when filtering out each sub-tile, other solutions can also be selected. For example, a minimum size is preset; if the size of the BIM model contained in the sub-tile is smaller than the minimum size, then it is also filtered out.

[0042] Step S2.3: For each tile at the 1st level, if the size of the BIM model it contains is smaller than the size threshold, or if the number of patches of the BIM model it contains is smaller than the patch number threshold, then stop dividing it into the next level; otherwise, continue to divide it into 8 sub-tiles of the same size, and so on, so as to establish the optimized octree structure of the engineering BIM model.

[0043] Step S3: Obtain the semantic information of each tile at each level, including the relevant patch information of the BIM components directly contained in the tile and the BIM component inclusion relationship information;

[0044] The relevant patch information of the BIM component refers to the patch information of the BIM component located inside the tile; the BIM component inclusion relationship information means that for the BIM component A directly contained in the tile, if there are no other BIM components further contained inside it, it is recorded that the BIM component A has no inclusion relationship; if there is a BIM component B further contained inside it, then further judge the material of the BIM component A according to the texture material information of the BIM component. If there is a transparent material, it is recorded that the BIM component A and the BIM component B are in an inclusion visible relationship; otherwise, it is recorded that the BIM component A and the BIM component B are in an inclusion invisible relationship;

[0045] In practical applications, the patches contained in each BIM component can be determined according to the semantic naming relevance. According to the coordinates of each patch, the tile where it is located can be determined, so as to obtain the tile numbers corresponding to all the patches of the same BIM component, and thus obtain the relevant patch information of the BIM components directly contained in the tile.

[0046] Then, according to the semantic inclusion relationship of the BIM model, analyze the inclusion relationship of the multiple BIM components in each tile. If the BIM component X contains other BIM components Y, further judge the material of the BIM component X. If there is a transparent material, it is recorded that the BIM component X and the BIM component Y are in an inclusion visible relationship; otherwise, it is recorded that the BIM component X and the BIM component Y are in an inclusion invisible relationship. The relationship between the BIM component X and other BIM components is recorded as no relationship, so as to obtain the semantic information of each level of tiles; the semantic information of each level of tiles and the optimized structure of the model octree are logically associated through the same tile naming.

[0047] Step S4: Concurrency request the tiles at each level of the project BIM model through WebGPU technology in the browser, and calculate the position of the tile at the 0th level in the three-dimensional scene as the initial position; store the tiles at each level with a hierarchical relationship and the initial position;

[0048] For example, through the position and orientation of the tile at the 0th level in the three-dimensional scene, obtain the correct spatial positioning of the project BIM model in the three-dimensional scene as the model initial position and record it in the computer memory.

[0049] Step S5: Spatial culling based on the view frustum:

[0050] When rendering is required, first load the tiles at each level with a hierarchical relationship and display them in the three-dimensional scene according to the initial position of the tile at the 0th level;

[0051] Obtain a frustum based on the camera position of the three-dimensional scene, and calculate the intersection boundaries between the frustum and tiles at all levels; based on the intersection boundaries, determine the tiles at all levels located inside the intersection boundaries as the tiles in the visible area, and remove the tiles at other levels located in the invisible area;

[0052] A specific implementation method is as follows: obtain a frustum based on the camera position of the three-dimensional scene, perform intersection calculations between the frustum and tiles at all levels in the optimized structure of the model octree, and directly intersecting tiles are used as visible node tiles; retain the visible node tiles and the tiles at the first level inside each visible node tile, and remove the tiles at other levels.

[0053] Step S6, semantic culling based on model semantics:

[0054] According to the semantic information of the tiles at all levels in the visible area, render the relevant patches of the BIM components directly contained in the tiles. At the same time, for the directly contained BIM component, if there is a BIM component B with an invisible relationship inside it, automatically filter and do not render the BIM component B. If there is a BIM component B with a visible relationship inside it, render the BIM component B;

[0055] Thus, lightweight rendering of the engineering BIM model based on model semantic information is achieved.

[0056] Step S7, when the three-dimensional view is zoomed or panned, recalculate the frustum according to the new camera position, and repeat steps S5 to S6 to recalculate the tiles in the visible area and the semantic information of the tiles, so as to achieve the rendering of the visible BIM components in the visible area.

[0057] Therefore, based on WebGPU, rendering of the visible nodes of the model is achieved, and the data volume of model rendering is reduced through two-level occlusion culling calculation, realizing lightweight rendering of the BIM model.

[0058] The present invention aims to provide a method for front - end lightweight rendering applicable to a large number of engineering BIM models. First, extract and store the semantic information (texture type, component size, inclusion relationship, etc.) of the engineering BIM model; secondly, divide the octree structure according to the minimum bounding volume of the BIM model, and analyze each level of tiles in combination with the semantic information, and store relevant semantic information (inclusion relationship, semantic category, index number, etc.) for each tile; then, when rendering the BIM model in the front - end browser, reduce the network requests of the model through frustum culling calculation, and reduce the model rendering amount through semantic culling calculation; finally, through the combination of frustum culling and semantic culling calculation, use the WebGPU technology rendering technology in the browser to achieve lightweight rendering of the BIM model. Through this method, the efficiency of octree index calculation and model rendering simplification calculation of the engineering BIM model can be improved, the data volume of rendering the BIM model in the browser at the same time can be reduced, the utilization rate of hardware such as GPU can be increased, and more BIM models can be loaded simultaneously under the condition of the same hardware configuration, supporting the rendering application of a large number of BIM models.

[0059] The following introduces an embodiment:

[0060] Step 1: Parse the semantic information of the engineering BIM model

[0061] a. Parse the name keywords in the semantics of the engineering BIM model, and judge the association or inclusion relationship of multiple BIM components through the semantic relevance of the BIM component naming or grouping information. If multiple BIM components represent the same ground object, calculate the BIM component contour by taking multiple BIM components as a whole BIM component through semantic association, and obtain the BIM component contour of each ground object group.

[0062] b. Extract information such as the model type of the BIM model, BIM component grouping information, BIM component inclusion relationship, model index, BIM component geometric structure, BIM component texture material information, BIM component design parameters, management attributes, etc., to form an initial model group semantic library;

[0063] Step 2: BIM model tile space segmentation combined with the semantic information of the engineering BIM model

[0064] a. Parse the minimum bounding volume contour calculated from the BIM model as the tile of the 0th level;

[0065] The length, width, and height of the minimum bounding volume contour are divided step by step in a halving manner to form tiles at each level. Among them, when performing spatial octree partitioning on the BIM model, if the tile of an octree node does not contain any BIM model triangular faces, that node is filtered out. During the octree partitioning process, the order of magnitude of each tile is judged. If the size of the BIM model within the tile is less than the size threshold or the total number of faces is less than the face threshold, the octree partitioning stops; otherwise, the partitioning continues. In this way, the optimized octree structure R of the model can be obtained. A ;

[0066] Step 3: During the octree partitioning process, the BIM components contained in each tile are parsed in real time. First, according to the semantic grouping information and semantic naming information of the BIM components, multiple constituent faces of the same BIM component can be identified. Then, based on the face coordinates, the octree tile where it is located can be calculated, and the serial numbers of all tiles storing the same BIM component can be known. Again, according to the semantic inclusion relationship of the BIM model, it is parsed whether there is an inclusion relationship among multiple BIM components within the tile. If BIM component X contains other BIM component Y, and at the same time, according to the semantic material information of the BIM model, if there is a transparent material, record that BIM component X and BIM component Y are in an inclusion visible relationship; otherwise, record that BIM component X and BIM component Y are in an inclusion invisible relationship. Other model relationships are default recorded as no relationship. In this way, the semantic information R of each level of tiles can be obtained. DB ;

[0067] c. The optimized octree structure R of the model A and the semantic information R of the tiles DB are stored using the same tile naming but different suffixes, based on which the logical association between the two can be realized.

[0068] Step 4: Request the tile data of the BIM model through WebGPU technology in the browser, read the tiles at the 0th level of the optimized octree structure R A of the model, calculate the correct coordinates and azimuth angles of the tiles at the 0th level in the three-dimensional scene, and record the initial position of the working model in the computer memory.

[0069] Step 5: Spatial culling calculation based on the view frustum

[0070] a. Calculate the view frustum according to the camera position in the three-dimensional scene. The view frustum is surrounded by six planes: the near plane z1, the far plane z2, the top plane y1, the bottom plane y2, the left plane x1, and the right plane x2. At the same time, according to the definition of the three-dimensional rendering camera, it can be known that: the closest distance between the rendering camera and the model is n, the farthest distance between the rendering camera and the model is f, the horizontal field of view FOV of the camera x , the vertical field of view FOV of the camera y

[0071] Frustum calculation:

[0072] Near plane z1: The plane established at the position of the nearest distance n from the model;

[0073] Far plane z2: The plane established at the position of the farthest distance f from the model;

[0074] The coordinate range of the top plane y1 is n / tan(FOV y / 2) to f / tan(FOV y / 2)

[0075] The coordinate range of the bottom plane y2 is -n / tan(FOV y / 2) to -f / tan(FOV y / 2)

[0076] The coordinate range of the left side x1 is -n / tan(FOV x / 2) to -f / tan(FOV x / 2)

[0077] The coordinate range of the right side x2 is n / tan(FOV x / 2) to F / tan(FOV x / 2)

[0078] b. The model octree tiles at each level correspond to rendering different model precisions. According to the distance between the camera and the model, the corresponding octree level Tree-n can be known. By finding the intersection of the frustum and the tiles at the 0th level, the coordinate range of the visible area can be known. Traverse the optimized structure R of the model octree A For all the BIM component patches of the tiles at the Tree-n level in R, if the coordinates of the BIM component patches are within the coordinate range of the visible area, then request the BIM component patches corresponding to the model serial numbers of the corresponding nodes at the corresponding level through a network request to reduce the network request volume of the model;

[0079] Step 6. Semantic culling calculation based on model semantics

[0080] When requesting tiles, request the semantic information Linfo-n of the corresponding tiles from the semantic information R DB of the tiles. According to the semantic information Linfo-n, automatically filter out the BIM components with an invisible inclusion relationship during 3D rendering and only render other BIM components to reduce the data volume of model rendering;

[0081] Step 7: When the three-dimensional view is zoomed or panned, recalculate the viewing frustum according to the new camera position, repeat Steps 5 to 6, recalculate the model octree nodes TreeN and semantic information LinfoN of the visible area, and implement the rendering of the node models based on the WebGPU technology. Through two-level culling calculations, the data volume of the network transmission model is reduced, the amount of models rendered simultaneously is decreased, and the lightweight rendering of the BIM model is achieved.

[0082] Compared with ordinary three-dimensional models, BIM models have more grouping and management attribute information, etc. With the help of model semantic information, the judgment of model logical relationships can be carried out. The WebGPU technology has technical characteristics such as multi-threaded parallel computing, high-performance graphics rendering, and low communication overhead, and can better support the spatial operations of octree tiles. The method of the present invention innovatively involves the BIM model semantic information in the spatial occlusion calculation, and realizes the viewing frustum culling and semantic culling calculations of the BIM model with the help of the efficient multi-threaded computing technology of WebGPU, reduces the model network request volume and the data volume required for rendering, improves the speed and accuracy of spatial operations, can achieve the lightweight rendering of the BIM model, can carry more three-dimensional model renderings under the same hardware conditions, reduces the usage difficulty of the BIM model, and helps the popularization and use of the BIM model.

[0083] The above are only the preferred embodiments of the present invention. It should be noted that for those of ordinary skill in the art, without departing from the principle of the present invention, several improvements and refinements can be made, and these improvements and refinements should also fall within the protection scope of the present invention.

Claims

1. An engineering BIM model lightweight rendering method based on model semantic information, characterized in that Including the following steps: Step S1, the engineering BIM model includes multiple BIM components with a hierarchical relationship; Analyze the engineering BIM model to obtain the semantic information of the engineering BIM model; wherein, the semantic information of the engineering BIM model includes: the hierarchical inclusion relationship between BIM components, the texture and material information of BIM components, and the geometric structure of BIM components; Step S2, combine the semantic information of the engineering BIM model, perform octree space segmentation on the engineering BIM model, and establish an optimized octree structure of the engineering BIM model; the optimized octree structure of the model is a multi-level tile structure corresponding to the outline of the engineering BIM model; Step S3, obtain the semantic information of each tile at each level, including the relevant patch information of the BIM components directly included in the tile and the BIM component inclusion relationship information; The relevant patch information of the BIM component refers to the patch information of the BIM component located inside the tile; the BIM component inclusion relationship information means that for the BIM component A directly included in the tile, if there is no further inclusion of other BIM components inside it, it is recorded that the BIM component A has no inclusion relationship; if there is further inclusion of the BIM component B inside it, then further judge the material of the BIM component A according to the texture and material information of the BIM component. If there is a transparent material, it is recorded that the BIM component A and the BIM component B are in an inclusion visible relationship; otherwise, it is recorded that the BIM component A and the BIM component B are in an inclusion invisible relationship; Step S4, concurrently request the tiles at each level of the engineering BIM model through the WebGPU technology in the browser, and calculate the position of the tile at the 0th level in the three-dimensional scene as the initial position; store the tiles at each level with a hierarchical relationship and the initial position; Step S5, spatial culling based on the view frustum: When rendering is required, first load the tiles at each level with a hierarchical relationship and display them in the three-dimensional scene according to the initial position of the tile at the 0th level; Obtain the view frustum according to the camera position in the three-dimensional scene, calculate the intersection boundary between the view frustum and the tiles at each level; according to the intersection boundary, determine the tiles at each level located inside the intersection boundary as the tiles in the visible area, and cull the tiles at other levels located in the invisible area; Step S10, semantic culling based on model semantics: According to the semantic information of the tiles at each level in the visible area, render the relevant patches of the BIM components directly included in the tiles. At the same time, for the directly included BIM component, if there is a BIM component B with an inclusion invisible relationship inside it, then automatically filter and do not render the BIM component B. If there is a BIM component B with an inclusion visible relationship inside it, then render the BIM component B; Thus, lightweight rendering of the engineering BIM model based on model semantic information is realized.

2. The lightweight rendering method of an engineering BIM model based on model semantic information according to claim 1, characterized in that, The semantic information of the engineering BIM model further includes BIM component grouping information; the BIM component grouping information means that if multiple BIM components represent the same feature, the multiple BIM components are regarded as an overall BIM component through semantic association, and the contour of the BIM component is determined through the overall BIM component, and then the association relationship with the tile is determined.

3. A lightweight rendering method for engineering BIM models based on model semantic information according to claim 1, characterized in that, Step S2 is specifically as follows: Step S2.1, according to the geometric structure of the engineering BIM model, determine the contour of the engineering BIM model, and then establish the minimum bounding volume of the engineering BIM model as the tile of the 0th level. Step S2.2, divide the tile of the 0th level into 8 sub-tiles of the same size. If a certain sub-tile does not contain any patches of the BIM model, remove the sub-tile; the remaining sub-tiles are the sub-tiles of the tile of the 0th level and at the same time the tiles of the 1st level. Step S2.3, for each tile of the 1st level, if the size of the BIM model it contains is less than the size threshold, or if the number of patches of the BIM model it contains is less than the patch number threshold, stop dividing it into the next level. Otherwise, continue to divide it into 8 sub-tiles of the same size, and so on, so as to establish the optimized model octree structure of the engineering BIM model.

4. A lightweight rendering method for engineering BIM models based on model semantic information according to claim 1, characterized in that, It also includes: Step S7, when the three-dimensional view is zoomed or panned, recalculate the viewing frustum according to the new camera position, repeat steps S5 to S6, recalculate the tiles of the visible area and the semantic information of the tiles, and realize the rendering of the visible BIM components in the visible area.

Citation Information

Patent Citations

  • Accelerated rendering method of scene model

    CN110910505A

  • Granularity index construction method for large-scale BIM building data

    CN111930825A