Digital-twin-based bim lightweight and project information dynamic mapping method
Patent Information
- Application Number
- CN202611198481.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-07
- Publication Date
- 2026-10-30
AI Technical Summary
[0004]由此可以看出,现有技术存在以下问题:1.盲目压缩导致模型特征丢失,且海量构件全量加载易造成终端卡顿;2.采用静态关系型映射,查询效率低且无法表征构件间的物理拓扑联系;3.缺乏并发控制机制,多用户高频更新时易导致数据错乱,无法满足实时动态关联需求
本发明通过将多格式BIM模型解析为几何与语义数据并生成哈希全局标识符,结合射线求交的可视度量化与二次误差度量算法,实现了冗余隐蔽构件的自动剔除与多细节层次切片的自适应生成;改变了传统单一几何压缩导致特征丢失的问题,在保留关键边界特征的同时大幅降低了数据体量,并为后续基于视距的流式渲染提供了分级数据基础,解决了海量模型在终端加载卡顿的技术瓶颈。
Smart Images

Figure CN123013236A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of digital twin technology, and specifically relates to a method for lightweighting and dynamic mapping of project information based on digital twin BIM. Background Technology
[0002] With the rapid development of information technology, the engineering construction field is accelerating its transformation towards digitalization and intelligence. Digital twin technology, relying on BIM (Building Information Modeling) and the Internet of Things, enables visualized monitoring and refined management of the entire construction process by constructing digital replicas of physical entities, and has become a core driving force for improving project quality and construction efficiency.
[0003] In large-scale engineering project management, existing technologies typically import BIM models into web or mobile platforms and integrate them with project management systems to display construction progress and quality status. This technology largely relies on geometric compression algorithms to reduce model file size and uses relational databases to establish static foreign key associations between component IDs and business forms (such as quality acceptance forms and progress reports). At the rendering level, the terminal performs panoramic loading by parsing the compressed geometric mesh data; at the data interaction level, after a user clicks on a model component, the system queries the corresponding business attributes in the relational database using SQL statements and displays them, aiming to achieve basic linkage between the 3D model and construction information.
[0004] This reveals the following problems with existing technologies: 1. Blind compression leads to the loss of model features, and loading a large number of components in full can cause terminal lag; 2. Static relational mapping results in low query efficiency and fails to represent the physical topological relationships between components; 3. The lack of concurrency control mechanisms makes it easy for data to become corrupted when multiple users update frequently, failing to meet the requirements for real-time dynamic association. Summary of the Invention
[0005] (a) Technical problems to be solved In response to the problems in related technologies, this invention provides a method for lightweighting and dynamic mapping of project information based on digital twin BIM, so as to overcome the aforementioned technical problems existing in the existing related technologies.
[0006] (II) Technical Solution To solve the above-mentioned technical problems, the present invention is achieved through the following technical solution: On the one hand, this invention provides a method for lightweighting and dynamic mapping of project information based on digital twin BIM, including the following steps: S1. Receive a multi-format building information model, use a data parsing interface to separate the multi-format building information model into geometric grid data and semantic attribute data, clean the semantic attribute data and use a hash algorithm to generate a globally unique identifier dictionary; S2. Based on the globally unique identifier dictionary, perform adaptive lightweight processing based on semantic features on the geometric mesh data, remove redundant internal hidden components, and use a quadratic error measurement algorithm to generate multi-detail level streaming slice files. S3. Extract multi-dimensional project information, and use the globally unique identifiers in the globally unique identifier dictionary as nodes to construct a dynamic mapping graph that integrates spatial topology edges and business logic edges in the graph database. S4. Monitor the data change events of the multi-dimensional project information. When the data change event is captured, use the dynamic mapping graph and the optimistic locking mechanism based on the state version number to perform dynamic synchronization of project information and update the business status of the affected globally unique identifier nodes. S5. Responding to the 3D loading and click requests of the visualization terminal, based on the multi-detail level streaming slice file and dynamic mapping map, perform streaming rendering, and perform penetrating visualization interaction of the multi-dimensional project information along the spatial topology edge and business logic edge. This invention separates multi-format BIM models into geometric meshes and semantic attributes, and uses a hash algorithm to generate a globally unique identifier dictionary, achieving unified identification and efficient management of heterogeneous model data. Based on semantic features, lightweight processing is performed to generate multi-level detail slices, significantly reducing model data volume and improving rendering efficiency. A dynamic mapping graph integrating spatial topology and business logic is constructed in the graph database, and an optimistic locking mechanism is used to monitor data changes, ensuring real-time and accurate synchronization of project information under high-frequency concurrent collaboration. Utilizing multi-level detail slices and the dynamic graph, streaming rendering and multi-dimensional project information penetration interaction are achieved, solving the problems of loading massive models and the disconnect between business data and 3D models, thus improving the real-time performance and accuracy of digital engineering management.
[0007] Preferably, the specific steps in S1 for generating a globally unique identifier dictionary using a hash algorithm include: S11. Use the underlying data parsing engine to read the source files of multi-format building information models and traverse all physical components; S12. Extract the set of three-dimensional vertex coordinates of the physical component as geometric mesh data, and at the same time extract the material name, manufacturer and component classification label of the physical component as semantic attribute data. S13. Combine the material name, manufacturer, and component classification label into a component feature string according to string concatenation rules; S14. Input the component feature string and the original encoding of the physical component in the source file into a secure hash algorithm to generate a hash value with a length of 256 bits; convert the hash value into a hexadecimal string as a globally unique identifier; S15. Establish a mapping relationship between the globally unique identifier and the geometric mesh data and semantic attribute data; store the mapping relationship as a key-value pair structure to generate a globally unique identifier dictionary; The above-mentioned preferred steps parse the source file through the underlying engine, accurately extract the three-dimensional vertex coordinates and multi-dimensional semantic attributes of the physical components, and concatenate the classification tags such as material and manufacturer according to rules; use the SHA-256 hash algorithm to convert the concatenated string and the original encoding into a 256-bit hash value, generate a globally unique identifier and establish a key-value pair mapping dictionary; break down the data barriers between different software formats, and ensure the uniqueness and tamper-proofness of the component's identification in cross-professional merging and full life cycle management.
[0008] Preferably, the specific steps for eliminating redundant internal concealed components in step S2 include: S211. Calculate the axial bounding box of each physical component based on the three-dimensional vertex coordinate set of the geometric mesh data; S212. Using the geometric center of the axial bounding box as the center of the sphere, construct a spherical bounding sphere with a predetermined number of sampling points evenly distributed. S213. A test ray is emitted from each of the sampling points toward the center of the sphere, and a ray intersection algorithm is used to determine whether the test ray intersects with other physical components in the multi-format building information model. S214. Count the number of test rays that do not intersect with other physical components, divide the number by the preset number of sampling points, and obtain the visibility rate of the physical components. S215. Determine whether the exposed visibility rate is greater than the exposed visibility rate threshold; if so, retain the geometric mesh data of the physical component; otherwise, delete the geometric mesh data corresponding to the redundant internal hidden component from the global unique identifier dictionary. The above-mentioned preferred steps calculate the axial bounding box of the component and construct spherical sampling points. They then use a ray intersection algorithm to simulate visual occlusion and accurately count the number of non-intersecting test rays to calculate the exposed visibility rate. Based on the exposed visibility rate threshold, redundant internal hidden components that are completely enclosed are automatically identified and removed. This transforms the traditional lightweight operation that relies on manual experience into a quantitative spatial geometric calculation, automatically filtering out occluding components that are meaningless for operation and maintenance from the source of physical space, and effectively reducing the amount of redundant mesh data.
[0009] Preferably, the specific steps in S2 for generating multi-level detail streaming slice files using a quadratic error metric algorithm include: S221. Obtain all triangular faces and vertex coordinates in the geometric mesh data of the physical components that have not been removed; S222. For each vertex, accumulate the quadratic error matrices corresponding to all its adjacent triangular planes to construct the initial quadratic error matrix of the vertex; the sum of squared distances from the vertex to the adjacent planes can be obtained by performing a quadratic operation on the homogeneous coordinates of the vertex and the matrix, and the result is a scalar value. S223. Calculate the cost algebraic value when all valid edges in the geometric mesh data are folded into a single new vertex; the cost algebraic value is a non-negative scalar, equal to the quadratic form operation result of the quadratic error matrix corresponding to the homogeneous coordinates of the new vertex; S224. Sort all the effective edges in ascending order according to the cost algebra value, extract the effective edge with the smallest cost algebra value, perform the edge folding operation, and update the quadratic error matrix of the adjacent vertices. S225. Repeat S224 until the total number of faces in the geometric mesh data is reduced to 75%, 50% and 25% of the original total number of faces, respectively, and output the first level of detail model, the second level of detail model and the third level of detail model in sequence. S226. The original geometric mesh data is used as the zero level of detail model. The zero level of detail model, the first level of detail model, the second level of detail model, and the third level of detail model are packaged and compressed into the multi-level of detail streaming slice file. The above-mentioned optimization steps, for the preserved geometric mesh data, construct an initial quadratic error matrix by calculating the sum of squared distances from vertices to adjacent triangular faces, quantifying the algebraic cost of edge folding; and perform edge folding operations in ascending order of cost using a min-heap structure, gradually reducing the total number of faces to 75%, 50%, and 25% while preserving the key geometric boundary features of the components, generating four gradient-level detail models and packaging them into streaming slices; achieving adaptive dimensionality reduction and compression of model accuracy, providing a hierarchical data foundation for the subsequent dynamic scheduling of rendering resources by the terminal based on viewpoint distance.
[0010] Preferably, the specific steps in S3 for constructing the dynamic mapping graph that integrates spatial topology edges and business logic edges include: S31. In the graph database, instantiate each globally unique identifier in the globally unique identifier dictionary as a component node; S32. Determine whether the axial bounding box coordinates of any two physical components overlap in three-dimensional space; If yes, create an undirected spatial topology edge between the component nodes corresponding to the two physical components; otherwise, do not create an undirected spatial topology edge. S33. Extract multi-dimensional project information from the enterprise resource planning system; the multi-dimensional project information includes schedule nodes, quality inspection nodes, and safety hazard nodes. S34. Based on the component association code inherent in the multidimensional project information, a directed business logic edge is created between the schedule node, quality inspection node, safety hazard node and the corresponding component node through a string precise matching algorithm. The dynamic mapping graph is generated by combining the component node and the spatial topology edge. The above-mentioned preferred steps instantiate globally unique identifiers as graph database nodes, calculate the axial bounding box overlap state using the separation axis theorem to establish undirected spatial topological edges, and extract progress, quality, and safety nodes from the enterprise resource planning system to establish directed business logic edges through precise string matching. The static 3D model topological relationship is deeply associated with the dynamic construction business forms to construct a network mapping graph, providing underlying structural support for cross-dimensional data retrieval and related hidden danger investigation.
[0011] Preferably, the specific steps in S4 for dynamically synchronizing project information using a dynamic mapping graph and an optimistic locking mechanism based on state version numbers include: S41. Initialize the status version number attribute in each component node of the graph database, and set the initial integer value of the status version number attribute to zero. S42. Capture data change events through the message queue listening port, parse the request payload in the data change event, and extract the target globally unique identifier, the changed business field and the request version number carried in the request payload; S43. Using the index structure of the dynamic mapping graph, quickly locate the target component node corresponding to the target globally unique identifier, and read the current actual version number of the target component node; S44. Determine whether the requested version number is equal to the current actual version number; If yes, update the changed business field to the target component node and increment the current actual version number of the target component node by one; otherwise, refuse to update the changed business field and return a version conflict error message to the sending end that triggered the data change event. The above preferred steps initialize the state version number in the graph node, listen for data change events through the message queue; after quickly locating the target node using the graph index, compare the requested version number with the actual version number; if they match, perform a state update and increment the version number; if they do not match, intercept and return a conflict error; with a lock-free optimistic concurrency control mechanism, the risk of data overwriting and dirty writes during multi-user collaborative operations is solved, ensuring the consistency and high availability of twin base data in high-frequency dynamic construction scenarios.
[0012] Preferably, the specific steps for performing streaming rendering in S5 include: S511. Obtain the three-dimensional coordinates and field of view parameters of the current virtual camera through the visualization terminal, and extract the bounding sphere radius and bounding sphere center coordinates of all physical components in the multi-detail level streaming slice file. S512. Calculate the spatial straight-line distance between the physical component and the virtual camera based on the three-dimensional coordinates of the virtual camera and the center coordinates of the enclosing sphere; S513. Using the spatial straight-line distance, the radius of the bounding sphere, and the field of view parameters, calculate the pixel projection area ratio of the physical component on the visualization terminal screen; S514. Determine whether the percentage of the pixel projection area is greater than the high-precision rendering threshold. If yes, send a request instruction to the server to download and render the zeroth level of detail model of the physical component; otherwise, further determine whether the pixel projection area ratio is greater than the medium precision rendering threshold; if it is greater than the medium precision rendering threshold, download and render the first level of detail model of the physical component; if it is not greater than the medium precision rendering threshold, download and render the third level of detail model of the physical component. The above-mentioned preferred steps obtain virtual camera parameters and component bounding sphere information, calculate component distance, and combine the field of view to obtain the pixel projection area ratio; based on the comparison results of the area ratio and high and medium precision rendering thresholds, dynamically request and render the corresponding level of detail model; strictly bind the allocation of rendering resources to the terminal visual perception, avoid high-precision loading of small components at long distances, realize on-demand allocation of computing resources, and ensure the visualization frame rate of complex scenes.
[0013] Preferably, the calculation process for the pixel projection area ratio in S513 is as follows: The pixel projection area ratio is equal to the square of the radius of the enclosing sphere multiplied by pi, divided by the square of the straight-line distance in space, and then divided by the square of the tangent of the field of view; the value of the pixel projection area ratio is between zero and one. The above calculation process utilizes the principle of spherical projection geometry to accurately convert three-dimensional spatial distance and camera field of view into two-dimensional screen pixel ratio, providing a standardized metric value between zero and one, and improving the calculation accuracy of dynamic scheduling of multi-level detail models.
[0014] Preferably, the specific steps for performing the penetrating visualization interaction of the multi-dimensional project information in S5 include: S521. The visualization terminal captures the screen coordinates of the user's mouse clicks, and projects the screen coordinates of the mouse clicks from the two-dimensional screen coordinate system to the three-dimensional world coordinate system to generate a picking ray. S522. Perform triangular facet intersection calculations using the picked ray and the currently rendered multi-detail level streaming slice file to obtain the intersection point closest to the virtual camera, and extract the query globally unique identifier of the physical component to which the intersection point belongs. S523. Send the globally unique identifier of the query as the query primary key to the server. In the dynamic mapping graph, starting from the component node corresponding to the query primary key, perform a first depth-first traversal search outward along the business logic edge to obtain direct business data. At the same time, perform a second depth-first traversal search outward along the spatial topology edge to obtain physically adjacent component nodes. S524. Extract the business attribute data from the schedule node, quality inspection node and safety hazard node reached by the first depth-first traversal search, and extract the associated hazard status of the physically adjacent component nodes reached by the second depth-first traversal search. The business attribute data and associated potential hazard status are packaged into an information aggregation panel data and returned to the visualization terminal. S525. The visualization terminal receives the information aggregation panel data, renders a floating information panel on the screen, and displays the multi-dimensional project information and the associated hidden danger warning of adjacent physical components. The above-mentioned preferred steps generate a picking ray through inverse projection and obtain the component identifier clicked by the user by finding the intersection of triangular patches. Starting from this identifier, a bidirectional depth-first traversal is performed in the dynamic mapping graph. This not only obtains the directly related progress and quality data along the business logic edges, but also extracts the potential hazard status of physically adjacent components along the spatial topology edges, and aggregates them into a floating panel for display. This establishes an interactive link between three-dimensional spatial clicks and underlying multi-dimensional business data, and realizes intuitive early warning based on model-penetrating forms and related potential hazards.
[0015] On the other hand, the present invention also provides a lightweight BIM-based project information dynamic mapping system based on digital twins, used to implement the aforementioned lightweight BIM-based project information dynamic mapping method, the system comprising: The multi-source model parsing module is used to receive building information models in multiple formats, separate geometric mesh data from semantic attribute data, and generate a globally unique identifier dictionary. An adaptive lightweight module is used to remove redundant internal hidden components and generate multi-detail level streaming slice files using a quadratic error metric algorithm. The dynamic graph construction module is used to build a dynamic mapping graph that integrates spatial topological edges and business logic edges in a graph database. The concurrent synchronization control module is used to monitor data change events and use a dynamic mapping graph and an optimistic locking mechanism based on state version numbers to perform dynamic synchronization of project information. The Penetrating Rendering Interaction Module is used to perform streaming rendering based on multi-level detail streaming slice files and dynamic mapping maps, and to perform penetrating visualization interaction of multi-dimensional project information along spatial topology edges and business logic edges.
[0016] (III) Beneficial Effects The present invention has the following beneficial effects: This invention parses multi-format BIM models into geometric and semantic data and generates hash global identifiers. Combined with visual quantification of ray intersection and a quadratic error quantification algorithm, it achieves automatic removal of redundant hidden components and adaptive generation of multi-level detail slices. It changes the problem of feature loss caused by traditional single geometric compression, significantly reduces the data volume while retaining key boundary features, and provides a hierarchical data foundation for subsequent view distance-based streaming rendering, solving the technical bottleneck of loading massive models on the terminal.
[0017] This invention uses a globally unique identifier as its core, establishes spatial topological edges in a graph database by utilizing bounding box overlap determination, and establishes business logic edges by combining string matching, thus constructing a dynamic mapping graph. At the same time, it introduces an optimistic locking mechanism based on state version numbers to monitor data changes. These features work together to break the limitations of slow static mapping queries and single dimensions in traditional relational databases. It not only establishes a network connection between physical components and multidimensional business data, but also solves data coverage conflicts under high-frequency collaboration of multiple users in a lock-free manner, ensuring the high availability and consistency of the twin base data.
[0018] This invention calculates the pixel projection area ratio based on the camera's field of view and spatial distance on a visualization terminal, dynamically requests and matches a detailed level model for streaming rendering, and obtains intersecting component identifiers by picking rays, performing bidirectional depth-first traversal along business logic edges and spatial topology edges in a dynamic mapping graph. This overall interactive mechanism tightly integrates front-end on-demand rendering with back-end graph penetration query, ensuring visual smoothness while enabling the acquisition of multi-dimensional business attributes and early warning of potential hazards associated with physically adjacent components based on a single component click, thus improving the depth and efficiency of digital twin management of complex projects.
[0019] Of course, any product implementing this invention does not necessarily need to achieve all of the advantages described above at the same time. Attached Figure Description
[0020] To more clearly illustrate the technical solutions of the embodiments of the invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the invention. For those skilled in the art, the drawings can be obtained from these drawings without creative effort.
[0021] Figure 1 This is a flowchart illustrating the method for lightweighting and dynamic mapping of project information based on digital twin BIM according to the present invention. Figure 2 This is a schematic diagram illustrating the principle of calculating the exposed visibility rate based on ray intersection in this invention; Figure 3 This is a schematic diagram comparing the hierarchical number of facets in the Level of Detail (LOD) model of this invention; Figure 4 This is a schematic diagram illustrating the relationship between pixel projection area ratio and LOD level scheduling in this invention. Detailed Implementation
[0022] The technical solutions of the embodiments of the invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the invention, and not all embodiments. Based on the embodiments of the invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the invention.
[0023] This embodiment provides a detailed description of the electromechanical installation general contracting project of Terminal 3 of a large hub airport. The terminal building has a construction area of 500,000 square meters, including two underground floors and four above-ground floors. The project involves extremely complex electromechanical pipeline systems such as HVAC, water supply and drainage, power cable trays, and fire sprinklers. The total size of the BIM model source files delivered by the design institute exceeds 50GB, containing millions of microscopic pipeline components and equipment. In traditional construction management, due to the excessive size of the model, mobile tablet equipment on the construction site simply cannot open the model. At the same time, the on-site quality acceptance records and progress reports are completely disconnected from the BIM model, requiring managers to spend a lot of time verifying information between paper drawings and forms.
[0024] To resolve the above issues, please refer to [link / reference]. Figure 1 This invention discloses a method for lightweighting and dynamic mapping of project information based on digital twin BIM, comprising the following steps: S1. Receive multi-format building information models, use the data parsing interface to separate the multi-format building information models into geometric grid data and semantic attribute data, clean the semantic attribute data and use a hash algorithm to generate a globally unique identifier dictionary; The semantic attribute data cleaning includes unifying the text encoding to UTF-8, removing leading and trailing spaces and special characters, and standardizing the case of names; removing duplicate attribute data that are repeatedly attached to the same component; marking missing non-core fields as not filled, and marking missing core fields as abnormal components; and filtering attribute data with illegal formats and invalid content. S1 includes the following steps: S11. Use the underlying data parsing engine to read the source files of the multi-format building information model and traverse all physical components in the multi-format building information model. Specifically, in embodiment S11, the system deploys a low-level data parsing engine that supports Revit format .rvt and industrial basic class format .ifc; the system reads the source file of the terminal building's first floor HVAC professional model, named T3_HVAC_L1.rvt, uploaded by the design institute; the system traverses all entity objects in the source file and extracts physical components named such as chiller_01, galvanized steel duct_section_450, etc. The above component names adopt a standardized naming rule with underscores for segmentation; for example, T3 corresponds to the terminal building number, HVAC corresponds to the HVAC profession, and L1 corresponds to the first floor of the building, which facilitates file classification and batch retrieval by project, profession, and floor; in the case of galvanized steel duct_segment_450, galvanized steel plate refers to the component material; duct refers to the component system classification; segment refers to the component being a standard pipe segment unit of the duct system; 450 refers to the component specification dimensions, i.e., the nominal parameters of the cross section; in the case of chiller_01, chiller is the component classification, and 01 is the sequential number of the same type of component; the underscore serves as a naming separator, which on the one hand realizes the structured semantic segmentation of component names, conforming to the naming specifications of engineering BIM models; on the other hand, it facilitates subsequent batch retrieval and classification filtering by material, category, specifications, etc., while ensuring the consistency of the format of component feature string concatenation in step S13, and providing standardized semantic input for the hash generation of globally unique identifiers; The underlying data parsing engine adopts a multi-adaptor architecture, adapting to corresponding parsing schemes for different formats. For Revit format (.rvt), it is parsed based on the Autodesk Forge Model Derivative API or the local Revit API to extract the component geometric mesh and parametric attribute set. For IFC format (.ifc), it is parsed based on the IfcOpenShell or xBIMToolkit open-source library to extract geometric representations and attribute information according to the IFC standard. It also includes a general parsing process, which first reads the file header to identify the format, calls the corresponding adapter to extract geometric data such as vertices / faces, traverses the attribute tree to extract semantic fields, and finally outputs standardized geometric-semantic separated data. S12. Extract the set of three-dimensional vertex coordinates of the physical component as geometric mesh data, and at the same time extract the material name, manufacturer and component classification label of the physical component as semantic attribute data. Specifically, in embodiment S12, for the extracted chiller unit_01 physical component, the parsing engine converts its parameterized boundary representation entity into a discrete triangular mesh; the system extracts the vertex coordinate set of the triangular mesh, such as the coordinates of vertex V1 being (X1=1245.50m, Y1=3456.20m, Z1=4.50m), thus forming geometric mesh data; at the same time, the system extracts the text information attached to the model, extracting material names such as stainless steel 304, manufacturers such as Carrier air conditioners, and component classification tags such as mechanical equipment_chiller unit, thus forming semantic attribute data; S13. Combine the material name, manufacturer, and component category label into a component feature string according to the preset string concatenation rules; Specifically, in embodiment S13, the system sets a preset string concatenation rule as category tag_material_manufacturer_source file internal ID; for chiller unit_01, the system extracts the underlying internal ID of the source file, such as 789012, and concatenates and combines it to generate the component feature string as mechanical equipment_chiller unit_stainless steel 304_Carrier air conditioner_789012; the above feature string adopts the underscore segmentation rule consistent with the naming of the source file, and the meaning of each segment is as follows: mechanical equipment is the primary component category tag, chiller unit is the secondary component type, stainless steel 304 is the component material, Carrier air conditioner is the manufacturer, and 789012 is the original internal code of the component in the source file; this concatenation rule integrates the scattered semantic attributes in the source file into a standardized string, which on the one hand ensures the uniformity of the input hash algorithm format, and on the other hand continues the semantic separation function of the underscore, maintaining consistency with the naming logic of the source file; S14. Input the component feature string and the original encoding of the physical component in the source file into the secure hash algorithm to calculate and generate a hash value with a length of 256 bits. Convert the hash value into a hexadecimal string as a globally unique identifier. Specifically, in embodiment S14, the system selects the SHA-256 secure hash algorithm; the system takes the component feature string "mechanical equipment_chiller_stainless steel 304_Carrier air conditioner_789012" as the input source, performs SHA-256 calculation, and outputs 256 bits of binary data; the system converts the binary data into a 64-character hexadecimal string, such as e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855; the system uses the hexadecimal string as a globally unique identifier for the physical component in the entire enterprise-level platform; In the Revit format, the original encoding is the ElementId and the built-in GUID of the component; in the IFC format, the original encoding is IfcGloballyUniqueId; the hash calculation is based on the component feature string, that is, the classification, material and manufacturer as the core identifier, and the original encoding is only added as a confusion factor into the input; the same component that is migrated across formats ensures the consistency of hash values through semantic feature matching, and the difference in the original encoding will not destroy the global identifier uniqueness; S15. Establish a mapping relationship between globally unique identifiers and geometric mesh data and semantic attribute data, store the mapping relationship as a key-value pair structure, and generate a globally unique identifier dictionary. Specifically, in embodiment S15, the globally unique identifier dictionary is stored in a high-performance in-memory database, such as Redis, and is also persistently backed up to a graph database; a key-value query interface is provided to support the quick retrieval of the corresponding geometric data storage path and semantic attribute data through the globally unique identifier; The system establishes a key-value pair structure in the Redis in-memory database; the system uses the generated globally unique identifier as the key, and the corresponding geometric grid data storage path and structured semantic attribute data as the value; by traversing all model files of the terminal, the system generates a dictionary of globally unique identifiers containing 3.5 million records; For example, taking the chiller unit_01 component as an example, the complete identification generation process is as follows: Read the physical component originally named "Chiller_01" from the Revit source file. Its underlying original code is 789012. Extract the 3D vertex coordinates of this component as geometric mesh data, and simultaneously extract semantic attributes: component category tag is Mechanical Equipment_Chiller, material is 304 stainless steel, and manufacturer is Carrier Air Conditioning. Concatenate the component feature string "Mechanical Equipment_Chiller_Stainless Steel 304_Carrier Air Conditioning_789012" according to the rule of category tag_material_manufacturer_source file internal ID. Input the feature string and the original code into the SHA-256 algorithm to generate the corresponding globally unique identifier. Use this globally unique identifier as the key, and the geometric mesh data storage path and structured semantic attributes as the values to store it in the globally unique identifier dictionary. Through the above process, the project names of the source files are semantically extracted and standardized and recombined, and converted into unified identifiers that can be recognized by the algorithm. Underscores are used as semantic delimiters throughout, and the naming logic is consistent. The above embodiments deconstruct the massive model file into pure geometric data and text attribute data through the parsing engine, eliminating the barriers of the source file format; and use the SHA-256 algorithm to generate a dictionary to ensure the absolute uniqueness of component identifiers when merging across disciplines and files, laying a precise data addressing foundation for subsequent lightweight processing and map construction. S2. Based on a globally unique identifier dictionary, perform adaptive lightweight processing on the geometric mesh data based on semantic features to remove redundant internal hidden components, and use a quadratic error metric algorithm to generate multi-detail level streaming slice files. Please see Figure 2 The specific steps for eliminating redundant internal hidden components in S2 include: S211. Read the geometric mesh data from the globally unique identifier dictionary, and calculate the axial bounding box of each physical component based on the three-dimensional vertex coordinate set of the geometric mesh data; Specifically, in embodiment S211, the system reads the geometric mesh data of a pre-embedded steel plate physical component located inside the core tube of the terminal building's basement; the system extracts the coordinates of all three-dimensional vertices of the pre-embedded steel plate, finds the maximum and minimum values in the X, Y, and Z coordinate axes, and calculates the axial bounding box of the pre-embedded steel plate, such as a bounding box size of 0.5m × 0.5m × 0.02m; S212. Construct a spherical bounding sphere with a preset number of sampling points uniformly distributed, using the geometric center of the axial bounding box as the sphere's center. Specifically, in embodiment S212, the system calculates the geometric center coordinates of the axial bounding box, such as (X... center =1100.00,Y center =2200.00,Z center =-5.00); The system uses the geometric center as the center of the sphere and half the length of the diagonal of the bounding box as the radius of the bounding sphere; The system uses the Fibonacci spherical sampling algorithm to uniformly generate a preset number of sampling points, such as 1000, on the surface of the sphere bounding the sphere; S213. Launch test rays from each sampling point toward the center of the sphere, and use the ray intersection algorithm to determine whether the test rays intersect with other physical components in the multi-format building information model; Specifically, in embodiment S213, the ray intersection calculation adopts a two-level performance optimization mechanism, which includes spatial index acceleration and parallel computing acceleration. The spatial index acceleration is achieved by pre-constructing a bounding box hierarchy tree (BVH) of all scene components. When performing ray intersection, candidate components are quickly filtered through BVH to avoid global traversal. The parallel computing acceleration is based on a GPU parallel computing framework, which parallelizes the ray intersection task of all sampling points, greatly improving the computational efficiency. The system initiates GPU parallel computing and simultaneously emits test rays from 1000 sampling points toward the center of the sphere; the system uses the bounding box hierarchy to accelerate the ray intersection test; since the embedded steel plate is completely wrapped in the core tube shear wall concrete physical component with a thickness of 0.8 meters in physical space, the test ray must hit the outer shear wall surface before reaching the surface of the embedded steel plate. S214. Count the number of test rays that do not intersect with other physical components, divide the number of non-intersecting rays by the preset number of sampling points, and calculate the visibility rate of the physical components. Specifically, in embodiment S214, after ray intersection calculation, if the system counts that out of 1000 test rays, 998 rays intersected with the outer shear wall and were blocked; the system calculates that the number of non-intersecting rays is 2; the system divides the number of non-intersecting rays 2 by the preset number 1000, and calculates that the exposed visibility rate of the embedded steel plate is 0.002, or 0.2%; S215. Determine whether the exposed visibility rate is greater than the preset exposed visibility rate threshold; when the exposed visibility rate is greater than the preset exposed visibility rate threshold, determine that the physical component is an externally visible component and retain the geometric mesh data of the physical component; when the exposed visibility rate is not greater than the preset exposed visibility rate threshold, determine that the physical component is a redundant internally hidden component and delete the geometric mesh data corresponding to the redundant internally hidden component from the global unique identifier dictionary. The Figure 2 The outer perimeter shielding components are shear walls, the target concealment components are embedded steel plates, the sampling enclosure sphere is the sampling sphere of the target component, and the rays are divided into two categories: shielded and unshielded, corresponding one-to-one with the logic for calculating the exposed visibility rate; the aforementioned Figure 2 The logic of quantified visibility calculation by combining spherical sampling with ray intersection is presented intuitively. Combined with the above embodiments, the lightweight operation that relies on human experience is transformed into quantifiable spatial geometry calculation. It can automatically and accurately identify and remove completely enclosed internal hidden components, such as embedded steel plates. Without affecting the visualization effect, it reduces about 30% of invalid mesh data from the source, which greatly reduces the computing power burden for subsequent streaming rendering. Specifically, in embodiment S215, the preset exposed visibility threshold is set based on the limits of human visual perception and the statistical settings of building BIM specifications. Specifically, it is set by statistically analyzing the ratio of the minimum exposed surface area to the surface area of the enclosing sphere of visible components in the completed BIM models of similar historical projects. The system extracts a sample library of manually marked visible components from the historical models, calculates the proportion of non-intersecting rays for each sample, and uses the lower quartile of the proportion of non-intersecting rays in the sample library as the preset exposed visibility threshold. For example, the preset exposed visibility threshold is 0.05, or 5%. Choosing the lower quartile ensures that over 95% of manually marked visible components are retained, while maximizing the elimination of hidden components. The historical annotation data comes from the visible component annotation library of the company's completed projects, and the annotation standard is that it is visible to the naked eye from a normal operation and maintenance inspection perspective. For special parts such as curtain walls and interior decoration, the threshold can be manually adjusted to adapt to different visibility accuracy requirements. The system determines whether 0.002 is greater than 0.05. Since 0.002 is not greater than 0.05, the system determines that the embedded steel plate is a redundant internal concealed component. The system deletes the geometric mesh data corresponding to the embedded steel plate from the globally unique identifier dictionary. After removing the geometric mesh data of the redundant concealed component, the corresponding key-value pairs in the globally unique identifier dictionary are retained. Only the storage path of the geometric mesh data in the key-value pairs is deleted. The semantic attribute data is still completely retained and can be used for subsequent business association and statistical analysis. In contrast, for the physical components of fire sprinklers installed below the ceiling, the system calculated that there were 850 non-intersecting rays, and the exposed visibility rate was 0.85. The system determined that 0.85 was greater than 0.05, and therefore judged the fire sprinkler to be a visible component. The system retained the geometric mesh data of the fire sprinkler. Furthermore, after eliminating redundant concealed components, please refer to... Figure 3 The specific steps in S2 for generating multi-level detail streaming slice files using the quadratic error metric algorithm include: S221. Extract the geometric mesh data of the physical components that have not been removed, and obtain the coordinates of all triangular faces and vertices in the geometric mesh data; Specifically, in embodiment S221, the system extracts and retains the geometric mesh data of the chiller unit_01; the chiller unit contains extremely precise heat dissipation fins and bolts, such as a total number of 50,000 triangular facets and a number of 25,000 vertices. S222. For each vertex coordinate, for each vertex, accumulate the quadratic error matrices corresponding to all its adjacent triangular planes to construct the initial quadratic error matrix of that vertex, i.e., a 4×4 symmetric matrix; the sum of squared distances from the vertex to the adjacent planes can be obtained by performing a quadratic operation on the homogeneous coordinates of the vertex and the matrix, and the result is a scalar value. Specifically, in embodiment S222, the system targets vertex V i Extracting the vertex containing V i The system calculates the 5 adjacent triangular faces; the vertex V i The sum of the squared distances to these 5 planes is represented as a 4×4 symmetric matrix, i.e., the initial quadratic error matrix; the quadratic error matrix corresponding to a single triangular plane is defined as follows: the plane containing each triangular facet is represented by the equation ax + by + cz + d = 0; where a, b, and c are the components of the unit normal vector of the triangular facet along the X, Y, and Z axes, and d is the perpendicular distance from the origin to the plane; a 2 +b 2 +c 2 =1 is the unit normal vector; let the plane vector p = [a, b, c, d] T Then the quadratic error matrix corresponding to this plane is K. p =ppT That is, a 4×4 symmetric matrix; the initial quadratic error matrix of the vertices. Q v It is the sum of the quadratic error matrices of all adjacent triangular faces of that vertex, i.e. ; S223. Traverse all valid edges in the geometric mesh data and calculate the cost algebraic value when folding the valid edges into a single new vertex. The cost algebraic value is a non-negative scalar equal to the homogeneous coordinates of the new vertex. v new The result of the quadratic form operation corresponding to the quadratic error matrix, i.e. The smaller the value, the smaller the geometric error of the edge folding; Specifically, in embodiment S223, the system extracts the connection vertex V. i With vertex V j A valid edge ij The system simulation will use vertex V i With V j Merge into a new vertex v new The system calculates new vertices. v new The system calculates the quadratic error matrix and solves the quadratic equation to minimize the error value of the new vertex under the matrix. The system uses the minimum error value as the cost algebraic value of folding the effective edge. The optimal position of the new vertex is obtained by minimizing the quadratic error value: the merged error matrix after edge folding. Q new = Q i + Q j Solve the system of linear equations Q new v new =0 yields the vertex coordinates that minimize the error; if the matrix is not invertible, the midpoint between the two endpoints of the edge is taken as the approximate optimal position. S224. Sort all valid edges in ascending order of cost algebra value, extract the valid edge with the smallest cost algebra value, perform edge folding operation, and update the quadratic error matrix of adjacent vertices. Specifically, in embodiment S224, the system places tens of thousands of valid edges into a min-heap data structure according to their cost algebraic values; the system pops the valid edge with the smallest cost algebraic value from the top of the heap, which is usually located in a visually flat area; the system performs an edge folding operation, eliminating two old vertices and two associated triangular faces, and inserting a new vertex. v new And recalculate v newThe quadratic error matrix of the surrounding adjacent vertices is used to update the min-heap; S225. Repeat S224 until the total number of faces in the geometric mesh data is reduced to 75%, 50%, and 25% of the original total number of faces, respectively. Then output the first level of detail model, the second level of detail model, and the third level of detail model in sequence. Specifically, in embodiment S225, the system continuously executes the edge-folding loop; when the total number of faces decreases from 50,000 to 37,500 (75%), the system saves the current mesh state and outputs the first level of detail model; the loop continues, and when the number of faces decreases to 25,000 (50%), the second level of detail model is output; when the number of faces decreases to 12,500 (25%), the third level of detail model is output; The 75%, 50%, and 25% mentioned are the four-level LOD classification standards commonly used in the field of engineering visualization, which correspond to four typical application scenarios: panoramic browsing, regional viewing, component preview, and detailed viewing, respectively. In specific implementation, differentiated simplification ratios can also be configured for different component types: a higher retention ratio is used for precision equipment components, and a lower retention ratio is used for conventional pipeline components, balancing rendering efficiency and model accuracy. S226. Take the original geometric mesh data as the zero level of detail model, and package and compress the zero level of detail model, the first level of detail model, the second level of detail model, and the third level of detail model into a multi-level of detail streaming slice file. Specifically, in embodiment S226, the system defines the original 50,000-facet model as the zeroth level of detail model, i.e., the highest precision; the system uses the Draco compression algorithm to perform lossless compression on the geometric data of four different levels of detail, and packages them according to the spatial octree structure to generate multi-level of detail streaming slice files. The Figure 3 The number of facets is taken as an example of the chiller unit_01 component in the embodiment. The original 50,000 triangular facets correspond to LOD0, and the remaining levels are obtained by simplifying them proportionally. Figure 3 The quantitative display shows the gradient of the number of facets in the four-level LOD model. Combined with the quadratic error measurement algorithm in the above embodiment, a hierarchical model with facet ratios of 75%, 50%, and 25% is generated while preserving the key geometric boundary features of the components. This avoids the loss of model features caused by blind compression and provides standardized hierarchical data support for on-demand loading by the terminal. It is the core data foundation for achieving smooth rendering of massive BIM models. S3. Extract multi-dimensional project information, and use the globally unique identifiers in the globally unique identifier dictionary as the core nodes to construct a dynamic mapping graph that integrates spatial topology edges and business logic edges in the graph database. S3 includes the following steps: S31. In the graph database, instantiate each globally unique identifier in the globally unique identifier dictionary as a component node; Specifically, in embodiment S31, the system selects Neo4j as the underlying graph database; reads the globally unique identifier dictionary; executes the graph creation command, and instantiates the chiller unit_01 with the globally unique identifier e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855 as a solid component node in Neo4j; the attributes of the component node include static information such as component name and material; S32. Extract the axial bounding box coordinates of the physical components and determine whether the axial bounding box coordinates of any two physical components overlap in three-dimensional space. If so, create an undirected spatial topology edge between the component nodes corresponding to the two physical components. Otherwise, do not create an undirected spatial topology edge between the component nodes corresponding to the two physical components. Specifically, in embodiment S32, the system extracts the axial bounding box AABB_1 of the chiller unit_01 and the axial bounding box AABB_2 of the cooling water supply steel pipe_05 installed adjacent to it; the system uses the separation axis theorem to calculate whether AABB_1 and AABB_2 intersect or overlap in three-dimensional space. The system determines that AABB_1 and AABB_2 overlap in space; due to the overlap, the system determines that they have a physical connection; the system creates an undirected spatial topological edge between the component node corresponding to chiller unit_01 and the component node corresponding to cooling water supply steel pipe_05, named PHYSICALLY_CONNECTED; the axial bounding box AABB is a convex geometry, and the separating axis theorem applies to the overlap determination of AABB; bounding box overlap is a necessary but not sufficient condition for physical contact of components, used to quickly screen candidate pairs of topological associations; a 50mm overlap tolerance range is set to accommodate component modeling errors and construction and installation gaps; for irregular non-convex components, precise triangular facet collision detection can be further performed on the basis of bounding box overlap to confirm the physical contact relationship; the relation type names in the graph database adopt the industry-standard naming format of uppercase underscores, with English words separated by underscores, clearly expressing the association meaning between nodes, consistent with the aforementioned semantic segmentation logic; For example, for another exhaust fan_10 located 50 meters away, the system determines that its bounding box does not overlap with AABB_1; since there is no overlap, the system does not create a spatial topology edge between the chiller node and the exhaust fan node. S33. Extract multi-dimensional project information from the enterprise resource planning system. The multi-dimensional project information includes schedule nodes, quality inspection nodes, and safety hazard nodes. Specifically, in embodiment S33, the system connects to the enterprise resource planning system of the terminal construction general contractor through an API interface; the system extracts the schedule node with ID Task_HVAC_001, the content of which is such as the installation of equipment in the first-floor chiller room; it extracts the quality inspection node with ID QC_050, the content of which is such as the non-standard installation of the equipment foundation vibration damping pad; and it extracts the safety hazard node with ID Safe_012, the content of which is such as the lack of protective railings at the edge opening of the equipment room; the above business node IDs all adopt a standardized coding rule with underscore segments: Task / QC / Safe represent the business types of schedule, quality, and safety, respectively, HVAC corresponds to the professional category, and the last number is the document serial number; this coding rule is consistent with the naming logic of BIM components, providing a format basis for subsequent accurate string matching; S34. Based on the component association codes inherent in the multidimensional project information, a directed business logic edge is created between the schedule node, quality inspection node, safety hazard node and the corresponding component node through a string precise matching algorithm. A dynamic mapping graph is generated by combining the component node and the spatial topology edge. Specifically, in embodiment S34, the system extracts the associated code chiller_01 filled in the Task_HVAC_001 progress document; the system uses a string exact matching algorithm to retrieve the corresponding component node in the graph database; the system creates a directed business logic edge between the progress plan node and the component node, named BELONGS_TO_SCHEDULE. Similarly, the system extends a directed edge named HAS_QUALITY_ISSUE from the quality inspection node QC_050 to the component node; the system combines all the above nodes and edges to generate a dynamic mapping graph. The direction of the directed business logic edge is from the business node containing progress, quality, and safety nodes to the component node, representing the association of business items with the corresponding physical components; during traversal and query, business data is traced back along the edge from the component node; when the business system coding and model coding rules are inconsistent, fuzzy matching and coding mapping table adaptation are supported; semantic fuzzy matching is performed through the edit distance algorithm, or coding mapping dictionaries of different systems are pre-configured to achieve automatic association under heterogeneous coding systems; Through the above embodiments, the system tightly weaves tens of thousands of scattered business forms and three-dimensional model components into a huge dynamic mapping map, which not only establishes the business logic mapping between forms and components, but also depicts the physical spatial topological relationship between components, breaking down information silos. S4. Monitor data change events of multi-dimensional project information. When a data change event is captured, use the dynamic mapping graph and the optimistic locking mechanism based on the state version number to perform dynamic synchronization of project information and update the business status of the affected globally unique identifier nodes. Specifically, in embodiment S4, optimistic locking is implemented through atomic transactions in graph databases such as Neo4j. The Cypher logic is as follows: matching nodes with specified GUIDs and matching version numbers, and simultaneously performing business attribute updates and version number auto-incrementing, using transaction atomicity to ensure the consistency of version verification and increment operations; for updates of business logic edges and spatial topology edges, independent version numbers can be set in the edge attributes, or cascading verification can be performed by associating the version numbers of the two end nodes to avoid concurrent modification conflicts of edges; S4 includes the following steps: S41. Initialize the status version number attribute in each component node of the graph database, and set the initial integer value of the status version number attribute to zero. Specifically, in embodiment S41, when the system creates a node in the graph database, it adds an attribute field named Version_ID to the chiller_01 component node. The system forces the initial integer value of Version_ID to be 0. The field name uses underscores to separate semantic words, which is the standard naming method for database fields and is easy for the code layer to identify and parse. S42. Capture data change events through the message queue listening port, parse the request payload in the data change event, and extract the target globally unique identifier, the changed business field and the request version number carried in the request payload; Specifically, in embodiment S42, the system deploys MQTT message queue middleware; the on-site progress administrator confirms the chiller unit installation is complete via a mobile APP; the mobile APP sends a JSON-formatted data change event to the MQTT server; the system listens on the port to capture the data change event and parses the JSON request payload; the system extracts the target globally unique identifier, i.e., the unique identifier of the chiller unit, extracts the change business field such as Status:Completed, and extracts the request version number carried by the mobile APP when sending the request, such as Request_Version:0; The request payload for the data change event is in JSON format, and the complete fields include: target globally unique identifier, set of changed business fields, request version number, operation timestamp, operator identity, operation type, and business source system identifier; the operation type includes add / modify / delete; S43. Using the index structure of the dynamic mapping graph, quickly locate the target component node corresponding to the target globally unique identifier and read the current actual version number of the target component node; Specifically, in embodiment S43, the system uses Neo4j's B+ tree underlying index to locate the target component node among millions of nodes with a latency of less than 5 milliseconds; the system reads the current actual version number of the target component node in the database, such as Current_Version:0; S44. Determine if the requested version number is equal to the current actual version number; when the requested version number is equal to the current actual version number, determine that there is no concurrent operation conflict, update the changed business field to the target component node, and increment the current actual version number of the target component node by one; when the requested version number is not equal to the current actual version number, determine that there is a concurrent operation conflict, refuse to update the changed business field, and return a version conflict error message to the sending end that triggered the data change event. Specifically, in embodiment S44, under normal circumstances, the system determines that the requested version number 0 is equal to the actual version number 0; since the two are equal, the system determines that there is no concurrent operation conflict; the system performs a write operation to update the business status of the component node to Completed; at the same time, the system increments the actual version number of the component node by one and updates it to Current_Version:1; In an extreme concurrency scenario, suppose another quality inspector on-site discovers scratches on the chiller unit and submits a rework request via tablet. The tablet previously retrieved an offline version number of 0 when reading the model, so the requested version number is 0, and the business field is changed to Status: Rework. After the system captures the event, it reads the actual version number. Since the previous progress update modified the actual version number to 1, the system determines that the requested version number 0 is not equal to the actual version number 1. Due to the inequality, the system determines that there is a concurrent operation conflict. The system immediately refuses to update the status to Rework and sends a version conflict error message to the quality inspector's tablet: "Data has been modified by someone else, please refresh and try again." When the sending end receives a version conflict error, it automatically pulls the latest version number and current business status of the target node from the server; compares the local changes with the latest status, and automatically merges conflict-free fields; if there are field conflicts, three strategies can be configured: automatic overwrite, retaining the server version, or pushing a manual conflict merging interface. After merging, the update request is resubmitted with the latest version number. The above embodiments, by introducing a version number optimistic locking mechanism into the graph, solve the problem of data overwriting and state disorder that may be caused when multiple departments and roles operate the model on-site at the same time in large-scale projects, and ensure the strict consistency of the graph node states. S5. Respond to the 3D loading and click requests of the visualization terminal, perform streaming rendering based on multi-detail level streaming slice files and dynamic mapping maps, and perform multi-dimensional project information penetration visualization interaction along the spatial topology edge and business logic edge. Please see Figure 4 The specific steps for performing streaming rendering in S5 include: S511: The visualization terminal obtains the three-dimensional coordinates and field of view parameters of the current virtual camera, and extracts the bounding sphere radius and bounding sphere center coordinates of all physical components in the multi-detail level streaming slice file. Specifically, in embodiment S511, the project manager opens the visualization screen; the visualization terminal obtains the current three-dimensional coordinate position of the virtual camera, such as (Cam). X Cam Y Cam Z Meanwhile, the vertical field of view parameters of the camera, such as 60 degrees, are obtained; the header index table of the multi-detail level streaming slice file loaded by the terminal is parsed to extract the radius of the bounding sphere of the distant exhaust fan_10, such as R=1.5 meters, and the coordinates of the center of the bounding sphere; S512. Calculate the spatial straight-line distance between physical components and the virtual camera based on the three-dimensional coordinates of the virtual camera and the center coordinates of the bounding sphere; Specifically, in embodiment S512, the terminal uses the Euclidean distance formula to calculate the sum of squares of the differences between the virtual camera coordinates and the center coordinates of the exhaust fan and takes the square root to calculate the spatial straight-line distance between the exhaust fan and the virtual camera, such as D=150 meters. S513. Using the spatial straight-line distance, the radius of the bounding sphere, and the field of view parameters, calculate the percentage of the pixel projection area of the physical component on the visualization terminal screen. Specifically, in embodiment S513, the terminal calculates the pixel ratio occupied by the exhaust fan on the two-dimensional screen; the pixel projection area ratio P The calculation formula is Where R represents the radius of the bounding sphere of the physical component, in meters; and D represents the straight-line distance in space from the center of the bounding sphere to the virtual camera, in meters. θ The vertical field of view of the virtual camera is expressed in degrees. Substituting R=1.5, D=150, and a field of view of 60 degrees into the formula, the pixel projection area ratio is calculated to be approximately 0.000236. The formula is based on the component bounding sphere approximation and is applicable to scenes where the field of view does not exceed 90° and the component is far from the camera. The calculated result is an approximation of the projection ratio. For near-distance non-spherical components, the axial bounding box projection method can be used to correct the calculation result, and the error can be controlled within 15%, meeting the LOD scheduling accuracy requirements. S514. Determine whether the pixel projection area ratio is greater than the high-precision rendering threshold; if so, send a request instruction to the server to download and render the zeroth level of detail model of the physical component; otherwise, further determine whether the pixel projection area ratio is greater than the medium-precision rendering threshold; if it is greater than the medium-precision rendering threshold, download and render the first level of detail model of the physical component; if it is not greater than the medium-precision rendering threshold, download and render the third level of detail model of the physical component. Specifically, in embodiment S514, the high-precision rendering threshold and the medium-precision rendering threshold are set through statistical analysis of the minimum resolvable geometric features of the human eye under different screen resolutions. Specifically, the high-precision rendering threshold is determined by extracting the average pixel resolution of commonly used visualization terminal screens, dividing the visible area of the terminal screen into a nine-grid, and taking half of the area of the central region as the high-precision rendering threshold. The medium-precision rendering threshold is calculated based on the minimum resolvable angle of the human eye at a standard viewing distance to the screen pixel array, deriving the proportion of the minimum resolvable feature area to the total screen area. For example, the preset high-precision rendering threshold is 0.1, which occupies 10% of the screen area, and the preset medium-precision rendering threshold is 0.01, which is 1%. Based on a standard 1080P screen and a normal viewing distance, the minimum resolvable feature of the human eye is about 10 pixels on the screen, corresponding to a screen area proportion of about 0.01, which is set as the medium-precision threshold. The high-precision threshold of 0.1 corresponds to the component occupying one-tenth of the screen area, at which point detailed textures need to be displayed, which conforms to the visual perception law of the human eye. In specific implementation, the above method can be combined with the specific screen resolution to set the threshold. The terminal determines whether 0.000236 is greater than 0.1; since it is not greater than 0.1, the terminal further determines whether 0.000236 is greater than 0.01; since it is still not greater than 0.01, the terminal determines that the exhaust fan is only a tiny black dot on the screen; the terminal sends a request to the server to download and render only the third level of detail model of the exhaust fan. When the viewing angle is zoomed in, reducing the straight-line distance D in space to 5 meters, the terminal recalculates the pixel projection area ratio to 0.212. The terminal determines that 0.212 is greater than 0.1. Since this is greater than the high-precision rendering threshold, the terminal immediately requests to download and render the zero-detail level model, instantly presenting the screw texture details on the surface of the exhaust fan. The download and rendering method is an asynchronous streaming loading mechanism for LOD model download. Before the download is complete, the currently loaded low-level model is displayed, and the new level data is seamlessly switched after loading, avoiding blank screens or flickering. The Figure 4 The horizontal axis represents the straight-line distance between the component and the virtual camera, in meters; the vertical axis represents the percentage of pixel projection area, ranging from 0 to 1. The marked 0.1 and 0.01 are the boundary thresholds for LOD level 3 scheduling, and a view distance of 5m is an example scene for high-precision loading. Figure 4 The paper demonstrates the correspondence between viewing distance and pixel projection ratio, as well as a three-level scheduling strategy that divides high and low precision thresholds. Combined with the above embodiments, the allocation of rendering resources is deeply bound to the intensity of visual perception. That is, low-precision models are automatically loaded for small components at a distance, and high-precision models are automatically switched for components at a close distance, so as to achieve precise on-demand allocation of computing resources. Compared with the full high-precision loading method, the terminal model loading response time can be reduced to less than 2 seconds, which significantly improves the visualization smoothness of ultra-large-scale BIM scenes. Furthermore, the specific steps for performing the penetrating visualization interaction of multi-dimensional project information in S5 include: S521. The visual terminal captures the screen coordinates of the user's mouse clicks, and projects the screen coordinates of the mouse clicks from the two-dimensional screen coordinate system to the three-dimensional world coordinate system to generate a picking ray with direction. Specifically, in embodiment S521, the project manager finds that the chiller unit_01 is highlighted in yellow on the screen; the project manager clicks on the unit with the left mouse button; the terminal captures the two-dimensional coordinates of the mouse on the screen; the terminal combines the camera's projection matrix and view matrix, performs inverse matrix transformation, and generates a picking ray that starts from the camera origin and passes through the clicked position on the screen; S522. Use the picked ray and the currently rendered multi-detail level streaming slice file to perform triangular facet intersection calculation, obtain the intersection point closest to the virtual camera, and extract the query global unique identifier of the physical component to which the intersection point belongs. Specifically, in embodiment S522, the terminal uses a ray-bounding box intersection algorithm to filter out candidate components that are penetrated by rays; performs precise ray-triangle intersection calculation; extracts the intersection point closest to the virtual camera, determines that the user actually clicked on the chiller unit, and extracts the globally unique identifier bound to the chiller unit. S523. Send the globally unique identifier as the query primary key to the server. After receiving the query primary key, the server performs a first depth-first traversal search along the business logic edge in the dynamic mapping graph, starting from the component node corresponding to the query primary key, to obtain direct business data. At the same time, it performs a second depth-first traversal search along the spatial topology edge to obtain physically adjacent component nodes. Specifically, in embodiment S523, the terminal sends the query primary key to the backend server; the server starts from the chiller unit node in the Neo4j graph database; firstly, it performs a first depth-first traversal search outward along the business logic edges such as HAS_QUALITY_ISSUE; at the same time, the server performs a second depth-first traversal search outward along the spatial topology edge PHYSICALLY_CONNECTED established in S32, and quickly finds the cooling water supply steel pipe_05 node that is physically connected to the chiller unit; Furthermore, for business logic edges, the first depth-first traversal has a default depth of 1, querying only directly related business nodes; for spatial topology edges, the second depth-first traversal has a default depth of 1, querying only directly physically adjacent components; the depth can be expanded according to business needs, with a maximum of 3 layers; during the traversal, a set of visited nodes is maintained, and duplicate nodes are skipped to avoid loop traversal; the node index and edge index of the graph database are used to accelerate positioning, and label filtering and pruning are used during the traversal to retrieve only target type nodes, avoiding full graph traversal; S524. Extract the business attribute data from the schedule nodes, quality inspection nodes and safety hazard nodes reached by the first depth-first traversal search, and extract the associated hazard status of the physically adjacent component nodes reached by the second depth-first traversal search. Package the business attribute data and associated hazard status into information aggregation panel data and return it to the visualization terminal. Specifically, in embodiment S524, the graph engine extracts associated quality node data such as photos of damaged shock absorbers; at the same time, the engine extracts associated hidden danger status of the cooling water supply steel pipe_05 node, such as the risk of water leakage in the pipeline; the server packages the business attribute data of the chiller unit itself and the associated hidden danger status of the adjacent steel pipe into a unified JSON format information aggregation panel data and returns it to the visualization terminal. S525: The visual terminal receives data from the information aggregation panel, renders a floating information panel on the screen, and displays multi-dimensional project information and warnings of potential hazards associated with adjacent physical components. Specifically, in embodiment S525, the associated hazard warning is generated based on hazard propagation rules and spatial topology: when the clicked component has hazard types such as vibration, leakage, structural deformation, or fire risk, the system automatically marks the components physically connected to it as associated hazard risks; the risk level is automatically classified according to the hazard type and the connection strength of the components. For example, vibration hazards have a high associated risk level for rigidly connected pipelines and a low associated risk level for flexiblely connected components. The terminal parsed the returned data and a floating information panel popped up on the right side of the model window. With a single click, the project manager could not only view photos of the chiller unit's own quality defects, but also see warnings of related defects pushed by the system based on the spatial topology at the bottom of the panel, such as: Note: Physically connected cooling water steel pipes may leak due to vibration caused by damage to the unit's vibration damping pads. The above embodiments dynamically schedule slices using ray intersection and quadratic error measurement algorithms, which reduces the model file size compared to the traditional full loading method, reducing the terminal loading response time to less than 2 seconds and ensuring smooth loading of massive models on ordinary terminals. At the same time, by using ray picking and depth traversal search of graph database, the data query latency across business systems is controlled to within 50 milliseconds. This not only aggregates isolated business form data, but also uses spatial topological edges to realize the joint hidden danger investigation and early warning of adjacent components, improving the management decision-making efficiency and safety control depth of large and complex projects.
[0025] Furthermore, a lightweight BIM-based project information dynamic mapping system is provided to implement the aforementioned lightweight BIM-based project information dynamic mapping method; the system includes: The multi-source model parsing module is used to receive building information models in multiple formats, separate geometric mesh data from semantic attribute data, and generate a globally unique identifier dictionary. An adaptive lightweight module is used to remove redundant internal hidden components and generate multi-detail level streaming slice files using a quadratic error metric algorithm. The dynamic graph construction module is used to build a dynamic mapping graph that integrates spatial topological edges and business logic edges in a graph database. The concurrent synchronization control module is used to monitor data change events and use a dynamic mapping graph and an optimistic locking mechanism based on state version numbers to perform dynamic synchronization of project information. The Penetrating Rendering Interaction Module is used to perform streaming rendering based on multi-level detail streaming slice files and dynamic mapping maps, and to perform penetrating visualization interaction of multi-dimensional project information along spatial topology edges and business logic edges. This invention breaks away from the traditional BIM model's discretized management model, which emphasizes presentation over logic and project information over forms over space. By performing visibility elimination and error measurement dimensionality reduction from the geometric grid layer, combined with dynamic view distance calculation, an on-demand streaming rendering pipeline matching the terminal's computing power is constructed. Simultaneously, using hash-unique identifiers as anchors, the three-dimensional spatial topological relationships and frequently changing multi-dimensional business chains are deeply integrated into the graph database, supplemented by optimistic concurrency control. This invention effectively reduces the size of massive model files and terminal rendering latency, improves the retrieval speed of cross-dimensional business data, eliminates the risk of data corruption during multi-user collaborative concurrency, and achieves real-time, accurate, and consistent linkage mapping between the three-dimensional spatial model and multi-element information of the construction site.
Claims
1. A method for lightweighting and dynamic mapping of project information based on digital twin BIM, characterized by the following steps: S1. Receive a multi-format building information model, use a data parsing interface to separate the multi-format building information model into geometric grid data and semantic attribute data, clean the semantic attribute data and use a hash algorithm to generate a globally unique identifier dictionary; S2. Based on the globally unique identifier dictionary, perform adaptive lightweight processing based on semantic features on the geometric mesh data, remove redundant internal hidden components, and use a quadratic error measurement algorithm to generate multi-detail level streaming slice files. S3. Extract multi-dimensional project information, and use the globally unique identifiers in the globally unique identifier dictionary as nodes to construct a dynamic mapping graph that integrates spatial topology edges and business logic edges in the graph database. S4. Monitor the data change events of the multi-dimensional project information. When the data change event is captured, use the dynamic mapping graph and the optimistic locking mechanism based on the state version number to perform dynamic synchronization of project information and update the business status of the affected globally unique identifier nodes. S5. Responding to the 3D loading and click requests from the visualization terminal, based on the multi-detail level streaming slice file and dynamic mapping map, perform streaming rendering, and execute the penetrating visualization interaction of the multi-dimensional project information along the spatial topology edge and business logic edge.
2. The method for lightweighting and dynamic mapping of project information based on digital twin BIM according to claim 1, characterized in that, The specific steps in S1 for generating a globally unique identifier dictionary using a hash algorithm include: S11. Use the underlying data parsing engine to read the source files of multi-format building information models and traverse all physical components; S12. Extract the set of three-dimensional vertex coordinates of the physical component as geometric mesh data, and at the same time extract the material name, manufacturer and component classification label of the physical component as semantic attribute data. S13. Combine the material name, manufacturer, and component classification label into a component feature string according to string concatenation rules; S14. Input the component feature string and the original encoding of the physical component in the source file into a secure hash algorithm to generate a hash value with a length of 256 bits; convert the hash value into a hexadecimal string as a globally unique identifier; S15. Establish a mapping relationship between the globally unique identifier and the geometric mesh data and semantic attribute data; store the mapping relationship as a key-value pair structure to generate a globally unique identifier dictionary.
3. The method for lightweighting and dynamic mapping of project information based on digital twin BIM according to claim 1, characterized in that the specific steps of eliminating redundant internal hidden components in S2 include: S211. Calculate the axial bounding box of each physical component based on the three-dimensional vertex coordinate set of the geometric mesh data; S212. Using the geometric center of the axial bounding box as the center of the sphere, construct a spherical bounding sphere with a predetermined number of sampling points evenly distributed. S213. A test ray is emitted from each of the sampling points toward the center of the sphere, and a ray intersection algorithm is used to determine whether the test ray intersects with other physical components in the multi-format building information model. S214. Count the number of test rays that do not intersect with other physical components, divide the number by the preset number of sampling points, and obtain the visibility rate of the physical components. S215. Determine whether the exposed visibility rate is greater than the exposed visibility rate threshold. If so, retain the geometric mesh data of the physical component; Otherwise, the geometric mesh data corresponding to the redundant internal hidden component is deleted from the globally unique identifier dictionary.
4. The method for lightweighting and dynamic mapping of project information based on digital twin BIM according to claim 1, characterized in that the specific steps in S2 of generating multi-level detail streaming slice files using a quadratic error measurement algorithm include: S221. Obtain all triangular faces and vertex coordinates in the geometric mesh data of the physical components that have not been removed; S222. For each vertex, accumulate the quadratic error matrices corresponding to all its adjacent triangular planes to construct the initial quadratic error matrix of the vertex. S223. Calculate the cost algebraic value when all valid edges in the geometric mesh data are folded into a single new vertex; the cost algebraic value is a non-negative scalar, equal to the quadratic form operation result of the quadratic error matrix corresponding to the homogeneous coordinates of the new vertex; S224. Sort all the effective edges in ascending order according to the cost algebra value, extract the effective edge with the smallest cost algebra value, perform the edge folding operation, and update the quadratic error matrix of the adjacent vertices. S225. Repeat S224 until the total number of faces in the geometric mesh data is reduced to 75%, 50% and 25% of the original total number of faces, respectively, and output the first level of detail model, the second level of detail model and the third level of detail model in sequence. S226. The original geometric mesh data is used as the zero level of detail model, and the zero level of detail model, the first level of detail model, the second level of detail model and the third level of detail model are packaged and compressed into the multi-level of detail streaming slice file.
5. The method for lightweighting and dynamic mapping of project information based on digital twin BIM according to claim 1, characterized in that the specific steps in S3 for constructing a dynamic mapping graph that integrates spatial topology edges and business logic edges include: S31. In the graph database, instantiate each globally unique identifier in the globally unique identifier dictionary as a component node; S32. Determine whether the axial bounding box coordinates of any two physical components overlap in three-dimensional space; If so, create an undirected spatial topology edge between the component nodes corresponding to the two physical components; Otherwise, do not create undirected spatial topological edges; S33. Extract multi-dimensional project information from the enterprise resource planning system; the multi-dimensional project information includes schedule nodes, quality inspection nodes, and safety hazard nodes. S34. Based on the component association codes inherent in the multidimensional project information, a directed business logic edge is created between the schedule node, quality inspection node, safety hazard node and the corresponding component node using a string precise matching algorithm. The dynamic mapping graph is then generated by combining the component node and the spatial topology edge.
6. The method for lightweighting and dynamic mapping of project information based on digital twin BIM according to claim 1, characterized in that the specific steps in S4 of performing dynamic synchronization of project information using a dynamic mapping map and an optimistic locking mechanism based on state version numbers include: S41. Initialize the status version number attribute in each component node of the graph database, and set the initial integer value of the status version number attribute to zero. S42. Capture data change events through the message queue listening port, parse the request payload in the data change event, and extract the target globally unique identifier, the changed business field and the request version number carried in the request payload; S43. Using the index structure of the dynamic mapping graph, quickly locate the target component node corresponding to the target globally unique identifier, and read the current actual version number of the target component node; S44. Determine whether the requested version number is equal to the current actual version number; If so, update the changed business field to the target component node, and increment the current actual version number of the target component node by one; Otherwise, the update of the changed business field is refused, and a version conflict error message is returned to the sending end that triggered the data change event.
7. The method for lightweighting and dynamic mapping of project information based on digital twin BIM according to claim 1, characterized in that the specific steps of performing streaming rendering in S5 include: S511. Obtain the three-dimensional coordinates and field of view parameters of the current virtual camera through the visualization terminal, and extract the bounding sphere radius and bounding sphere center coordinates of all physical components in the multi-detail level streaming slice file. S512. Calculate the spatial straight-line distance between the physical component and the virtual camera based on the three-dimensional coordinates of the virtual camera and the center coordinates of the enclosing sphere; S513. Using the spatial straight-line distance, the radius of the bounding sphere, and the field of view parameters, calculate the pixel projection area ratio of the physical component on the visualization terminal screen; S514. Determine whether the percentage of the pixel projection area is greater than the high-precision rendering threshold. If yes, send a request instruction to the server to download and render the zeroth level of detail model of the physical component; otherwise, further determine whether the pixel projection area ratio is greater than the medium precision rendering threshold; if it is greater than the medium precision rendering threshold, download and render the first level of detail model of the physical component; if it is not greater than the medium precision rendering threshold, download and render the third level of detail model of the physical component.
8. The method for lightweighting and dynamic mapping of project information based on digital twin BIM according to claim 7, characterized in that the calculation process of the pixel projection area ratio in S513 is specifically as follows: The percentage of the pixel projection area is equal to the square of the radius of the enclosing sphere multiplied by pi, divided by the square of the straight-line distance in space, and then divided by the square of the tangent of the field of view; the value of the percentage of the pixel projection area is between zero and one.
9. The method for lightweighting and dynamic mapping of project information based on digital twin BIM according to claim 1, characterized in that the specific steps of performing the penetrating visualization interaction of the multi-dimensional project information in step S5 include: S521. The visualization terminal captures the screen coordinates of the user's mouse clicks, and projects the screen coordinates of the mouse clicks from the two-dimensional screen coordinate system to the three-dimensional world coordinate system to generate a picking ray. S522. Perform triangular facet intersection calculations using the picked ray and the currently rendered multi-detail level streaming slice file to obtain the intersection point closest to the virtual camera, and extract the query globally unique identifier of the physical component to which the intersection point belongs. S523. Send the globally unique identifier of the query as the query primary key to the server. In the dynamic mapping graph, starting from the component node corresponding to the query primary key, perform a first depth-first traversal search outward along the business logic edge to obtain direct business data. At the same time, perform a second depth-first traversal search outward along the spatial topology edge to obtain physically adjacent component nodes. S524. Extract the business attribute data from the schedule node, quality inspection node and safety hazard node reached by the first depth-first traversal search, and extract the associated hazard status of the physically adjacent component nodes reached by the second depth-first traversal search. The business attribute data and associated potential hazard status are packaged into an information aggregation panel data and returned to the visualization terminal. S525. The visualization terminal receives the information aggregation panel data, renders a floating information panel on the screen, and displays the multi-dimensional project information and the associated hidden danger warnings of adjacent physical components.
10. A lightweight BIM-based project information dynamic mapping system, used to implement the lightweight BIM-based project information dynamic mapping method according to any one of claims 1-9; the system comprises: The multi-source model parsing module is used to receive building information models in multiple formats, separate geometric mesh data from semantic attribute data, and generate a globally unique identifier dictionary. An adaptive lightweight module is used to remove redundant internal hidden components and generate multi-detail level streaming slice files using a quadratic error metric algorithm. The dynamic graph construction module is used to build a dynamic mapping graph that integrates spatial topological edges and business logic edges in a graph database. The concurrent synchronization control module is used to monitor data change events and use a dynamic mapping graph and an optimistic locking mechanism based on state version numbers to perform dynamic synchronization of project information. The Penetrating Rendering Interaction Module is used to perform streaming rendering based on multi-level detail streaming slice files and dynamic mapping maps, and to perform penetrating visualization interaction of multi-dimensional project information along spatial topology edges and business logic edges.