CN112347546A - BIM rendering method, device and computer-readable storage medium based on lightweight device - Google Patents
BIM rendering method, device and computer-readable storage medium based on lightweight device Download PDFInfo
- Publication number
- CN112347546A CN112347546A CN202011378459.7A CN202011378459A CN112347546A CN 112347546 A CN112347546 A CN 112347546A CN 202011378459 A CN202011378459 A CN 202011378459A CN 112347546 A CN112347546 A CN 112347546A
- Authority
- CN
- China
- Prior art keywords
- building
- dimensional
- bounding box
- tree structure
- model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/13—Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
- G06F30/23—Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/10—Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Geometry (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- Architecture (AREA)
- Evolutionary Computation (AREA)
- Civil Engineering (AREA)
- Structural Engineering (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Image Generation (AREA)
Abstract
The application relates to the field of computer graphics, and provides a BIM rendering method and device based on a lightweight device and a computer readable storage medium, so as to prevent program flash back while accelerating BIM rendering. The method comprises the following steps: analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model according to the geometric structure data of the three-dimensional building model; generating a corresponding hierarchical bounding box tree structure, a binary-partition space tree structure or an octree structure according to an analysis result of analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model so as to record the information of the three-dimensional building model; and reading the information of the building three-dimensional model from the memory based on an algorithm of a hierarchical bounding box tree structure, a binary division space tree structure or an octree structure, and rendering the effective part of the building three-dimensional model. According to the technical scheme, the occupation of the memory can be saved when the building three-dimensional model is rendered, so that the rendering process can be accelerated.
Description
Technical Field
The invention relates to the field of computer graphics, in particular to a BIM rendering method and device based on lightweight equipment and a computer readable storage medium.
Background
Building Information Modeling (BIM) is based on various relevant Information data of a construction project, Building models are built, and real Information of buildings is simulated through digital Information. For visualization or other purposes, the BIM is generally rendered on a display device of an electronic device such as a computer (e.g., a personal computer, etc.).
With the development of the intelligent mobile terminal technology, the functions of the central processing unit of the intelligent mobile terminal are increasingly powerful, and many BIMs which must be rendered on powerful electronic devices such as personal computers and the like can also be selectively rendered on light-weight devices such as the intelligent mobile terminal and the like. The existing method for rendering the BIM on the light-weight equipment is a rendering method based on grid combination, and specifically, multiple grids which are made of the same material and are in one BIM or multiple BIMs are combined into one grid, the previous grid is deleted, and then the target BIM after grid combination is rendered. Because the number of grids is reduced, the method causes that a CPU (central Processing Unit) needs to call a GPU (Graphics Processing Unit) for Processing the rendering for many times to finish the rendering with a small number of calls.
However, although the original mesh is deleted, the instantaneous memory usage increase still occurs when rendering the merged BIM, especially the BIM with a large volume, and the instantaneous memory increase is likely to cause memory overflow, thereby causing the program to flash back.
Disclosure of Invention
The application provides a BIM rendering method, equipment and a computer readable storage medium based on a lightweight device, so that program flash back is prevented while BIM rendering is accelerated.
In one aspect, the present application provides a BIM rendering method based on a lightweight device, including:
loading geometric structure data of the three-dimensional model of the building;
analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model according to the geometric structure data of the three-dimensional building model;
generating a corresponding hierarchical bounding box tree structure, a binary-partition space tree structure or an octree structure according to an analysis result of analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model so as to record the information of the three-dimensional building model;
and reading the information of the building three-dimensional model from a memory based on the algorithm of the hierarchical bounding box tree structure, the binary division space tree structure or the octree structure, and rendering the effective part of the building three-dimensional model.
On the other hand, the application provides a BIM rendering apparatus based on lightweight devices, including:
the loading module is used for loading the geometric structure data of the three-dimensional model of the building;
the analysis module is used for analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model according to the geometric structure data of the three-dimensional building model;
the tree structure generating module is used for generating a corresponding hierarchical bounding box tree structure, a binary division space tree structure or an octree structure according to an analysis result of analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model so as to record the information of the three-dimensional building model;
and the rendering module is used for reading the information of the building three-dimensional model from a memory based on the algorithm of the hierarchical bounding box tree structure, the binary division space tree structure or the octree structure and rendering the effective part of the building three-dimensional model.
In a third aspect, the present application provides an apparatus comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the method according to the above technical solution when executing the computer program.
In a fourth aspect, the present application provides a computer-readable storage medium, in which a computer program is stored, which computer program, when being executed by a processor, carries out the steps of the method according to the above-mentioned solution.
According to the technical scheme provided by the application, the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model are analyzed according to the geometric structure data of the three-dimensional building model, and the proper spatial data structure is reasonably selected and used to record the information of the three-dimensional building model according to the analysis result. Compared with the prior art, the technical scheme of the application abandons a scheme of mesh merging, and different spatial data structures are generated, so that the occupation of a memory can be saved when the information of the building three-dimensional model is read from the memory to render the effective part of the building three-dimensional model based on the algorithm of the hierarchical bounding box tree structure, the binary partition spatial tree structure or the octree structure, and the rendering process can be accelerated.
Drawings
In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, it is obvious that the drawings in the following description are only some embodiments of the present application, and for those skilled in the art, other drawings can be obtained according to the drawings without creative efforts.
Fig. 1 is a flowchart of a BIM rendering method based on a lightweight device according to an embodiment of the present disclosure;
FIG. 2a is a schematic diagram of a hierarchical bounding box tree structure provided in an embodiment of the present application, corresponding to a scene, including 6 objects;
FIG. 2b is a schematic diagram of a hierarchical bounding box tree structure corresponding to a scene containing 6 objects according to an embodiment of the present disclosure;
FIG. 3 is a schematic diagram illustrating generation of a binary partitioned spatial tree structure according to an embodiment of the present application;
FIG. 4 is a schematic diagram illustrating generation of an octree structure according to an embodiment of the present disclosure;
FIG. 5 is a schematic diagram of a projection and view cone inclusion of the three-dimensional building model divided by octree according to the embodiment of the present application;
fig. 6 is a schematic structural diagram of a BIM rendering apparatus based on a lightweight device according to an embodiment of the present application;
fig. 7 is a schematic structural diagram of an apparatus provided in an embodiment of the present application.
Detailed Description
The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application, and it is obvious that the described embodiments are only a part of the embodiments of the present application, and not all of the embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
In this specification, adjectives such as first and second may only be used to distinguish one element or action from another, without necessarily requiring or implying any actual such relationship or order. References to an element or component or step (etc.) should not be construed as limited to only one of the element, component, or step, but rather to one or more of the element, component, or step, etc., where the context permits.
In the present specification, the sizes of the respective portions shown in the drawings are not drawn in an actual proportional relationship for the convenience of description.
The application provides a BIM rendering method based on lightweight devices, as shown in fig. 1, which mainly includes steps S101 to S104, as detailed below:
step S101: and loading the geometric structure data of the three-dimensional model of the building.
In the embodiment of the present application, the geometric data of the building three-dimensional model may be the shape and number of patches included in the model, and vertex information of the patches, for example, coordinates of vertices in the model space, and the like. Geometric structure data of the building three-dimensional model can be loaded into a video memory of a Graphics Processing Unit (GPU) used in rendering.
Step S102: and analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model according to the geometric structure data of the three-dimensional building model.
Different three-dimensional models have different characteristics, for example, some three-dimensional models have quite complicated structures and are very irregular, some three-dimensional models have large volume (including numerous patches and vertex numbers, etc.), and some three-dimensional models are static, dynamic or change into dynamic or static with scenes, etc. Therefore, the complexity, the dynamic and static characteristics and/or the geometric features of the building three-dimensional model need to be analyzed according to the loaded geometric structure data of the building three-dimensional model, so as to adopt different processing schemes according to different analysis results.
Step S103: and generating a corresponding hierarchical bounding box tree structure, a binary-split space tree structure or an octree structure according to the analysis result of analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model so as to record the information of the three-dimensional building model.
In the embodiment of the present application, a hierarchical bounding box tree structure, a Binary Space Partitioning (BSP) tree structure, or an Octree (Octree) structure all belong to a Spatial Data structure (Spatial Data Structures). A spatial data structure is a series of data structures that organize geometry in an n-dimensional space, and in general, a spatial data structure belongs to a hierarchy structure, i.e., the top layer includes the levels below it, and the latter includes the levels below it, and so on, so that the spatial data structure has the characteristics of nesting and recursion. Of the three spatial data structures, namely, the hierarchical bounding box tree structure, the binary partition spatial tree structure and the Octree structure, the BSP tree structure and the Octree (Octree) structure belong to a data structure based on spatial Subdivision (Space Subdivision), that is, the data structure subdivides and encodes the entire scene Space into the data structure, for example, the spatial set of all leaf nodes is equivalent to the entire scene Space, and the leaf nodes do not overlap with each other. In the embodiment of the present application, the information of the three-dimensional building model recorded by the spatial data structures such as the hierarchical bounding box tree structure, the binary-partitioned spatial tree structure, or the octree structure mainly includes geometric structure data and material data, where the geometric structure data includes a geometric body of the three-dimensional building model and vertex coordinates, normal data, and UV coordinates of a patch included in the geometric body, and the patch includes a triangular patch, a quadrangular patch, and the material data is data formed by the material used by the patch, including color, texture, smoothness, transparency, reflectivity, refractive index, luminosity, or a combination of these properties of the patch surface, and the like.
As an embodiment of the present application, according to an analysis result of analyzing complexity, dynamic and static characteristics and/or geometric features of a three-dimensional model of a building, generating a corresponding hierarchical bounding box tree structure may be performed through step Sa1031 and step Sa1032, the following is illustrated:
step Sa1031: if the analysis result obtained by the analysis of the step S102 is that the building three-dimensional model belongs to a simple three-dimensional model, leaf nodes are created for a single object by adopting a top-down tree construction method, and iteration is performed layer by layer until a first-layer bounding box tree structure is created.
In the embodiment of the present application, a method for determining whether a building three-dimensional model belongs to a simple three-dimensional model is as follows: firstly, setting system threshold values of scenes aiming at different scenes, then, carrying out complexity classification on all building three-dimensional models in the scenes, if the number of vertexes of patches of the building three-dimensional models is larger than the threshold value, classifying the building three-dimensional models into the classes of the complex three-dimensional models, and otherwise, classifying the objects into the classes of the simple three-dimensional models. If the analysis result obtained in step S103 is that the building three-dimensional model belongs to a simple three-dimensional model, a corresponding hierarchical Bounding Box (BVH) tree structure is generated, so-called BVH tree, which is a binary tree and can be used for managing the model in the three-dimensional scene, that is, the model is bounded by a simple Bounding box, and the Bounding box is used as a node to construct the binary tree, so as to manage the geometric structure data and the material information in the three-dimensional scene data, in other words, the BVH tree structure can be used to manage the structure information, the material information, and the connection relationship with other models of the model in the three-dimensional scene. Fig. 2a and 2b are schematic diagrams of a hierarchical bounding box tree structure provided by the embodiment of the present application, where fig. 2a is a simple scene containing 6 objects, each object is enclosed by a bounding sphere, and the bounding spheres can be grouped into a larger bounding sphere, and pushed inward until all objects are surrounded by the largest sphere; fig. 2b is a left-side corresponding BVH tree structure, which is used to indicate the object hierarchy of the left graph, and the bounding volume of the root node includes all objects in the scene, and it can be seen that the scene is organized in a hierarchical tree structure, and includes a root node (root), some internal nodes (internal nodes), and some leaf nodes (leaves). The top node is the root, which has no parent, the leaf node (leaf node) contains the actual geometry to be rendered, and it has no children. In contrast, an internal node contains pointers to its child nodes. Thus, the root node is an internal node as long as it is not the only node in the tree. Each node in the tree, including the leaf nodes, has an enclosure that encloses all the geometries in its subtree, and also illustrates that the root node has an enclosure that contains the entire scene.
The embodiment of the application can be realized by adopting a top-down tree construction method to create leaf nodes for a single object and iterating layer by layer until a first-layer bounding box tree structure is created.
Step Sa1032: when the scene changes dynamically, the bounding box of each object in the scene is used as a node, the first-level bounding box tree structure is updated in a bottom-up mode, and a second-level bounding box tree structure is generated.
Specifically, when a scene changes dynamically, the original bounding box logic structure of a single object at the bottom layer does not change, the data structure at the bottom layer is updated rapidly by using a top-down tree construction method, then, the bounding box of each object in the scene is used as a node, the first-level bounding box tree structure is updated in a bottom-up mode, and the second-level bounding box tree structure is generated. Obviously, when the hierarchical bounding box tree structure is generated, the updating of the hierarchical bounding box tree structure when a scene changes dynamically is considered.
As another embodiment of the present application, according to an analysis result of analyzing the complexity, dynamic and static characteristics and/or geometric features of the three-dimensional building model, the step S of generating the corresponding hierarchical bounding box tree structure may further be performedb1031 and step Sb1032, the following is illustrated:
step Sb1031: if the analysis result obtained by the analysis of the step S102 is that the building three-dimensional model belongs to a simple three-dimensional model, the bounding box surrounding the building three-dimensional model is spatially divided according to the geometric structure data of the building three-dimensional model.
In the embodiment of the application, the bounding box surrounding the building three-dimensional model is spatially divided on different dividing axes according to the geometric structure data of the building three-dimensional model, the dividing axes are set in relation to the coordinate system where the building three-dimensional model is located, and when the building three-dimensional model is in the X, Y, Z three-dimensional coordinate system, the dividing axes need to be parallel to any one of the X, Y, Z axes. And each generated division space is used for establishing a corresponding node for the newly generated division space so as to record the information of the patch in the division space.
Step Sb1032: and constructing a hierarchical bounding box tree structure based on a clustering method according to the size relation between the number of the tiles in the divided space and a preset threshold value.
The size of the preset threshold is set according to the application requirement, after the preset threshold is determined, the node can be generated according to the size relation between the number of the tiles in the divided space and the preset threshold, and the information corresponding to the node is stored. When the number of the patches in the divided space is greater than a preset threshold value, generating a non-leaf node, storing bounding box information surrounding all the patches in the divided space to the non-leaf node, and when the number of the patches in the divided space is not greater than the preset threshold value, generating a leaf node, and storing attribute information of the patches in the divided space to the leaf node.
In order to further improve the speed of building the BVH tree structure, in the embodiment of the present application, when building a subtree node of the BVH tree, the node may be clustered, and one method is: a fixed number, for example 7 leaf nodes, are searched downwards from the current node to form a subtree node; then, calculating the distances among leaf nodes with the same fixed number (for example, 7) under the fixed number of the quantum tree nodes and storing the distances in a distance matrix; and each time, a fixed number of threads, such as 14 threads, are used for parallel reservation and selection of two nodes with the minimum distance in the distance matrix as clustering objects to form a new internal node, the two nodes are replaced by the node, and the distance matrix is updated until the root node of the subtree node. The above clustering of the nodes may also be: clustering the patches in the current bounding box into four groups according to the spatial position relationship of the patches contained in the bounding box of the current node, forming a new bounding box for each group, taking the generated four bounding boxes as four sub-nodes of the current node, and storing the geometric information of the four sub-nodes in the data domain of the current node; then, clustering operation is performed on the four child nodes.
In another embodiment of the present application, generating a corresponding binary split spatial tree structure according to an analysis result of analyzing the complexity, dynamic and static characteristics and/or geometric features of the three-dimensional building model may be performed through step Sc1031 and step Sc1032, the following is illustrated:
step Sc1031: and according to the analysis result of analyzing the geometric characteristics of the three-dimensional building model, continuously dividing the space of the three-dimensional building model into a forward space and a backward space by taking the cutting surface with the directional attribute as a boundary until the divided forward space and the divided backward space are atomic spaces.
Specifically, an intersection line segment of a cutting surface and a geometric surface of the building three-dimensional model can be calculated, and under the constraint of the intersection line segment, triangular segmentation calculation is respectively carried out on the geometric surface of a triangle of the cutting surface generating the intersection line segment, so that a triangular mesh and the geometric surface of the cutting surface with the intersection line segment as the constraint are obtained. Then, the space of the three-dimensional model is continuously divided into a forward space and a backward space by using the cutting surface with the directional property as a boundary until the divided forward space and backward space are atomic spaces (the atomic space is a space which can not be cut any more). Taking fig. 3 as an example, the space represented by a is divided into two subspaces, namely, a B subspace and a C subspace, by using the first directed hyperplane (i.e., the cut plane with directional property in the above embodiment) X, and then, for the subspace B, the space represented by a is divided into two subspaces, namely, a D subspace and an E subspace, by using the second directed hyperplane Y, … …, and so on, each subspace can be cut up to an atomic space that cannot be subdivided.
From the above analysis, each node of the BSP tree represents a directed hyperplane that divides the current space into forward (front) space and backward (back) space. As for whether the space is the forward space or the backward space to the bottom, it can be determined using the plane equation Ax + By + Cz + D of 0, specifically, for any point (x) in the space S0,y0,z0) Substituted into the plane equation Ax0+By0+Cz0+ D ═ 0; calculating the value of parameter D, i.e. D (x)0,y0,z0)=-Ax0-By0-Cz0(ii) a If D is>0, the space S is before the directed hyperplane, i.e., the space S is a forward space, if D is 0, the space S is above the directed hyperplane, if D is<0, then the space S is behind the directed hyperplane, i.e., the space S is a back space.
Step Sc1032: and generating a binary partition space tree structure by taking the forward space of the forward space or the atom as a left subtree or a leaf node and taking the forward space of the backward space or the atom as a right subtree or a leaf node.
And generating a binary partition space tree structure by taking the forward space of the forward space or the atom as a left subtree or a leaf node and taking the forward space of the backward space or the atom as a right subtree or a leaf node.
In another embodiment of the present application, the building is modeled based on a complex of the three-dimensional model of the buildingThe analysis result of the analysis of the hybrid, the dynamic and static characteristics and/or the geometric characteristics to generate the corresponding binary split space tree structure can be obtained through the step Sd1031 to step Sd1034 implementation, illustrated below:
step Sd1031: and setting parameters of the octree to be constructed.
Specifically, it may be to set the number of layers of the octree to be constructed, the maximum number of nodes that each leaf, i.e., subspace, can contain, and the like.
Step Sd1032: and traversing all the geometric nodes, and calculating the size of the bounding box of the root node.
Step Sd1033: the bounding box of the root node is uniformly divided into eight parts, and all the geometric nodes under the parent node are classified into the eight spaces respectively according to an intersection detection algorithm.
In the embodiment of the application, the octree is a tree-shaped data structure describing a three-dimensional space, each node of the octree represents a cubic volume element, each node has eight child nodes, and the volume elements represented by the eight child nodes are added together to be equal to the volume of a parent node. In other words, the space division manner of the octree is to recursively perform the regular 1-to-8 operation on each node. As shown in fig. 4, a cube is divided into eight small cubes with the same size, and then a smaller cube is recursively divided, so that a structure of comparison rules can be obtained, and query becomes efficient.
Step Sd1034: and carrying out recursive calling to divide all child nodes.
Specifically, the bounding box after the nth division is subjected to octree division processing in an XYZ coordinate axis, and is divided into 8 bounding boxes after the (n + 1) th division, wherein n is a natural number; the following processing is performed for each bounding box after the n +1 th division: if the vertexes of the bounding boxes in the partitioned bounding boxes are all in one octree node, determining the octree node as the octree node where the building three-dimensional model is located; if the building three-dimensional model is not in the same octree node, determining the octree node where the central point of the bounding box of the building three-dimensional model is located as the octree node where the building three-dimensional model is located; judging whether the number of building three-dimensional model surface pieces in the octree nodes is larger than a first preset threshold value or not, and if so, determining the octree nodes as octree leaf nodes; and if the number of the building three-dimensional model slices in the octree nodes is not more than a first preset value, updating the value of n, and executing segmentation processing again on the n-th segmented enclosure in the octree nodes which is more than the first preset value.
In the above-described embodiment, although the center point of the volume element is generally used as the bifurcation center of the node, in order to prevent the occurrence of node fragments, it is also possible to calculate the division center according to the distribution density of the data so that the data can be more uniformly distributed among the child nodes after being divided, and specifically, calculate the dispersion of the data in the direction X, Y, Z, that is, the variances DX, DY, DZ, respectively, and decide the number of divisions according to the magnitude relationship between the three variances; if DX is a certain multiple of DY or DZ, dividing the model into two blocks in the x-axis direction, and analogizing the other directions in turn; if the three variance values are close in size, the three variance values are divided into eight blocks. Therefore, the occurrence of fragments can be reduced by uniformly dividing the model, the number of obtained division results is less, and the rendering speed is higher.
Step S104: and reading the information of the building three-dimensional model from the memory based on an algorithm of a hierarchical bounding box tree structure, a binary division space tree structure or an octree structure, and rendering the effective part of the building three-dimensional model.
Corresponding to the above step Sa1031 to step Sa1032, the method may further include reading information of the three-dimensional building model from the memory based on the algorithm of the hierarchical bounding box tree structure, and rendering the effective portion of the three-dimensional building model through step Sa1041 to step Sa1044, as illustrated below:
step Sa1041: and judging whether the ray emitted from the viewpoint intersects with the bounding box corresponding to the node of the hierarchical bounding box tree structure.
Step Sa1042: if the ray from the viewpoint intersects with the bounding box corresponding to the node of the hierarchical bounding box tree structureAnd further judging whether the intersected nodes correspond to the bounding boxes or not.
If the current ray emitted from the viewpoint is not intersected with the bounding box corresponding to the node of the hierarchical bounding box tree structure, indicating that the current ray is not intersected with the scene, and ending the ray tracing of the current ray; on the contrary, if the light ray emitted from the viewpoint intersects with the bounding box corresponding to the node of the hierarchical bounding box tree structure, whether the bounding box corresponding to the intersected node has a primitive is further judged.
Step Sa1043: if the intersected node has a primitive corresponding to the bounding box, continuing ray tracing, otherwise, ending the ray tracing.
Step Sa1044: and recursively judging each ray starting from the viewpoint until the rendering picture of the effective part of the building three-dimensional model is output after the judgment is finished.
Corresponding to the above step Sb1031 to step Sb1032, the method may further include reading information of the three-dimensional building model from the memory based on the algorithm of the hierarchical bounding box tree structure, and rendering the effective portion of the three-dimensional building model through step Sb1041 to step Sb1043, illustrated below:
step Sb1041: and reversely serializing the information of the building three-dimensional model read from the memory into a hierarchical bounding box tree.
Step Sb1042: and performing scene intersection on the bounding boxes corresponding to the nodes of the hierarchical bounding box tree by adopting a less-stack intersection method to determine an intersection result.
Step Sb1043: and performing ray tracing rendering according to the intersection result.
Corresponding to the above step Sc1031 to step Sc1032, in the embodiment, based on the algorithm of the binary-partition spatial tree structure, the information of the building three-dimensional model is read from the memory, and the rendering of the effective part of the building three-dimensional model may be: judging a space needing rendering currently in the building three-dimensional model according to the application scene; if the space needing rendering currently in the three-dimensional building model is a forward space, reading records of left sub-trees or leaf nodes of a binary partition space tree structureRendering a forward space corresponding to the left sub-tree or the left leaf sub-node; and if the space needing to be rendered in the three-dimensional building model is a back space, reading information recorded by a right sub-tree or a right leaf sub-node of the binary partition space tree structure, and rendering the back space corresponding to the right sub-tree or the right leaf sub-node.
Considering that visibility culling, such as view culling, occlusion culling, and backface culling, is a very important part in large-scale scene rendering, it is possible to cull a large number of objects outside the view, greatly reduce the number of primitives sent into the graphics rendering pass, and thus greatly increase the rendering speed, corresponding to step S described aboved1031 to step Sd1034 an embodiment, based on the octree structure algorithm, reads the information of the building three-dimensional model from the memory, and the rendering of the effective part of the building three-dimensional model may be: traversing downwards from a root node of an octree structure to search a minimum octree node containing the whole view cone, recording the minimum octree node in a set variable after the minimum octree node is found, and recording the minimum octree node as the root node if the minimum octree node is not found, wherein the root node is used as an initial node for next judgment; traversing all leaf nodes under the node, if the leaf nodes are completely positioned in the view cone, marking and displaying all geometric nodes, if the leaf nodes are only intersected with the view cone, carrying out bounding box intersection detection, judging whether relevant geometric nodes are displayed, starting from the recorded nodes to find a new initial node downwards in the subsequent judgment, and if the nodes cannot contain the whole view cone, finding a minimum node containing the view cone upwards as the new initial node. As shown in fig. 5, which is a top view of the building three-dimensional model divided by the octree, each square represents one or a group of objects, the dots represent the positions of the cameras, i.e., the viewpoint positions, and the area enclosed by the included angle formed by two rays from the viewpoint positions is a projection view of the view frustum. Objects inside the cone are visible and objects outside the cone are invisible. For invisible objects, clipping is needed to reduce the rendering pressure of lightweight devices (e.g., smartphones), and therefore, the intersection of each object with the view frustum needs to be judged,the specific method comprises the following steps: starting from the largest square grid, if the large square grid is completely outside the view frustum, directly cutting off all objects in the large square grid, namely not sending the objects in the large square grid into a graphics rendering channel; if the large square grid is completely in the view frustum, all the objects in the large square grid are the objects needing to be rendered, namely the objects in the large square grid are required to be sent to a graphic rendering channel for rendering; if the large square grid intersects with the view frustum, repeating the operation on the square grids with the inner size smaller than that of the large square grid until all the square grids are judged. It can be seen that, after the octree structure is used, if a square is completely in or out of the cone, whether the object in the square is in or out of the cone is not judged, thereby reducing the calculation amount.
As can be seen from the BIM rendering method based on lightweight devices illustrated in fig. 1, the complexity, dynamic and static characteristics and/or geometric features of the three-dimensional building model are analyzed according to the geometric structure data of the three-dimensional building model, and then the appropriate spatial data structure is reasonably selected and used to record the information of the three-dimensional building model according to the analysis result. Compared with the prior art, the technical scheme of the application abandons a scheme of mesh merging, and different spatial data structures are generated, so that the occupation of a memory can be saved when the information of the building three-dimensional model is read from the memory to render the effective part of the building three-dimensional model based on the algorithm of the hierarchical bounding box tree structure, the binary partition spatial tree structure or the octree structure, and the rendering process can be accelerated.
Referring to fig. 6, the BIM rendering apparatus based on a lightweight device according to an embodiment of the present application may include a loading module 601, an analyzing module 602, a tree structure generating module 603, and a rendering module 604, which are described in detail as follows:
the loading module 601 is used for loading geometric structure data of the three-dimensional building model;
the analysis module 602 is configured to analyze complexity, dynamic and static characteristics, and/or geometric features of the three-dimensional building model according to the geometric structure data of the three-dimensional building model;
a tree structure generating module 603, configured to generate a corresponding hierarchical bounding box tree structure, a binary partition space tree structure, or an octree structure according to an analysis result obtained by analyzing complexity, dynamic and static characteristics, and/or geometric features of the three-dimensional building model, so as to record information of the three-dimensional building model;
and a rendering module 604, configured to read information of the building three-dimensional model from the memory based on an algorithm of the hierarchical bounding box tree structure, the binary-partitioned space tree structure, or the octree structure, and render an effective part of the building three-dimensional model.
Optionally, in the apparatus illustrated in fig. 6, the tree structure generating module 603 is specifically configured to, if the analysis result of the analyzing module 602 is that the building three-dimensional model belongs to a simple three-dimensional model, create leaf nodes for a single object by using a top-down tree construction method, and iterate layer by layer until a first-layer bounding box tree structure is created; when the scene changes dynamically, the bounding box of each object in the scene is used as a node, the first-level bounding box tree structure is updated in a bottom-up mode, and a second-level bounding box tree structure is generated.
Optionally, in the apparatus illustrated in fig. 6, the rendering module 604 is specifically configured to determine whether a ray emitted from the viewpoint intersects a bounding box corresponding to a node of the hierarchical bounding box tree structure; if the light rays emitted from the viewpoint are intersected with the bounding boxes corresponding to the nodes of the hierarchical bounding box tree structure, further judging whether the bounding boxes corresponding to the intersected nodes have primitives; if the intersected node has a primitive corresponding to the bounding box, continuing ray tracing, otherwise, ending the ray tracing; and recursively judging each ray starting from the viewpoint until the rendering picture of the effective part of the building three-dimensional model is output after the judgment is finished.
Optionally, in the apparatus illustrated in fig. 6, the tree structure generating module 603 is specifically configured to, if the analysis result of the analyzing module 602 is that the building three-dimensional model belongs to a simple three-dimensional model, perform spatial division on a bounding box surrounding the building three-dimensional model according to geometric structure data of the building three-dimensional model; and constructing a hierarchical bounding box tree structure based on a clustering method according to the size relation between the number of the tiles in the divided space and a preset threshold value.
Optionally, in the apparatus illustrated in fig. 6, the rendering module 604 is specifically configured to reverse-sequence information of the building three-dimensional model read from the memory into a hierarchical bounding box tree; performing scene intersection on bounding boxes corresponding to the nodes of the hierarchical bounding box tree by adopting a less-stack intersection method to determine an intersection result; and performing ray tracing rendering according to the intersection result.
Optionally, in the apparatus illustrated in fig. 6, the tree structure generating module 603 is specifically configured to, according to an analysis result of analyzing geometric features of the three-dimensional building model, continuously divide the space of the three-dimensional building model into a forward space and a backward space by using a cutting plane with a directional attribute as a boundary until the divided forward space and backward space are atomic spaces; and generating a binary split space tree structure by taking the forward space of the forward space or atom as a left sub-tree or left leaf sub-node and taking the forward space of the backward space or atom as a right sub-tree or right leaf sub-node.
Optionally, in the apparatus illustrated in fig. 6, the tree structure generating module 603 is specifically configured to set parameters of an octree to be constructed; traversing all the geometric nodes, and calculating the size of a bounding box of the root node; uniformly dividing the bounding box of the root node into eight spaces, and classifying all geometric nodes under the father node into the eight spaces respectively according to an intersection detection algorithm; and carrying out recursive calling to divide all child nodes.
It can be seen from the above description of the technical solution that the complexity, the dynamic and static characteristics and/or the geometric features of the building three-dimensional model are analyzed according to the geometric structure data of the building three-dimensional model, and then the information of the building three-dimensional model is recorded by reasonably selecting and using an appropriate spatial data structure according to the analysis result. Compared with the prior art, the technical scheme of the application abandons a scheme of mesh merging, and different spatial data structures are generated, so that the occupation of a memory can be saved when the information of the building three-dimensional model is read from the memory to render the effective part of the building three-dimensional model based on the algorithm of the hierarchical bounding box tree structure, the binary partition spatial tree structure or the octree structure, and the rendering process can be accelerated.
Fig. 7 is a schematic structural diagram of an apparatus provided in an embodiment of the present application. As shown in fig. 7, the apparatus 7 of this embodiment mainly includes: a processor 70, a memory 71 and a computer program 72 stored in the memory 71 and executable on the processor 70, such as a program based on the BIM rendering method of a lightweight device. The processor 70, when executing the computer program 72, implements the steps in the above-described lightweight device-based BIM rendering method embodiment, such as steps S101 to S104 shown in fig. 1. Alternatively, the processor 70, when executing the computer program 72, implements the functions of the modules/units in the above-described apparatus embodiments, such as the functions of the loading module 601, the analyzing module 602, the tree structure generating module 603, and the rendering module 604 shown in fig. 6.
Illustratively, the computer program 72 of the BIM rendering method based on a lightweight device mainly includes: loading geometric structure data of the three-dimensional model of the building; analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model according to the geometric structure data of the three-dimensional building model; generating a corresponding hierarchical bounding box tree structure, a binary-partition space tree structure or an octree structure according to an analysis result of analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model so as to record the information of the three-dimensional building model; and reading the information of the building three-dimensional model from the memory based on an algorithm of a hierarchical bounding box tree structure, a binary division space tree structure or an octree structure, and rendering the effective part of the building three-dimensional model. The computer program 72 may be partitioned into one or more modules/units, which are stored in the memory 71 and executed by the processor 70 to accomplish the present application. One or more of the modules/units may be a series of computer program instruction segments capable of performing specific functions, which are used to describe the execution of the computer program 72 in the device 7. For example, the computer program 72 may be divided into functions of a loading module 601, an analyzing module 602, a tree structure generating module 603, and a rendering module 604 (modules in the virtual device), and the specific functions of each module are as follows: the loading module 601 is used for loading geometric structure data of the three-dimensional building model; the analysis module 602 is configured to analyze complexity, dynamic and static characteristics, and/or geometric features of the three-dimensional building model according to the geometric structure data of the three-dimensional building model; a tree structure generating module 603, configured to generate a corresponding hierarchical bounding box tree structure, a binary partition space tree structure, or an octree structure according to an analysis result obtained by analyzing complexity, dynamic and static characteristics, and/or geometric features of the three-dimensional building model, so as to record information of the three-dimensional building model; and a rendering module 604, configured to read information of the building three-dimensional model from the memory based on an algorithm of the hierarchical bounding box tree structure, the binary-partitioned space tree structure, or the octree structure, and render an effective part of the building three-dimensional model.
The device 7 may include, but is not limited to, a processor 70, a memory 71. Those skilled in the art will appreciate that fig. 7 is merely an example of a device 7 and does not constitute a limitation of device 7 and may include more or fewer components than shown, or some components may be combined, or different components, e.g., a computing device may also include input-output devices, network access devices, buses, etc.
The Processor 70 may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field-Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The storage 71 may be an internal storage unit of the device 7, such as a hard disk or a memory of the device 7. The memory 71 may also be an external storage device of the device 7, such as a plug-in hard disk provided on the device 7, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like. Further, the memory 71 may also include both an internal storage unit of the device 7 and an external storage device. The memory 71 is used for storing computer programs and other programs and data required by the device. The memory 71 may also be used to temporarily store data that has been output or is to be output.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-mentioned division of the functional units and modules is illustrated, and in practical applications, the above-mentioned functions may be distributed as required to different functional units and modules, that is, the internal structure of the apparatus may be divided into different functional units or modules to implement all or part of the functions described above. Each functional unit and module in the embodiments may be integrated in one processing unit, or each unit may exist alone physically, or two or more units are integrated in one unit, and the integrated unit may be implemented in a form of hardware, or in a form of software functional unit. In addition, specific names of the functional units and modules are only for convenience of distinguishing from each other, and are not used for limiting the protection scope of the present application. The specific working processes of the units and modules in the above-mentioned apparatus may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and reference may be made to the related descriptions of other embodiments for parts that are not described or illustrated in a certain embodiment.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
In the embodiments provided in the present application, it should be understood that the disclosed apparatus/device and method may be implemented in other ways. For example, the above-described apparatus/device embodiments are merely illustrative, and for example, a module or a unit may be divided into only one logic function, and may be implemented in other ways, for example, a plurality of units or components may be combined or integrated into another apparatus, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
Units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated modules/units, if implemented in the form of software functional units and sold or used as separate products, may be stored in a non-transitory computer readable storage medium. Based on such understanding, all or part of the processes in the method of the embodiments described above may also be implemented by instructing related hardware through a computer program, where the computer program of the BIM rendering method based on the lightweight device may be stored in a computer readable storage medium, and when being executed by a processor, the computer program may implement the steps of the embodiments of the methods described above, that is, analyzing the complexity, dynamic and static characteristics, and/or geometric features of the three-dimensional building model according to the geometric structure data of the three-dimensional building model; generating a corresponding hierarchical bounding box tree structure, a binary-partition space tree structure or an octree structure according to an analysis result of analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model so as to record the information of the three-dimensional building model; and reading the information of the building three-dimensional model from the memory based on an algorithm of a hierarchical bounding box tree structure, a binary division space tree structure or an octree structure, and rendering the effective part of the building three-dimensional model. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The non-transitory computer readable medium may include: any entity or device capable of carrying computer program code, recording medium, U.S. disk, removable hard disk, magnetic disk, optical disk, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution media, and the like. It should be noted that the non-transitory computer readable medium may contain content that is subject to appropriate increase or decrease as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, non-transitory computer readable media does not include electrical carrier signals and telecommunications signals as subject to legislation and patent practice. The above embodiments are only used to illustrate the technical solutions of the present application, and not to limit the same; although the present application has been described in detail with reference to the foregoing embodiments, it should be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present application and are intended to be included within the scope of the present application.
The above-mentioned embodiments, objects, technical solutions and advantages of the present application are described in further detail, it should be understood that the above-mentioned embodiments are merely exemplary embodiments of the present application, and are not intended to limit the scope of the present application, and any modifications, equivalent substitutions, improvements and the like made within the spirit and principle of the present application should be included in the scope of the present invention.
Claims (10)
1. A BIM rendering method based on a lightweight device, the method comprising:
loading geometric structure data of the three-dimensional model of the building;
analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model according to the geometric structure data of the three-dimensional building model;
generating a corresponding hierarchical bounding box tree structure, a binary-partition space tree structure or an octree structure according to an analysis result of analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model so as to record the information of the three-dimensional building model;
and reading the information of the building three-dimensional model from a memory based on the algorithm of the hierarchical bounding box tree structure, the binary division space tree structure or the octree structure, and rendering the effective part of the building three-dimensional model.
2. The BIM rendering method based on lightweight device according to claim 1, wherein the generating a corresponding hierarchical bounding box tree structure according to the analysis result of analyzing the complexity, dynamic and static characteristics and/or geometric features of the three-dimensional building model comprises:
if the analysis result is that the building three-dimensional model belongs to a simple three-dimensional model, leaf nodes are created for a single object by adopting a top-down tree construction method, and iteration is performed layer by layer until a first-layer bounding box tree structure is created;
when the scene changes dynamically, the bounding box of each object in the scene is used as a node, the first-level bounding box tree structure is updated in a bottom-up mode, and a second-level bounding box tree structure is generated.
3. The BIM rendering method based on lightweight device according to claim 2, wherein the algorithm based on the hierarchical bounding box tree structure reads the information of the building three-dimensional model from the memory, and renders the effective part of the building three-dimensional model, including:
judging whether the light rays emitted from the viewpoint are intersected with the bounding boxes corresponding to the nodes of the hierarchical bounding box tree structure;
if the ray intersects with the bounding box corresponding to the node of the hierarchical bounding box tree structure, further judging whether the bounding box corresponding to the intersected node has a primitive;
if the intersected node has a primitive corresponding to the bounding box, continuing ray tracing, otherwise, ending the ray tracing;
and recursively judging each ray from the viewpoint until the judgment is finished, and outputting a rendering picture of the effective part of the building three-dimensional model.
4. The BIM rendering method based on lightweight device according to claim 1, wherein the generating a corresponding hierarchical bounding box tree structure according to the analysis result of analyzing the complexity, dynamic and static characteristics and/or geometric features of the three-dimensional building model comprises:
if the analysis result is that the three-dimensional model belongs to a simple three-dimensional model, carrying out space division on a bounding box surrounding the building three-dimensional model according to the geometric structure data of the building three-dimensional model;
and constructing the hierarchical bounding box tree structure based on a clustering method according to the size relation between the number of the tiles in the divided space and a preset threshold value.
5. The BIM rendering method based on lightweight device as claimed in claim 4, wherein the algorithm based on the hierarchical bounding box tree structure reads the information of the building three-dimensional model from the memory, and renders the effective part of the building three-dimensional model, including:
reversely serializing the information of the building three-dimensional model read from the memory into a hierarchical bounding box tree;
performing scene intersection on the bounding boxes corresponding to the nodes of the hierarchical bounding box tree by adopting a less-stack intersection method to determine an intersection result;
and performing ray tracing rendering according to the intersection result.
6. The BIM rendering method based on lightweight devices according to claim 1, wherein the generating a corresponding binary split spatial tree structure according to the analysis result of analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model comprises:
according to the analysis result of analyzing the geometric characteristics of the three-dimensional building model, taking a cutting surface with directional attributes as a boundary, and continuously dividing the space of the three-dimensional building model into a forward space and a backward space until the divided forward space and the divided backward space are atomic spaces;
and generating the binary division space tree structure by taking the forward space of the forward space or the atom as a left sub-tree or a left leaf sub-node and taking the forward space of the backward space or the atom as a right sub-tree or a right leaf sub-node.
7. The BIM rendering method based on lightweight devices according to claim 1, wherein the generating of the corresponding octree structure according to the analysis result of the analysis of the complexity, the dynamic and static characteristics and/or the geometric features of the three-dimensional building model comprises:
setting parameters of an octree to be constructed;
traversing all the geometric nodes, and calculating the size of a bounding box of the root node;
uniformly dividing the bounding box of the root node into eight spaces, and classifying all geometric nodes under the father node into the eight spaces respectively according to an intersection detection algorithm;
and carrying out recursive calling to divide all child nodes.
8. A BIM rendering apparatus based on lightweight devices, the apparatus comprising:
the loading module is used for loading the geometric structure data of the three-dimensional model of the building;
the analysis module is used for analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model according to the geometric structure data of the three-dimensional building model;
the tree structure generating module is used for generating a corresponding hierarchical bounding box tree structure, a binary division space tree structure or an octree structure according to an analysis result of analyzing the complexity, the dynamic and static characteristics and/or the geometric characteristics of the three-dimensional building model so as to record the information of the three-dimensional building model;
and the rendering module is used for reading the information of the building three-dimensional model from a memory based on the algorithm of the hierarchical bounding box tree structure, the binary division space tree structure or the octree structure and rendering the effective part of the building three-dimensional model.
9. An apparatus comprising a memory, a processor and a computer program stored in the memory and executable on the processor, characterized in that the processor implements the steps of the method according to any one of claims 1 to 7 when executing the computer program.
10. A computer-readable storage medium, in which a computer program is stored which, when being executed by a processor, carries out the steps of the method according to any one of claims 1 to 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011378459.7A CN112347546A (en) | 2020-11-30 | 2020-11-30 | BIM rendering method, device and computer-readable storage medium based on lightweight device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011378459.7A CN112347546A (en) | 2020-11-30 | 2020-11-30 | BIM rendering method, device and computer-readable storage medium based on lightweight device |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112347546A true CN112347546A (en) | 2021-02-09 |
Family
ID=74366060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011378459.7A Withdrawn CN112347546A (en) | 2020-11-30 | 2020-11-30 | BIM rendering method, device and computer-readable storage medium based on lightweight device |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112347546A (en) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110738669A (en) * | 2019-10-10 | 2020-01-31 | 武汉星珞科技有限公司 | Adaptive octree partitioning algorithm |
CN112927286A (en) * | 2021-03-15 | 2021-06-08 | 北京配天技术有限公司 | Method for measuring volume, measuring device and computer-readable storage medium |
CN113001551A (en) * | 2021-03-18 | 2021-06-22 | 青岛九维华盾科技研究院有限公司 | Fast collision detection method based on octree structure segmentation |
CN113256803A (en) * | 2021-06-23 | 2021-08-13 | 合肥量圳建筑科技有限公司 | Data compression method, device, equipment and storage medium |
CN113313805A (en) * | 2021-06-23 | 2021-08-27 | 合肥量圳建筑科技有限公司 | Three-dimensional scene data storage method, device, equipment and storage medium |
CN113345079A (en) * | 2021-06-18 | 2021-09-03 | 厦门美图之家科技有限公司 | Face three-dimensional model visualization method and device, electronic equipment and storage medium |
CN113935097A (en) * | 2021-10-26 | 2022-01-14 | 山东同圆数字科技有限公司 | Building space analysis method and system based on BIM engine data |
CN114004925A (en) * | 2021-09-16 | 2022-02-01 | 北京城市网邻信息技术有限公司 | WebGL-based model rendering method, electronic device and storage medium |
CN114282507A (en) * | 2021-12-29 | 2022-04-05 | 万翼科技有限公司 | Character storage method, rendering method, device, electronic equipment and storage medium |
CN114297746A (en) * | 2021-12-06 | 2022-04-08 | 万翼科技有限公司 | Rendering method and device of building information model, electronic equipment and storage medium |
CN114417452A (en) * | 2021-12-16 | 2022-04-29 | 万翼科技有限公司 | Method for processing building information model and related device |
CN114565722A (en) * | 2022-03-02 | 2022-05-31 | 山东瑞智飞控科技有限公司 | Three-dimensional model monomer realization method |
CN114579022A (en) * | 2021-12-13 | 2022-06-03 | 北京市建筑设计研究院有限公司 | Model component generation method and device and electronic equipment |
CN114912165A (en) * | 2022-03-28 | 2022-08-16 | 中煤(天津)地下工程智能研究院有限公司 | Construction method, device and equipment of three-dimensional platform of coal preparation plant and readable storage medium |
CN116597067A (en) * | 2023-05-16 | 2023-08-15 | 泰瑞数创科技(北京)股份有限公司 | BIM dynamic rendering method and system thereof |
WO2023202245A1 (en) * | 2022-04-21 | 2023-10-26 | 北京京东振世信息技术有限公司 | Three-dimensional map data loading and sending method and apparatus, electronic device, and medium |
CN114419256B (en) * | 2022-01-24 | 2024-01-23 | 正元地理信息集团股份有限公司 | Urban level BIM data light weight method and system based on multistage shell extraction algorithm |
-
2020
- 2020-11-30 CN CN202011378459.7A patent/CN112347546A/en not_active Withdrawn
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110738669A (en) * | 2019-10-10 | 2020-01-31 | 武汉星珞科技有限公司 | Adaptive octree partitioning algorithm |
CN112927286A (en) * | 2021-03-15 | 2021-06-08 | 北京配天技术有限公司 | Method for measuring volume, measuring device and computer-readable storage medium |
CN112927286B (en) * | 2021-03-15 | 2024-01-09 | 北京配天技术有限公司 | Method for measuring volume, measuring device and computer-readable storage medium |
CN113001551A (en) * | 2021-03-18 | 2021-06-22 | 青岛九维华盾科技研究院有限公司 | Fast collision detection method based on octree structure segmentation |
CN113345079A (en) * | 2021-06-18 | 2021-09-03 | 厦门美图之家科技有限公司 | Face three-dimensional model visualization method and device, electronic equipment and storage medium |
CN113345079B (en) * | 2021-06-18 | 2024-02-27 | 厦门美图宜肤科技有限公司 | Face three-dimensional model visualization method, device, electronic equipment and storage medium |
CN113256803A (en) * | 2021-06-23 | 2021-08-13 | 合肥量圳建筑科技有限公司 | Data compression method, device, equipment and storage medium |
CN113313805A (en) * | 2021-06-23 | 2021-08-27 | 合肥量圳建筑科技有限公司 | Three-dimensional scene data storage method, device, equipment and storage medium |
CN113256803B (en) * | 2021-06-23 | 2024-08-23 | 合肥量圳建筑科技有限公司 | Data compression method, device, equipment and storage medium |
CN114004925A (en) * | 2021-09-16 | 2022-02-01 | 北京城市网邻信息技术有限公司 | WebGL-based model rendering method, electronic device and storage medium |
CN113935097A (en) * | 2021-10-26 | 2022-01-14 | 山东同圆数字科技有限公司 | Building space analysis method and system based on BIM engine data |
CN114297746A (en) * | 2021-12-06 | 2022-04-08 | 万翼科技有限公司 | Rendering method and device of building information model, electronic equipment and storage medium |
CN114579022A (en) * | 2021-12-13 | 2022-06-03 | 北京市建筑设计研究院有限公司 | Model component generation method and device and electronic equipment |
CN114417452A (en) * | 2021-12-16 | 2022-04-29 | 万翼科技有限公司 | Method for processing building information model and related device |
CN114282507A (en) * | 2021-12-29 | 2022-04-05 | 万翼科技有限公司 | Character storage method, rendering method, device, electronic equipment and storage medium |
CN114419256B (en) * | 2022-01-24 | 2024-01-23 | 正元地理信息集团股份有限公司 | Urban level BIM data light weight method and system based on multistage shell extraction algorithm |
CN114565722A (en) * | 2022-03-02 | 2022-05-31 | 山东瑞智飞控科技有限公司 | Three-dimensional model monomer realization method |
CN114912165A (en) * | 2022-03-28 | 2022-08-16 | 中煤(天津)地下工程智能研究院有限公司 | Construction method, device and equipment of three-dimensional platform of coal preparation plant and readable storage medium |
CN114912165B (en) * | 2022-03-28 | 2024-09-24 | 中煤(天津)地下工程智能研究院有限公司 | Method, device and equipment for constructing three-dimensional platform of coal preparation plant and readable storage medium |
WO2023202245A1 (en) * | 2022-04-21 | 2023-10-26 | 北京京东振世信息技术有限公司 | Three-dimensional map data loading and sending method and apparatus, electronic device, and medium |
CN116597067A (en) * | 2023-05-16 | 2023-08-15 | 泰瑞数创科技(北京)股份有限公司 | BIM dynamic rendering method and system thereof |
CN116597067B (en) * | 2023-05-16 | 2023-11-28 | 泰瑞数创科技(北京)股份有限公司 | BIM dynamic rendering method and system thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112347546A (en) | BIM rendering method, device and computer-readable storage medium based on lightweight device | |
US11587282B2 (en) | Hybrid hierarchy of bounding and grid structures for ray tracing | |
US20220245111A1 (en) | Hierarchy Merging in Computer Graphics | |
CN113178014B (en) | Scene model rendering method and device, electronic equipment and storage medium | |
US7002571B2 (en) | Grid-based loose octree for spatial partitioning | |
US8570322B2 (en) | Method, system, and computer program product for efficient ray tracing of micropolygon geometry | |
US6154215A (en) | Method and apparatus for maintaining multiple representations of a same scene in computer generated graphics | |
WO2022121525A1 (en) | Method and device for rendering three-dimensional scene data, storage medium, and electronic device | |
KR102604737B1 (en) | METHOD AND APPARATUS for generating acceleration structure | |
CN110489692B (en) | WebGL instantiation-based method and system for realizing component-level operation | |
CN111127615A (en) | Data scheduling method and device of three-dimensional model and electronic equipment | |
KR20180069461A (en) | Method and apparatus for generating acceleration structure | |
US20240203030A1 (en) | 3d model rendering method and apparatus, electronic device, and storage medium | |
EP3319047A1 (en) | Method and apparatus for generating acceleration structure | |
CN113313805B (en) | Three-dimensional scene data storage method, device, equipment and storage medium | |
Argudo et al. | Interactive inspection of complex multi-object industrial assemblies | |
Spackman | Scene decompositions for accelerated ray tracing | |
CN118037962A (en) | Lightweight three-dimensional model construction method, system and medium for experimental equipment | |
CN114373036A (en) | Method and system for three-dimensional rendering of scene | |
Thomas et al. | Topological Visualisation Techniques for Volume Multifield Data | |
CN117725240A (en) | Data processing method, device, equipment and medium | |
CN117851704A (en) | Method, device, equipment and medium for loading mass model | |
Vyatkin et al. | Function-based interactive editing of decoration and material properties | |
CN117058300A (en) | Method for calculating intersection point of acceleration ray and uncut curved surface based on KD tree | |
CN118069105A (en) | Method, device, equipment and storage medium for generating bounding box of model |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210209 |