Method for converting lightweight three-dimensional tiles of a component-level catenary three-dimensional model
By adopting a component-level lightweight method for the 3D model of the overhead contact system, the problem of organizing and visualizing the 3D model of the overhead contact system in the GIS environment is solved, achieving efficient semantic-driven visualization and data simplification, and improving the interactive performance of the model.
Patent Information
- Application Number
- CN202511636578.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-10
- Publication Date
- 2026-02-24
- Estimated Expiration
- 2045-11-10
AI Technical Summary
The 3D model of the overhead contact line is difficult to organize and visualize efficiently in a GIS environment. Existing technical methods suffer from problems such as loss of semantic structure, bias in judging the importance of components, redundancy of repeated components, and large volume of tile data.
A component-level lightweight method for 3D contact network models is adopted. By establishing the correspondence between components and semantic information, defining detailed level partitioning rules, filtering and reconstructing lightweight linear and volumetric component models, performing topology consistency detection and mesh optimization, generating hierarchical component structures, and outputting 3D tile data.
It enables efficient organization and visualization of the overhead contact line BIM model in the GIS environment, improves the semantic expression and interaction efficiency of the model, reduces data redundancy, and improves the platform's operating efficiency.
Smart Images

Figure CN121074162B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of geospatial information system technology, specifically relating to a method for converting lightweight 3D tiles from a component-level contact network 3D model. Background Technology
[0002] The overhead contact system is a high-voltage power transmission line that runs in a zigzag pattern above the rails in electrified railways, supplying current to the pantograph. It is the main framework of railway electrification engineering and a special type of power transmission line that supplies electricity to electric locomotives. The overhead contact system consists of several parts: contact suspension, support devices, positioning devices, supports, and foundations.
[0003] To achieve visualized management of the geometry, node connections, and operational status of the overhead contact system, 3D modeling of the overhead contact system has gradually evolved from 2D drawing design to refined, component-level 3D model representation, and is widely used in multiple stages such as design, construction, operation and maintenance, and digital twins. However, to meet the multi-scale application needs from regional to engineering scales, the visualization of the overhead contact system's 3D model in different regional and engineering scale scenarios still faces significant challenges.
[0004] Overhead contact network models are often constructed using BIM modeling software. These models possess high geometric accuracy and semantic integrity, comprehensively reflecting the spatial layout and physical properties of the components. However, due to the large number of components, complex shapes, multiple semantic nesting levels, and the large number of overall model panels and redundancy, direct visualization on the web or in a GIS system can result in slow loading, rendering lag, and interactive delays.
[0005] To improve the efficiency of model visualization, existing technologies have proposed a variety of lightweight methods for 3D models.
[0006] The first approach is to simplify the facets based on geometric features. This involves reducing the number of facets in the model through edge folding, point merging, and mesh optimization to lower the rendering burden. However, this type of method generally treats the entire component as a unit and lacks a semantic recognition mechanism. This can easily lead to the loss of the model's semantic structure or bias in the judgment of component importance, making it unsuitable for catenary models with high semantic expression requirements.
[0007] The second approach achieves lightweighting through component semantic filtering. For example, retention conditions are set based on attributes such as component purpose, visibility, and functional level, deleting low-importance or invisible components to reduce data volume. However, this method, while removing redundant data, does not perform further geometric simplification on the retained components, resulting in limited overall simplification. Furthermore, this method relies heavily on manually configured rules and lacks component feature adaptability and automatic filtering capabilities.
[0008] The third approach involves reconstructing the model using component templates or instantiation. This reduces data redundancy by uniformly constructing repetitive components and replicating them using transformation matrices. However, simply storing the geometric information of components uniformly does not allow for differentiated simplification and optimization of details for each instance, limiting its adaptability in refined management and highly interactive visualization scenarios.
[0009] To support the visualization of large-scale models, existing technologies have introduced 3D tile organization methods, often employing tile layering mechanisms based on spatial octrees, quadtrees, or view frustum LOD structures to achieve hierarchical loading of model data. 3D tile standards, represented by 3DTiles, have been widely used in architecture, urban planning, and topography. However, in the context of overhead contact lines, existing 3D tile technologies have the following shortcomings: First, they lack independent tile representation for fine-grained components, typically dividing the model into units of the entire block, making component-level loading and interaction difficult and resulting in low organization. Second, they lack a mechanism for corresponding with model semantic information; tile content does not contain semantic tags such as component attributes and types, hindering semantic-driven visualization scheduling. Third, during model conversion, adaptive simplification based on component structural features is not performed, easily leading to large tile data volumes and redundant components, thus affecting platform operating efficiency. Summary of the Invention
[0010] The technical problem to be solved by the present invention is to provide a method for converting lightweight three-dimensional tiles of a component-level catenary three-dimensional model, so as to enable efficient organization and visualization of the catenary BIM model in a GIS environment.
[0011] The technical solution adopted by this invention to solve its technical problem is: a method for converting lightweight three-dimensional tiles from a component-level contact wire three-dimensional model, including the following steps:
[0012] S1. Traverse all components in the overhead contact line BIM model, extract the geometric and attribute information of each component, establish a one-to-one correspondence between each component and semantic information, and form a component-level fine model dataset with semantic annotations.
[0013] S2, based on the external control parameters and semantic hierarchy of the contact network BIM model, define four levels of detail: system, unit, and component, establish the mapping relationship between each component and its superstructure, and construct the rules for dividing the detail levels;
[0014] S3: Based on the component-level fine model dataset in S1, the detail level division rules in S2, and the component geometry, linear units are selected and the lightweight linear component model is reconstructed.
[0015] S4. Based on the component-level fine model dataset in S1, the detail level division rules and component geometry in S2, select volumetric units, construct a comprehensive evaluation function Q, sort all volumetric components according to the Q value, delete volumetric components with Q values less than the preset threshold, and retain volumetric components with Q values greater than or equal to the preset threshold.
[0016] S5 performs topology consistency checks on the volumetric components retained in S4; repairs topology anomalies in the retained volumetric components; performs Boolean operations on the relationships between the volumetric components to adjust their boundary relationships and achieve topology closure; and optimizes the standard triangular mesh data of the retained volumetric components to obtain optimized volumetric component model data.
[0017] S6, based on the detail level division rules in S2, assembles and reorganizes the lightweight linear component model in S3 and the optimized volumetric component model data in S5 to generate a hierarchical component structure, converts each component into a three-dimensional instance model, and outputs a three-dimensional tile data structure.
[0018] Furthermore, step S1 specifically includes the following steps:
[0019] S101, Read the overhead contact line BIM model file, obtain the external control parameters of the model, including unit information, coordinate system definition and component organization structure; Set key constraint parameters for subsequent processing, including the upper limit of the number of facets of a single component and the model geometric transformation accuracy;
[0020] S102, traverse all components in the contact network BIM model, extract the geometric and attribute information of each component, and convert the geometric information of each component into standard triangular mesh data;
[0021] S103. Based on the component semantic description rules in the contact network BIM model, the attribute information extracted in step S102 is mapped to the component semantic table, and the structure type field, purpose field and functional level field are combined for classification to generate standardized semantic description data.
[0022] S104 assigns a globally unique identifier to each component and binds the standard triangular mesh data of each component to its corresponding semantic information, forming a component-level fine-grained model dataset with semantic annotations.
[0023] Furthermore, step S2 specifically includes the following steps: based on the semantic hierarchy of the contact network BIM model and the component organization structure obtained in step S101, define four levels of detail: system, system, unit and component; establish the mapping relationship between each component and its superstructure; and construct the detail level division rules.
[0024] Furthermore, step S4 specifically includes the following steps:
[0025] S401. Based on the component-level fine model dataset in S1, the detail level division rules in S2, and the component geometry, select volumetric units, obtain the number of facets N of each volumetric unit and the number of facets n of each volumetric component within the corresponding volumetric unit, and calculate the minimum bounding box volume v of each volumetric component within each volumetric unit and the minimum bounding box volume V of the volumetric unit.
[0026] S402. Based on the structural type, purpose and function of the body-shaped components in the contact wire BIM model, all body-shaped components are divided into several functional categories. On this basis, combined with the geometric complexity index and visualization importance level of each body-shaped component, a weight parameter table corresponding to the body-shaped component classification is set, and the semantic weight factor k of each body-shaped component is extracted.
[0027] S403 defines a component-level local index m, and a global index M to normalize the local index.
[0028] ;
[0029] ;
[0030] S404, construct a comprehensive evaluation function Q to reflect the importance of a certain volumetric component in its respective volumetric component unit and the cost of its simplification;
[0031] ;
[0032] S405, calculate the Q value of each volumetric component in each volumetric unit, and sort all volumetric components according to the Q values; based on the model accuracy requirements, preset a threshold Q. threshold When Q < Q threshold When Q ≥ Q, delete the corresponding body-shaped component; threshold At that time, the corresponding body-shaped components are preserved.
[0033] Furthermore, step S401 calculates the minimum bounding box volume v of the volumetric component, specifically including steps S401.1 to S401.5:
[0034] S401.1 Perform the first three-dimensional convex hull calculation on the set of three-dimensional coordinates of the vertices of the solid component;
[0035] ;
[0036] Define the first three-dimensional convex hull C as the minimum convex set of the set of three-dimensional coordinates of the vertices of the volumetric component:
[0037] ;
[0038] Where, λ i The coefficients are linear combination coefficients, satisfying the nonnegativity constraint λ. i ≥0 and normalization condition, the normalization condition is: ;
[0039] x represents any point in the three-dimensional spatial volumetric component, which is any point within the first three-dimensional convex hull C;
[0040] R 3 It represents the three-dimensional real space, that is, the set of three-dimensional coordinate points of all volumetric components;
[0041] m represents the number of vertices in the three-dimensional coordinate set P of the vertices of the solid component, that is, the total number of vertices of the solid component;
[0042] P i The vertex represents the i-th vertex in the set of three-dimensional coordinates of the vertices of the solid component. In subsequent steps S401.1.2 and S401.1.4, it refers to the current processing point in the same vertex set. ;
[0043] Perform the first three-dimensional convex hull calculation, specifically including steps S401.1.1 to S401.1.5:
[0044] S401.1.1 Select four non-coplanar points from the set of three-dimensional coordinates of the vertices of the solid component, and construct an initial tetrahedron as the initial set of facets of the first three-dimensional convex hull C.
[0045] S401.1.2 Sequentially select points from the set P of the three-dimensional coordinates of the vertices of the solid component as the current point p. i Determine whether the current point is inside the first three-dimensional convex hull C; if the current point is inside the first three-dimensional convex hull C, discard the current point; if the current point is outside the first three-dimensional convex hull C, determine the set of faces F that the current point can see from the first three-dimensional convex hull C.
[0046] S401.1.3 Delete the set of visible patches F to obtain the opening boundary loop;
[0047] S401.1.4 Connect the points located outside the first three-dimensional convex hull C with the opening boundary loop obtained in step S401.1.3 to generate a new patch and update the first three-dimensional convex hull C;
[0048] S401.1.5 Repeat steps S401.1.2 to S401.1.4 until all vertices of the volumetric component have been processed, resulting in the complete first three-dimensional convex hull C;
[0049] S401.2, traverse all faces of the first 3D convex hull C, and take the normal vector of each face as the candidate direction set. For each candidate direction d j Construction and d j A vertical orthogonal coordinate base (a j ,b j ,c j );
[0050] in, ;
[0051] Using a spatial rectangular coordinate system as a reference, and projecting the set of three-dimensional coordinates P of the vertices of the volumetric component onto the spatial rectangular coordinate system, the j-th vertex p of the volumetric component is obtained through calculation. j (x j ,y j ,z j Projected coordinates (u) in a Cartesian coordinate system k ,v k ,h k ):
[0052] , , ;
[0053] in," " indicates dot product operation;
[0054] S401.3, Calculate the range of the set P of three-dimensional coordinates of the vertices of a solid component in a spatial rectangular coordinate system: ;
[0055] Among them, L j W j H j These correspond to the side lengths of the bounding box of the solid component in the x, y, and z directions, respectively.
[0056] S401.4, Calculate the bounding box volume v of the volumetric component under the candidate orientation. j : ;
[0057] S401.5, traverse all candidate directions and take the minimum value as the minimum bounding box volume v of the volumetric component: .
[0058] Furthermore, the calculation of the minimum bounding box volume V of the volumetric unit in step S401 specifically includes steps S401.6 to S401.10:
[0059] S401.6, treating a volumetric element as a whole composed of multiple components, and considering the set of three-dimensional coordinates of the vertices of the volumetric element P. ’ Perform the second three-dimensional convex hull calculation;
[0060] ;
[0061] The second three-dimensional convex hull C ’ P is defined as the set of three-dimensional coordinates of the vertices of a volumetric unit. ’ Minimal convex set:
[0062] ;
[0063] Where, λ i The coefficients are linear combination coefficients, satisfying the nonnegativity constraint λ. i ≥0 and normalization condition, the normalization condition is: ;
[0064] x ’ Let C represent any point in a three-dimensional spatial unit, which is the second three-dimensional convex hull. ’ Any point within;
[0065] R 3 It represents the three-dimensional real space, that is, the set of three-dimensional coordinate points of all volumetric units;
[0066] m ’ P represents the set of three-dimensional coordinates of the vertices of a volumetric unit. ’ The number of vertices in the volumetric unit;
[0067] P represents the set of three-dimensional coordinates of the vertices of a volumetric unit. ’ The i-th vertex in the set refers to the current processing point in the same vertex set in subsequent steps S401.6.2 and S401.6.4. ;
[0068] Perform the second three-dimensional convex hull calculation, specifically including steps S401.6.1 to S401.6.5:
[0069] S401.6.1, from the set of three-dimensional coordinates of the vertices of the volumetric unit P ’ Select four non-coplanar points to construct an initial tetrahedron, which serves as the second 3D convex hull C. ’ The initial set of facets;
[0070] S401.6.2, sequentially take the set of three-dimensional coordinates P of the vertices of the volumetric unit. ’ The point in the middle is used as the current point. Determine whether the current point is located within the second 3D convex hull C. ’ The interior of; if the current point is located within the second three-dimensional convex hull C. ’ If the current point is inside the second 3D convex hull C, then discard the current point; if the current point is inside the second 3D convex hull C, then discard the current point. ’ If the point is outside the second 3D convex hull C, then the relationship between the current point and the second 3D convex hull C is determined.’ The set of visible faces F ’ ;
[0071] S401.6.3, delete the set of visible facets F ’ This yields the opening boundary loop;
[0072] S401.6.4, will be located in the second three-dimensional convex hull C ’ Connect the external points to the opening boundary loop obtained in step S401.6.3 to generate a new patch and update the second 3D convex hull C. ’ ;
[0073] S401.6.5, Repeat steps S401.6.2 to S401.6.4 until all vertices of the volume element have been processed, resulting in the complete second 3D convex hull C. ’ ;
[0074] S401.7, Traverse the second 3D convex hull C ’ For all faces, take the normal vector of each face as the set of candidate directions. For each candidate direction , building and Vertical orthogonal coordinate base ( );
[0075] in, = ;
[0076] Using a spatial rectangular coordinate system as a reference system, and setting the three-dimensional coordinates of the vertices of the volumetric unit P... ’ Projected onto a spatial rectangular coordinate system, the j-th vertex of the volumetric unit is obtained through calculation. Projected coordinates in a spatial rectangular coordinate system :
[0077] , , ;
[0078] in," " indicates dot product operation;
[0079] S401.8, Calculate the set of three-dimensional coordinates P of the vertices of a volumetric element in a spatial rectangular coordinate system. ’ Scope: ;
[0080] in, These correspond to the side lengths of the bounding box of the volumetric unit in the x, y, and z directions, respectively.
[0081] S401.9, Calculate the bounding box volume V of the volume element under the candidate orientation.j : ;
[0082] S401.10, traverse all candidate directions and take the minimum value as the minimum bounding box volume V of the volume element: .
[0083] Furthermore, step S5 specifically includes the following steps:
[0084] S501: Obtain the volumetric components retained in S4, perform topology consistency detection, and identify topology anomaly regions including openings, gaps, intersections, and overlaps;
[0085] S502: For volumetric components with topologically anomalous regions, dilation and erosion operations are performed using the three-dimensional Minkowski operator to repair the topologically anomalous regions of the volumetric components.
[0086] S503 performs Boolean operations on the relationships between various volumetric components within a local spatial range, adjusts the boundary relationships of each volumetric component, and achieves topological closure.
[0087] S504 performs mesh simplification processing, using a mesh compression algorithm based on a quadratic error metric to optimize the standard triangular mesh data of the retained volumetric components, recursively merging vertices and triangular faces, and controlling the error range and the number of faces.
[0088] Furthermore, step S3 specifically includes the following steps: based on the component-level fine model dataset in S1, the detail level division rules in S2, and the component geometry, linear units are selected; for linear components containing curve features, a multi-segment straight line fitting operation is performed to convert them into a combination of several equal-length straight line segments; key coordinate data of the linear components are extracted; and a lightweight linear component model is reconstructed.
[0089] Compared with existing technologies, the beneficial effects of this invention are: This invention provides a method for converting lightweight 3D tiles of a component-level catenary 3D model, enabling efficient organization and visualization of the catenary BIM model in a GIS environment. It effectively solves the problem of the difficulty in efficiently organizing and visualizing the catenary BIM model in a GIS environment. Attached Figure Description
[0090] Figure 1 This is the overall flowchart of the present invention;
[0091] Figure 2 This is a flowchart illustrating the generation process of a component-level fine-grained model dataset;
[0092] Figure 3 This is a flowchart of the lightweighting process for linear units;
[0093] Figure 4This is a flowchart of the lightweighting process for body units after screening;
[0094] Figure 5 This is a tree structure diagram of the data organization of the overhead contact line BIM model;
[0095] Figure 6 This is a hierarchical diagram of the railway overhead contact system;
[0096] Figure 7 This is a hierarchical diagram of the railway catenary system;
[0097] Figure 8 This is a hierarchical diagram of railway catenary units;
[0098] Figure 9 This is a hierarchical diagram of railway catenary components. Detailed Implementation
[0099] The following is in conjunction with the appendix Figure 1 , 2 The invention is further illustrated by references 3, 4, 5, 6, 7, 8, and 9, as well as by the embodiments.
[0100] A method for converting lightweight 3D tiles from a component-level contact wire 3D model, such as... Figure 1 , 2 As shown in 3, 4, and 5, the steps include:
[0101] S1. Read the overhead contact line BIM model file, obtain the external control parameters of the model, and set the key constraint parameters for subsequent processing; traverse all components in the overhead contact line BIM model, extract the geometric information and attribute information of each component, and convert the geometric information of each component into standard triangular mesh data; generate a unique identifier for each component, and establish a one-to-one correspondence between each component and semantic information to form a component-level fine model dataset with semantic annotations.
[0102] Specifically, step S1 includes the following steps:
[0103] S101, Read the overhead contact line BIM model file and obtain the external control parameters of the model. The external control parameters include unit information, coordinate system definition and component organization structure; Set key constraint parameters for subsequent processing. The key constraint parameters include the upper limit of the number of facets of a single component and the model geometric transformation accuracy.
[0104] The contact wire BIM model file is from the railway planning and design phase of a major railway. The model format is .dgn format generated by Bentley, and the file size is 208MB. The model unit is meters, and it adopts the CGCS2000 national geodetic coordinate system. The projection method is 3-degree Gauss-Kruger projection, the central meridian is 114°, the upper limit of the number of facets of a single component is set to 50,000, and the geometric transformation accuracy of the model is set to 0.1 meters.
[0105] S102, traverse all components in the overhead contact line BIM model, extract the geometric and attribute information of each component, and convert the geometric information of each component into standard triangular mesh data. This provides a unified mesh foundation for subsequent processing.
[0106] S103: Based on the component semantic description rules in the overhead contact line BIM model, the attribute information extracted in step S102 is mapped to the component semantic table. This information is then categorized using the structural type, purpose, and functional level fields to generate standardized semantic description data. This improves the consistency of the model's semantic structure.
[0107] S104 assigns a globally unique identifier (UUID) to each component and binds the standard triangular mesh data of each component to its corresponding semantic information, forming a component-level fine-grained model dataset with semantic annotations.
[0108] The component-level fine-grained model dataset with semantic annotations includes a standard triangular mesh model file in .obj format for each component and a table of semantic attribute information corresponding to UUIDs stored in .csv format. In this embodiment, the total data size of the component-level fine-grained model dataset with semantic annotations is approximately 1.79 GB.
[0109] S2, as shown in Table 1, defines four levels of detail—system, unit, and component—based on the external control parameters and semantic hierarchy of the overhead contact line BIM model. It establishes the mapping relationship between each component and its superstructure, and constructs rules for dividing the detail levels. These rules guide the subsequent selection, organization, and output of the model.
[0110] Table 1
[0111]
[0112] Specifically, step S2 includes the following steps: based on the semantic hierarchy of the contact network BIM model and the component organization structure obtained in step S101, define four levels of detail: system, system, unit and component; establish the mapping relationship between each component and its superstructure; and construct the detail level division rules.
[0113] S3, as Figure 3As shown, based on the component-level fine model dataset in S1, the detail level partitioning rules in S2, and the component geometry, linear units are selected. For linear components containing curve features, a multi-segment straight line fitting operation is performed to convert them into a combination of several equal-length straight line segments. The key coordinate data of the linear components are extracted, and the lightweight linear component model is reconstructed.
[0114] Key coordinate data for linear components, including the three-dimensional coordinates (x, y, y) of each node within the linear component. line ,y line ,z line ), which automatically assigns a point number identifier to each node, and defines the node connection relationship based on the point number sequence.
[0115] S4. Based on the component-level fine model dataset in S1, the detail level division rules and component geometry in S2, volumetric units are selected, a comprehensive evaluation function Q is constructed, all volumetric components are sorted according to the Q value, volumetric components with Q values less than a preset threshold are deleted, and volumetric components with Q values greater than or equal to the preset threshold are retained.
[0116] Specifically, step S4 includes the following steps:
[0117] S401. Based on the component-level fine model dataset in S1, the detail level division rules in S2, and the component geometry, select volumetric units, obtain the number of facets N of each volumetric unit and the number of facets n of each component within the corresponding volumetric unit, and calculate the minimum bounding box volume v of each volumetric component within each volumetric unit and the minimum bounding box volume V of the volumetric unit.
[0118] Step S401 calculates the minimum bounding box volume v of the solid component, specifically including steps S401.1 to S401.5:
[0119] S401.1 Perform the first three-dimensional convex hull calculation on the set of three-dimensional coordinates of the vertices of the solid component;
[0120] ;
[0121] Define the first three-dimensional convex hull C as the minimum convex set of the set of three-dimensional coordinates of the vertices of the volumetric component:
[0122] ;
[0123] Where, λ i The coefficients are linear combination coefficients, satisfying the nonnegativity constraint λ. i ≥0 and normalization condition, the normalization condition is: ;
[0124] x represents any point in the three-dimensional spatial volumetric component, which is any point within the first three-dimensional convex hull C;
[0125] R 3 It represents the three-dimensional real space, that is, the set of three-dimensional coordinate points of all volumetric components;
[0126] m represents the number of vertices in the three-dimensional coordinate set P of the vertices of the solid component, that is, the total number of vertices of the solid component;
[0127] p i The vertex represents the i-th vertex in the set of three-dimensional coordinates of the vertices of the solid component. In subsequent steps S401.1.2 and S401.1.4, it refers to the current processing point in the same vertex set. ;
[0128] Perform the first three-dimensional convex hull calculation, specifically including steps S401.1.1 to S401.1.5:
[0129] S401.1.1 Select four non-coplanar points from the set of three-dimensional coordinates of the vertices of the solid component, and construct an initial tetrahedron as the initial set of facets of the first three-dimensional convex hull C.
[0130] S401.1.2 Sequentially select points from the set P of the three-dimensional coordinates of the vertices of the solid component as the current point p. i Determine whether the current point is inside the first three-dimensional convex hull C; if the current point is inside the first three-dimensional convex hull C, discard the current point; if the current point is outside the first three-dimensional convex hull C, determine the set of faces F that the current point can see from the first three-dimensional convex hull C.
[0131] S401.1.3 Delete the set of visible patches F to obtain the opening boundary loop;
[0132] S401.1.4 Connect the points located outside the first three-dimensional convex hull C with the opening boundary loop obtained in step S401.1.3 to generate a new patch and update the first three-dimensional convex hull C;
[0133] S401.1.5 Repeat steps S401.1.2 to S401.1.4 until all vertices of the volumetric component have been processed, resulting in the complete first three-dimensional convex hull C.
[0134] S401.2, traverse all faces of the first 3D convex hull C, and take the normal vector of each face as the candidate direction set. For each candidate direction d j Construction and d j A vertical orthogonal coordinate base (a j ,b j ,c j );
[0135] in, ;
[0136] Using a spatial rectangular coordinate system as a reference, and projecting the set of three-dimensional coordinates P of the vertices of the volumetric component onto the spatial rectangular coordinate system, the j-th vertex p of the volumetric component is obtained through calculation. j (x j ,y j ,z j Projected coordinates (u) in a Cartesian coordinate system k ,v k ,h k ):
[0137] , , ;
[0138] in," " indicates dot product operation;
[0139] S401.3, Calculate the range of the set P of three-dimensional coordinates of the vertices of a solid component in a spatial rectangular coordinate system: ;
[0140] Among them, L j W j H j These correspond to the side lengths of the bounding box of the solid component in the x, y, and z directions, respectively.
[0141] S401.4, Calculate the bounding box volume v of the volumetric component under the candidate orientation. j : ;
[0142] S401.5, traverse all candidate directions and take the minimum value as the minimum bounding box volume v of the volumetric component: The unit is cubic meters;
[0143] Step S401 calculates the minimum bounding box volume V of the volumetric element, specifically including steps S401.6 to S401.10:
[0144] S401.6, treating a volumetric element as a whole composed of multiple components, and considering the set of three-dimensional coordinates of the vertices of the volumetric element P. ’ Perform the second three-dimensional convex hull calculation;
[0145] ;
[0146] The second three-dimensional convex hull C ’ P is defined as the set of three-dimensional coordinates of the vertices of a volumetric unit. ’ Minimal convex set:
[0147] ;
[0148] Where, λ i The coefficients are linear combination coefficients, satisfying the nonnegativity constraint λ. i ≥0 and normalization condition, the normalization condition is: ;
[0149] x ’ Let C represent any point in a three-dimensional spatial unit, which is the second three-dimensional convex hull. ’ Any point within;
[0150] R 3 It represents the three-dimensional real space, that is, the set of three-dimensional coordinate points of all volumetric units;
[0151] m ’ P represents the set of three-dimensional coordinates of the vertices of a volumetric unit. ’ The number of vertices in the volumetric unit;
[0152] P represents the set of three-dimensional coordinates of the vertices of a volumetric unit. ’ The i-th vertex in the set refers to the current processing point in the same vertex set in subsequent steps S401.6.2 and S401.6.4. ;
[0153] Perform the second three-dimensional convex hull calculation, specifically including steps S401.6.1 to S401.6.5:
[0154] S401.6.1, from the set of three-dimensional coordinates of the vertices of the volumetric unit P ’ Select four non-coplanar points to construct an initial tetrahedron, which serves as the second 3D convex hull C. ’ The initial set of facets;
[0155] S401.6.2, sequentially take the set of three-dimensional coordinates P of the vertices of the volumetric unit. ’ The point in the middle is used as the current point. Determine whether the current point is located within the second 3D convex hull C. ’ The interior of; if the current point is located within the second three-dimensional convex hull C. ’ If the current point is inside the second 3D convex hull C, then discard the current point; if the current point is inside the second 3D convex hull C, then discard the current point. ’ If the point is outside the second 3D convex hull C, then the relationship between the current point and the second 3D convex hull C is determined. ’ The set of visible faces F ’ ;
[0156] S401.6.3, delete the set of visible facets F ’ This yields the opening boundary loop;
[0157] S401.6.4, will be located in the second three-dimensional convex hull C ’ Connect the external points to the opening boundary loop obtained in step S401.6.3 to generate a new patch and update the second 3D convex hull C. ’ ;
[0158] S401.6.5, Repeat steps S401.6.2 to S401.6.4 until all vertices of the volume element have been processed, resulting in the complete second 3D convex hull C. ’ ;
[0159] S401.7, Traverse the second 3D convex hull C ’ For all faces, take the normal vector of each face as the set of candidate directions. For each candidate direction Construction and Vertical orthogonal coordinate base ;
[0160] in, ;
[0161] Using a spatial rectangular coordinate system as a reference system, and setting the three-dimensional coordinates of the vertices of the volumetric unit P... ’ Projected onto a spatial rectangular coordinate system, the j-th vertex of the volumetric unit is obtained through calculation. Projected coordinates in a spatial rectangular coordinate system :
[0162] , , ;
[0163] in," " indicates dot product operation;
[0164] S401.8, Calculate the set of three-dimensional coordinates P of the vertices of a volumetric element in a spatial rectangular coordinate system. ’ Scope: ;
[0165] in, These correspond to the side lengths of the bounding box of the volumetric unit in the x, y, and z directions, respectively.
[0166] S401.9, Calculate the bounding box volume V of the volume element under the candidate orientation. j : ;
[0167] S401.10, traverse all candidate directions and take the minimum value as the minimum bounding box volume V of the volume element: The unit is cubic meters;
[0168] S402, as shown in Table 2, based on the structural type, purpose, and function of the volumetric components in the overhead contact line BIM model, all volumetric components are divided into several functional categories. Based on this, and combining the geometric complexity index and visualization importance level of each volumetric component, a weight parameter table corresponding to the volumetric component classification is set, and the semantic weight factor k for each volumetric component is extracted. The weight factor k is numerically set according to the component's functional level in the engineering semantic standard, its exposure degree in the model view, and its interaction frequency in different scenarios, and is uniformly assigned using a multi-level scoring mechanism.
[0169] Table 2
[0170]
[0171] S403 defines a component-level local index m, and a global index M to normalize the local index.
[0172] ;
[0173] ;
[0174] S404, construct a comprehensive evaluation function Q to reflect the importance of a certain volumetric component within its constituent volumetric component elements and the cost of its simplification. ;
[0175] S405, calculate the Q value of each volumetric component in each volumetric unit, and sort all volumetric components according to the Q values; based on the model accuracy requirements, preset a threshold Q. threshold When Q < Q threshold When Q ≥ Q, delete the corresponding body-shaped component; threshold At that time, the corresponding body-shaped components are preserved.
[0176] In this embodiment, Q threshold =1.00.
[0177] S5, such as Figure 4 As shown, topological consistency checks are performed on the volumetric components retained in S4; the three-dimensional Minkowski operator is used to repair the topologically abnormal regions of the retained volumetric components; Boolean operations are performed on the relationships between the volumetric components to adjust the boundary relationships of the volumetric components and achieve topological closure; the standard triangular mesh data of the retained volumetric components is optimized based on the quadratic error metric (QEM) geometric simplification algorithm to obtain the optimized volumetric component model data.
[0178] Specifically, step S5 includes the following steps:
[0179] S501: Obtain the volumetric components retained in S4, perform topology consistency detection, and identify topology anomaly regions including openings, gaps, intersections, and overlaps;
[0180] S502: For volumetric components with topologically anomalous regions, dilation and erosion operations are performed using the three-dimensional Minkowski operator to repair the topologically anomalous regions of the volumetric components.
[0181] S503 performs Boolean operations on the relationships between various volumetric components within a local spatial range, adjusts the boundary relationships of each volumetric component, and achieves topological closure.
[0182] Boolean operations refer to performing union, intersection, and difference operations.
[0183] S504 performs mesh simplification processing, using a mesh compression algorithm based on a quadratic error metric to optimize the standard triangular mesh data of the retained volumetric components, recursively merging vertices and triangular faces, and controlling the error range and the number of faces.
[0184] S6, according to the detail level division rules in S2, the lightweight linear component model in S3 and the optimized volumetric component model data in S5 are assembled and recombined to generate a hierarchical component structure. Each component is converted into a 3D instance model conforming to the .i3dm format, and the models are organized using a tileset.json file to output a 3D tile data structure that meets the 3D Tiles standard. In this embodiment, the overall 3D tile dataset storage size is 15.6MB. The comparison of the data volume of the lightweight processing results is shown in Table 3. The four-level detail level models of system, unit, and component are as follows: Figure 6 , 7 As shown in 8 and 9.
[0185] Table 3
[0186]
[0187] S1 to S5 pertain to the process of constructing a multi-level detailed model, while S6 pertains to the process of organizing a three-dimensional tile structure.
[0188] The specific embodiments described are preferred embodiments of the present invention and are not intended to limit the scope of protection of the present invention. All equivalent changes made to the structure, shape, and principle of the present invention should be covered within the scope of protection of the present invention.
Claims
1. A method for converting lightweight 3D tiles from a component-level contact wire 3D model, characterized in that, Including the following steps: S1. Traverse all components in the overhead contact line BIM model, extract the geometric and attribute information of each component, establish a one-to-one correspondence between each component and semantic information, and form a component-level fine model dataset with semantic annotations. S2, based on the external control parameters and semantic hierarchy of the contact network BIM model, define four levels of detail: system, unit, and component, establish the mapping relationship between each component and its superstructure, and construct the rules for dividing the detail levels; S3: Based on the component-level fine model dataset in S1, the detail level division rules in S2, and the component geometry, linear units are selected and the lightweight linear component model is reconstructed. S4. Based on the component-level fine model dataset in S1, the detail level division rules and component geometry in S2, select volumetric units, construct a comprehensive evaluation function Q, sort all volumetric components according to the Q value, delete volumetric components with Q values less than the preset threshold, and retain volumetric components with Q values greater than or equal to the preset threshold. Step S4 specifically includes the following steps: S401. Based on the component-level fine model dataset in S1, the detail level division rules in S2, and the component geometry, select volumetric units, obtain the number of facets N of each volumetric unit and the number of facets n of each volumetric component within the corresponding volumetric unit, and calculate the minimum bounding box volume v of each volumetric component within each volumetric unit and the minimum bounding box volume V of the volumetric unit. S402. Based on the structural type, purpose and function of the body-shaped components in the contact wire BIM model, all body-shaped components are divided into several functional categories. On this basis, combined with the geometric complexity index and visualization importance level of each body-shaped component, a weight parameter table corresponding to the body-shaped component classification is set, and the semantic weight factor k of each body-shaped component is extracted. S403 defines a component-level local index m, and a global index M to normalize the local index. ; ; S404, construct a comprehensive evaluation function Q to reflect the importance of a certain volumetric component in its respective volumetric component unit and the cost of its simplification; ; S405, calculate the Q value of each volumetric component in each volumetric unit, and sort all volumetric components according to the Q values; based on the model accuracy requirements, preset a threshold Q. threshold When Q < Q threshold When Q ≥ Q, delete the corresponding body-shaped component; threshold At that time, the corresponding body-shaped components are preserved; S5 performs topology consistency checks on the volumetric components retained in S4; repairs topology anomalies in the retained volumetric components; performs Boolean operations on the relationships between the volumetric components to adjust their boundary relationships and achieve topology closure; and optimizes the standard triangular mesh data of the retained volumetric components to obtain optimized volumetric component model data. S6, based on the detail level division rules in S2, assembles and reorganizes the lightweight linear component model in S3 and the optimized volumetric component model data in S5 to generate a hierarchical component structure, converts each component into a three-dimensional instance model, and outputs a three-dimensional tile data structure.
2. The method for converting lightweight 3D tiles from a component-level contact wire 3D model as described in claim 1, characterized in that, Step S1 specifically includes the following steps: S101, Read the overhead contact line BIM model file, obtain the external control parameters of the model, including unit information, coordinate system definition and component organization structure; Set key constraint parameters for subsequent processing, including the upper limit of the number of facets of a single component and the model geometric transformation accuracy; S102, traverse all components in the contact network BIM model, extract the geometric and attribute information of each component, and convert the geometric information of each component into standard triangular mesh data; S103. Based on the component semantic description rules in the contact network BIM model, the attribute information extracted in step S102 is mapped to the component semantic table, and the structure type field, purpose field and functional level field are combined for classification to generate standardized semantic description data. S104 assigns a globally unique identifier to each component and binds the standard triangular mesh data of each component to its corresponding semantic information, forming a component-level fine-grained model dataset with semantic annotations.
3. The method for converting lightweight three-dimensional tiles from a component-level contact wire three-dimensional model as described in claim 2, characterized in that, Step S2 specifically includes the following steps: based on the semantic hierarchy of the contact network BIM model and the component organization structure obtained in step S101, define four levels of detail: system, system, unit and component; establish the mapping relationship between each component and its superstructure; and construct the detail level division rules.
4. The method for converting lightweight 3D tiles from a component-level contact wire 3D model as described in claim 1, characterized in that, Step S401 calculates the minimum bounding box volume v of the solid component, specifically including steps S401.1 to S401.5: S401.1 Perform the first three-dimensional convex hull calculation on the set of three-dimensional coordinates of the vertices of the solid component; ; Define the first three-dimensional convex hull C as the minimum convex set of the set of three-dimensional coordinates of the vertices of the volumetric component: ; Where, λ i The coefficients are linear combination coefficients, satisfying the nonnegativity constraint λ. i ≥0 and normalization condition, the normalization condition is: ; x represents any point in the three-dimensional spatial volumetric component, which is any point within the first three-dimensional convex hull C; R 3 It represents the three-dimensional real space, that is, the set of three-dimensional coordinate points of all volumetric components; m represents the number of vertices in the three-dimensional coordinate set P of the vertices of the solid component, that is, the total number of vertices of the solid component; P i The vertex represents the i-th vertex in the set of three-dimensional coordinates of the vertices of the solid component. In subsequent steps S401.1.2 and S401.1.4, it refers to the current processing point in the same vertex set. ; Perform the first three-dimensional convex hull calculation, specifically including steps S401.1.1 to S401.1.5: S401.1.1 Select four non-coplanar points from the set of three-dimensional coordinates of the vertices of the solid component, and construct an initial tetrahedron as the initial set of facets of the first three-dimensional convex hull C. S401.1.2 Sequentially select points from the set P of the three-dimensional coordinates of the vertices of the solid component as the current point p. i Determine whether the current point is inside the first three-dimensional convex hull C; if the current point is inside the first three-dimensional convex hull C, discard the current point; if the current point is outside the first three-dimensional convex hull C, determine the set of faces F that the current point can see from the first three-dimensional convex hull C. S401.1.3 Delete the set of visible patches F to obtain the opening boundary loop; S401.1.4 Connect the points located outside the first three-dimensional convex hull C with the opening boundary loop obtained in step S401.1.3 to generate a new patch and update the first three-dimensional convex hull C; S401.1.5 Repeat steps S401.1.2 to S401.1.4 until all vertices of the volumetric component have been processed, resulting in the complete first three-dimensional convex hull C; S401.2, traverse all faces of the first 3D convex hull C, and take the normal vector of each face as the candidate direction set. For each candidate direction d j Construction and d j A vertical orthogonal coordinate base (a j ,b j ,c j ); in, ; Using a spatial rectangular coordinate system as a reference, and projecting the set of three-dimensional coordinates P of the vertices of the volumetric component onto the spatial rectangular coordinate system, the j-th vertex p of the volumetric component is obtained through calculation. j (x j ,y j ,z j Projected coordinates (u) in a spatial rectangular coordinate system k ,v k ,h k ): , , ; in," " indicates dot product operation; S401.3, Calculate the range of the set P of three-dimensional coordinates of the vertices of a solid component in a spatial rectangular coordinate system: ; Among them, L j W j H j These correspond to the side lengths of the bounding box of the solid component in the x, y, and z directions, respectively. S401.4, Calculate the bounding box volume v of the volumetric component under the candidate orientation. j : ; S401.5, traverse all candidate directions and take the minimum value as the minimum bounding box volume v of the volumetric component: .
5. The method for converting lightweight 3D tiles from a component-level contact wire 3D model as described in claim 1, characterized in that, In step S401, the minimum bounding box volume of the volumetric unit is calculated. Specifically, this includes steps S401.6 to S401.10: S401.6, treating a volumetric element as a whole composed of multiple components, and considering the set of three-dimensional coordinates of the vertices of the volumetric element P. ’ Perform the second three-dimensional convex hull calculation; ; The second three-dimensional convex hull C ’ P is defined as the set of three-dimensional coordinates of the vertices of a volumetric unit. ’ Minimal convex set: ; Where, λ i The coefficients are linear combination coefficients, satisfying the nonnegativity constraint λ. i ≥0 and normalization condition, the normalization condition is: ; x ’ Let C represent any point in a three-dimensional spatial unit, which is the second three-dimensional convex hull. ’ Any point within; R 3 It represents the three-dimensional real space, that is, the set of three-dimensional coordinate points of all volumetric units; m ’ P represents the set of three-dimensional coordinates of the vertices of a volumetric unit. ’ The number of vertices in the volumetric unit; P represents the set of three-dimensional coordinates of the vertices of a volumetric unit. ’ The i-th vertex in the set refers to the current processing point in the same vertex set in subsequent steps S401.6.2 and S401.6.
4. ; Perform the second three-dimensional convex hull calculation, specifically including steps S401.6.1 to S401.6.5: S401.6.1, from the set of three-dimensional coordinates of the vertices of the volumetric unit P ’ Select four non-coplanar points to construct an initial tetrahedron, which serves as the second 3D convex hull C. ’ The initial set of facets; S401.6.2, sequentially take the set of three-dimensional coordinates P of the vertices of the volumetric unit. ’ The point in the middle is used as the current point. Determine whether the current point is located within the second 3D convex hull C. ’ The interior of; if the current point is located within the second three-dimensional convex hull C. ’ If the current point is inside the second 3D convex hull C, then discard the current point; if the current point is inside the second 3D convex hull C, then discard the current point. ’ If the point is outside the second 3D convex hull C, then the relationship between the current point and the second 3D convex hull C is determined. ’ The set of visible faces F ’ ; S401.6.3, delete the set of visible facets F ’ This yields the opening boundary loop; S401.6.4, will be located in the second three-dimensional convex hull C ’ Connect the external points to the opening boundary loop obtained in step S401.6.3 to generate a new patch and update the second 3D convex hull C. ’ ; S401.6.5, Repeat steps S401.6.2 to S401.6.4 until all vertices of the volumetric unit have been processed, resulting in the complete second 3D convex hull C. ’ ; S401.7, Traverse the second 3D convex hull C ’ For all faces, take the normal vector of each face as the set of candidate directions. For each candidate direction , building and Vertical orthogonal coordinate base ( ); in, = ; Using a spatial rectangular coordinate system as a reference system, and setting the three-dimensional coordinates of the vertices of the volumetric unit P... ’ Projected onto a spatial rectangular coordinate system, the j-th vertex of the volumetric unit is obtained through calculation. Projected coordinates in a spatial rectangular coordinate system : , , ; in," " indicates dot product operation; S401.8, Calculate the set of three-dimensional coordinates P of the vertices of a volumetric element in a spatial rectangular coordinate system. ’ Scope: ; in, These correspond to the side lengths of the bounding box of the volumetric unit in the x, y, and z directions, respectively. S401.9, Calculate the bounding box volume V of the volume element under the candidate orientation. j : ; S401.10, traverse all candidate directions and take the minimum value as the minimum bounding box volume V of the volume element: .
6. The method for converting lightweight three-dimensional tiles from a component-level contact wire three-dimensional model as described in claim 1, characterized in that, Step S5 specifically includes the following steps: S501: Obtain the volumetric components retained in S4, perform topology consistency detection, and identify topology anomaly regions including openings, gaps, intersections, and overlaps; S502: For volumetric components with topologically anomalous regions, dilation and erosion operations are performed using the three-dimensional Minkowski operator to repair the topologically anomalous regions of the volumetric components. S503 performs Boolean operations on the relationships between various volumetric components within a local spatial range, adjusts the boundary relationships of each volumetric component, and achieves topological closure. S504 performs mesh simplification processing, using a mesh compression algorithm based on a quadratic error metric to optimize the standard triangular mesh data of the retained volumetric components, recursively merging vertices and triangular faces, and controlling the error range and the number of faces.
7. The method for converting lightweight 3D tiles from a component-level contact wire 3D model as described in claim 1, characterized in that, Step S3 specifically includes the following steps: Based on the component-level fine model dataset in S1, the detail level division rules in S2, and the component geometry, linear units are selected; for linear components containing curve features, a multi-segment straight line fitting operation is performed to convert them into a combination of several equal-length straight line segments; key coordinate data of the linear components are extracted; and a lightweight linear component model is reconstructed.
Citation Information
Patent Citations
Three-dimensional tile conversion method for component-level digital twin railway tunnel engineering three-dimensional model
CN119397635A
Three-dimensional geological modeling and section visualization method and system for wind power road construction
CN120876764A