Metal roof construction optimization system based on BIM
By extracting the normal feature of the grid nodes of metal roof panels and fitting the curvature offset, combined with assembly path error analysis and optimization sorting, the contact error problem of metal roof construction in traditional BIM systems is solved, and accurate optimization and dynamic simulation inspection of metal roof construction are achieved.
Patent Information
- Application Number
- CN202510734161.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-04
- Publication Date
- 2025-09-02
- Estimated Expiration
- 2045-06-04
AI Technical Summary
The traditional BIM-based metal roof construction system lacks deep modeling capabilities in the analysis of node normal information and the perception of curvature between the contact surface of the component, resulting in large contact errors during assembly, making it difficult to achieve dynamic simulation inspection of components before construction, affecting the construction progress and accuracy.
The node normal feature extraction module obtains the node spatial information of the metal roof panel grid, performs direction difference calculation and curvature offset fitting, combines the assembly path error analysis and optimization sorting module to generate an optimized path plate index group, and performs component family parameters remapping and simulation back-in-the-birth in the BIM model.
It realizes accurate identification and optimization of the assembly path of metal roof panels, reduces contact errors, supports visual verification of component positioning and dynamic verification of construction paths, and improves construction accuracy and efficiency.
Smart Images

Figure CN120579692A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of construction simulation, and in particular to a BIM-based metal roof construction optimization system. Background Art
[0002] The field of construction simulation technology encompasses methods for simulating, analyzing, and optimizing the construction process based on digital modeling and information technology. By constructing a three-dimensional model of the construction object and implementing time-based logic, construction progress, resource allocation, work paths, and construction sequences can be visualized and managed digitally.
[0003] The BIM-based metal roof construction optimization system utilizes building information modeling technology to digitally model and integrate component information, construction sequence, installation location, and operational processes involved in metal roof construction. This system addresses technical considerations such as metal roof panel layout path planning, component assembly logic, construction environment constraints, and construction machinery motion path design. By constructing precise 3D geometric models, establishing component positioning reference rules, and setting construction process timelines and machinery motion coordinates, it forms an information integration optimization process covering the entire design to construction process.
[0004] Traditional BIM-based metal roof construction systems typically remain at the static integration level of component information and process nodes, lacking in-depth modeling capabilities for analyzing node normal information and perceiving the curvature of component contact surfaces. This leads to the susceptibility to contact errors during actual assembly, which cannot be predicted in advance. Conventional methods for node orientation analysis rely solely on basic topological relationships and positional data, lacking detailed identification of directional differences and angle variation trends. This prevents accurate extraction of high-curvature regions during the modeling phase, thereby reducing the fitting accuracy of the interface. Assembly path planning also commonly relies on manual empirical sorting or simple linear processes, failing to statistically model the posture variation trends between path segments, making it difficult to coordinate and optimize the assembly sequence with spatial errors. During on-site execution, the lack of back-substitution of assembly paths into component family parameters makes dynamic simulation verification of components before construction difficult, compromising positioning accuracy and path reproduction. For example, in complex roof interface areas, improper assembly sequencing of multiple components often results in insufficient space for subsequent components or path conflicts, impacting construction progress and precision control. Summary of the Invention
[0005] The purpose of the present invention is to solve the shortcomings of the prior art and propose a BIM-based metal roof construction optimization system.
[0006] In order to achieve the above objectives, the present invention adopts the following technical solution: a BIM-based metal roof construction optimization system, the system comprising: The node normal feature extraction module obtains the spatial information of the metal roof panel block grid nodes in the BIM component family model, performs directional difference calculation on the node normal vectors, and constructs a node normal difference set; The contact area fitting modeling module performs assembly contact area identification on the node normal difference set, performs local curvature offset fitting on the contact surface of the contact area, and outputs a contact area curvature offset fitting data group; The assembly path error analysis module constructs a metal roof panel assembly path set through the contact area curvature offset fitting data set, and performs spatial offset error calculation on the path set to obtain an assembly path error set; The assembly path optimization sorting module selects the roof splicing plate group according to the assembly path error set, performs optimization sorting on the assembly path nodes, and outputs the optimized path plate index group.
[0007] The improvements of the present invention are that the node normal difference set includes a node space coordinate set, a normal vector direction difference pair, and a direction angle cosine value; the contact area curvature offset fitting data group includes a fitted contact surface coordinate surface, a node direction offset set, and a fitted residual distribution layer; the assembly path error set includes a path segment space offset value group, an assembly surface normal angle group, and a path segment assembly node index; the optimized path plate index group is specifically a component number sequence, an assembly sequence set, and a path preferred node set.
[0008] The present invention is improved in that the node normal feature extraction module includes: The component family node collection submodule obtains the metal roof panel block instances in the BIM component family, collects the spatial coordinates and unit normal vectors of all roof panel block grid nodes, constructs a node index sequence based on the topological arrangement order of the nodes in the surface network, and generates a node position and direction set; The node direction angle calculation submodule calculates the angle cosine value of the normal vectors of any group of consecutively indexed adjacent nodes based on the node position and direction set, filters out node pairs whose direction changes exceed the change threshold, and generates node direction difference mapping data; The local curvature identification submodule calculates the overall variation of the normal vectors in the node neighborhood in the triangular patch composed of the offset node pair based on the node direction difference mapping data, extracts the node group with a continuous normal change trend as the curvature significant area, and generates a node normal difference set.
[0009] The present invention is improved in that the contact area fitting modeling module includes: The contact surface node identification submodule retrieves the topological relationship of the node index pairs with significant direction differences in the node normal difference set in the facet network, extracts the plate docking area composed of continuous facets, and generates a facet index set of the docking area; The direction offset fitting submodule determines whether there is a continuous offset trend in the normal direction between nodes in each patch based on the patch index set of the docking area, performs curvature direction fitting on the main vector of the direction change, and generates a contact area direction offset feature structure; The spline surface generation submodule is based on the contact area direction offset characteristic structure, inputs the three-dimensional spatial position of the node and the corresponding direction offset into the surface fitting function, performs a spline surface interpolation operation on the spatial point cloud constituting the patch set, and generates a contact area curvature offset fitting data set.
[0010] The present invention is improved in that the assembly path error analysis module includes: The contact path construction submodule obtains the spatial coordinates and normal directions of each node in the fitting patch in the contact area curvature offset fitting data group, extracts node chains with continuous connection relationships in the order of node index, and sequentially combines them to form a contact path segment sequence to generate an assembled node path set; The posture parameter extraction submodule calls the assembly node path set, calculates the average normal direction of the nodes in each path segment and the spatial displacement vector between the first and last nodes, and combines the displacement value and the direction vector into a posture parameter structure to generate an assembly path posture parameter set; The assembly offset judgment submodule uses the RANSAC random sampling consistency algorithm to judge the direction difference of each path segment and the projection residual of the overall sample based on the assembly path posture parameter set, extracts the error distribution range of the path segment whose deviation trend exceeds the consistency threshold, and generates the assembly path error set.
[0011] The present invention is improved in that the assembly path optimization sorting module includes: The path segment screening submodule extracts the directional offset and node spatial offset value of the path segment in the assembly path error set, determines whether the offset and spatial error are both within the error interval, establishes a corresponding index identification sequence, and generates a path segment screening index set; The node structure extraction submodule calls the path segment screening index set to obtain the three-dimensional coordinate data of the nodes in the path segment corresponding to the path segment, establishes the topological order relationship of the nodes in space, and generates an assembled path node structure set; The path sequence sorting submodule obtains the start and end node pairs of continuous path segments according to the assembled path node structure set, establishes a path segment connection graph in the path graph structure, inputs it into the K shortest path algorithm to perform a sorting operation on the path segment arrangement sequence, and generates an optimized path plate index group.
[0012] The present invention is improved in that it further includes a parameter remapping and simulation back-substitution module, which performs component family parameter remapping on the optimized path plate index group in the BIM model and performs node-level dynamic back-substitution on the three-dimensional scene to obtain a construction simulation feedback data set; The construction simulation feedback data set includes the spatial position node after back-substitution, the updated component family parameter group, and the construction path status record table.
[0013] The present invention is improved in that the parameter remapping and simulation back-substitution module includes: The parameter remapping submodule extracts the component ID, family category and face number of each group of plates based on the optimized path plate index group, calls the parameter field structure in the BIM component family instance, and establishes a component family parameter mapping data set according to the relationship between the index and the component instance; The posture update submodule calls the component family parameter mapping data set, identifies the positioning coordinates of the splicing boundary nodes in the path segment and the reference positions corresponding to the current family parameters, adjusts the posture vector and coordinate values of each assembly segment node, and generates a node posture change sequence; The back-feedback generation submodule records the position value and direction data of the node before and after the state change in the BIM three-dimensional scene according to the node posture change sequence, extracts the state switching path and change amplitude, and generates a construction simulation feedback data set.
[0014] Compared with the prior art, the advantages and positive effects of the present invention are: In the present invention, by systematically extracting the spatial information of the metal roof panel grid nodes and the directional difference between the normal vectors and calculating the angle cosine, a node set with a clear directional change trend is accurately identified, and high-resolution curvature change perception is obtained when constructing the surface connection relationship. Combined with the local normal direction change trend of the contact surface in the docking area, spline surface interpolation is performed using a continuous spatial point cloud to obtain the curvature offset trend, thereby grasping the true contact morphology between components before assembly, effectively avoiding the deviation caused by the idealized contact assumption in traditional methods. The node posture and spatial displacement are combined to form a path segment posture parameter structure. Consistency judgment is used to screen the assembly error trend to achieve spatial hierarchical perception of component splicing errors. A path graph structure is constructed through the path segment connection relationship. A graph algorithm is used to optimize the assembly sequence, making the component assembly more consistent with the actual construction trajectory and mechanical coordination. In the final output, the optimized path is back-substituted into the component family parameters and the three-dimensional scene to generate simulation feedback information, supporting visual verification of component positioning and dynamic verification of the construction path. BRIEF DESCRIPTION OF THE DRAWINGS
[0015] Figure 1 It is a system module diagram of the present invention; Figure 2 It is a system framework diagram of the present invention; Figure 3 Schematic diagram of a node normal feature extraction module of the present invention; Figure 4Schematic diagram of the contact area fitting modeling module of the present invention; Figure 5 This is a schematic diagram of assembling a path error analysis module according to the present invention; Figure 6 This is a schematic diagram of the assembly path optimization and sorting module of the present invention; Figure 7 Schematic diagram of the parameter remapping and simulation back-substitution module of the present invention. DETAILED DESCRIPTION
[0016] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0017] In the description of the present invention, it should be understood that the terms "length", "width", "up", "down", "front", "back", "left", "right", "vertical", "horizontal", "top", "bottom", "inside" and "outside" and the like indicate orientations or positional relationships based on the orientations or positional relationships shown in the accompanying drawings, and are only for the convenience of describing the present invention and simplifying the description, rather than indicating or implying that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on the present invention; in addition, in the description of the present invention, "plurality" means two or more, unless otherwise clearly and specifically defined.
[0018] See also Figure 1 The present invention provides a technical solution: a BIM-based metal roof construction optimization system, the system includes: The node normal feature extraction module obtains the spatial information of the metal roof panel block grid nodes in the BIM component family model, performs directional difference calculation on the node normal vectors, and constructs a node normal difference set; The contact area fitting modeling module performs assembly contact area identification on the node normal difference set, performs local curvature offset fitting on the contact surface of the contact area, and outputs a contact area curvature offset fitting data group; The assembly path error analysis module constructs the metal roof panel assembly path set through the contact area curvature offset fitting data set, and performs spatial offset error calculation on the path set to obtain the assembly path error set; The assembly path optimization sorting module selects the roof splicing plate group through the assembly path error set, performs optimization sorting on the assembly path nodes, and outputs the optimized path plate index group; The node normal difference set includes the node space coordinate set, the normal vector direction difference pair, and the direction angle cosine value. The contact area curvature offset fitting data group includes the fitted contact surface coordinate surface, the node direction offset set, and the fitted residual distribution layer. The assembly path error set includes the path segment space offset value group, the assembly surface normal angle group, and the path segment assembly node index. The optimized path plate index group is specifically the component number sequence, the assembly order set, and the path preferred node set.
[0019] See also Figure 2 and Figure 3 , the node normal feature extraction module includes: The component family node collection submodule obtains the metal roof panel block instances in the BIM component family, collects the spatial coordinates and unit normal vectors of all roof panel block grid nodes, constructs a node index sequence based on the topological arrangement order of the nodes in the surface network, and generates a node position and direction set; To obtain the metal roof panel block instance in the BIM component family, first load the project model in a BIM modeling platform such as Revit or Tekla, filter the instance whose component family is "metal roof panel", identify the metal panel with a specific type code (such as "MRP_001") through the family attributes, call the API interface based on its geometric model to extract all the mesh node information of the component patch, and read the spatial coordinates of the three vertices of each triangular patch (for example: point , , ), calculate the corresponding unit normal vector based on these three coordinates , the calculation formula is as follows: ; in: : represent the three-dimensional space coordinate vectors of the three vertices of the triangle patch, : represents the vector modulus (i.e. the Euclidean norm of the vector), : is the unit normal vector.
[0020] The node coordinates and normal vector of each patch are stored in the collection , then build a node index sequence based on the connection relationship (topological order) between the patches. If node 1 and node 2 form an edge, and then form triangle patch 1 with node 3, and node 2 and node 3 and then form patch 2 with node 4, then the index sequence is established as , stored as During the process, the topological consistency of the node connections is checked, for example, it is necessary to ensure that adjacent triangles share two nodes and do not overlap or cross. If the connection method of a node, such as node 5, does not meet the rules, it should be excluded from the set, and finally a complete set of node positions and directions is obtained. , whose structure contains the spatial coordinates and unit normal vector of each node.
[0021] The node direction angle calculation submodule calculates the angle cosine value of the normal vectors of any group of adjacent nodes with continuous indexes based on the node position and direction set, filters out node pairs whose direction changes exceed the change threshold, and generates node direction difference mapping data; based on The node spatial position and unit normal vector recorded in , for each set of adjacent node pairs, that is, the index is and The nodes of the node are extracted and their unit normal vectors are and , calculate the cosine of its direction angle. The formula is as follows: ; in: :Indicates that the node index is The node unit normal vector of :Indicates that the node index is The unit normal vectors of the adjacent nodes of :Indicates the The cosine of the angle between the normal vector of a node and the next node.
[0022] Example: Suppose , ; Then the dot product is: The corresponding angle is . Set the threshold for direction change to ,when When , it is considered that there is a significant direction change in the pair of nodes. Traverse all node pairs and execute Calculations ( is the total number of nodes), all node pairs that meet the conditions and their angle values are recorded as a set ,Right now: , for example, when there is: , .but and Two pairs of nodes are marked as pairs with significant normal changes.
[0023] The local curvature identification submodule calculates the overall variation of the normal vectors in the node neighborhood in the triangular patch formed by the offset node pair based on the node direction difference mapping data, extracts the node group with a continuous normal change trend as the curvature significant area, and generates a set of node normal differences; use All the satisfaction recorded in The node pair, combined with its topologically adjacent nodes (such as index ) Construct triangular patches , extract the unit normal vectors of the three nodes that make up the triangle , and calculate its overall variation, using the variance index of the cosine value of the normal vector angle to evaluate: , in: , , , : is the mean cosine value, : is the variance of the cosine value of the angle between the three node normals, which is used to measure the normal consistency. Example: If , , . Then we have: , , .
[0024] The average value is: .
[0025] Calculate the variance: . Set the direction consistency judgment threshold ,like , then the triangle is determined to be a local normal trend continuous area. Collect all the nodes in these areas to form a curvature continuous area node set , and record the normal differences between all the nodes it contains as a set ,like: ,in The cosine value of the angle between nodes 5 and 6 is 0.97, reflecting the local facet orientation variation. Finally, a set of normal difference values with a continuous variation trend is obtained.
[0026] See also Figure 2 and Figure 4 , the contact area fitting modeling module includes: The contact surface node identification submodule retrieves the topological relationship of the node index with significant direction difference in the node normal difference set in the facet network, extracts the plate docking area composed of continuous facets, and generates a facet index set of the docking area; To retrieve the topological relationship of the node index with significant direction difference in the node normal difference set in the face network, it is necessary to first number all the nodes in the 3D model and extract the normal vector of each node. , for each pair of adjacent nodes Calculate the normal difference , store it in the direction difference set, and set a threshold for identifying "significant" differences ,like ,when When the node pair is marked as a significant direction difference index pair, then according to the node index pair (for example, the node pair ) tracks the patch structure in the triangle mesh, such as the patch and , take it as the starting face, and then expand outward through the common edge relationship to find the adjacent faces with continuous and significant direction differences. If a set of topologically connected face sets is formed If it includes 10 facets, it will be used as the plate docking area, and then the entire grid will be traversed to extract all the facets that meet the conditions. , forming a total face index set For example, in a gear meshing area scanning scenario, a continuous facet index set consisting of the butt joint boundary caused by the tooth surface offset is identified by the above method.
[0027] The direction offset fitting submodule determines whether there is a continuous offset trend in the normal direction between nodes in each patch based on the patch index set in the docking area, performs curvature direction fitting on the main vector of the direction change, and generates the contact area direction offset feature structure; According to the patch index set of the docking area, it is determined whether there is a continuous offset trend in the normal direction between the nodes in each patch. Specifically, for each patch Extract the normal vectors of its three vertices , calculate the normal difference respectively 、 、 , if at least two sets of normal differences are continuously increasing or decreasing (e.g. ), it is determined that the patch has a normal deviation trend, and the normal vector sequence of the patch that meets the trend is extracted from all the patches, and the principal component analysis (PCA) method is used to calculate its main deviation direction vector , set the main direction as the main axis of the normal change of the contact area, and then use the curvature direction fitting method to perform interpolation analysis along the main axis direction to generate the direction offset feature structure , which contains the main direction vectors of each patch , fitting residuals , offset angle In practical applications, for example, for the mold pressing area with slope wear, the direction of the main vector of the change is identified by analyzing the normal change sequence of the surface patch, and then the offset trend structure of the area is constructed for subsequent fitting.
[0028] The spline surface generation submodule is based on the contact area direction offset feature structure. It inputs the three-dimensional spatial position of the node and the corresponding direction offset into the surface fitting function, performs spline surface interpolation operation on the spatial point cloud that constitutes the patch set, and generates the contact area curvature offset fitting data set. Based on the contact area directional offset feature structure, the three-dimensional spatial position of the node and the corresponding directional offset are input into the fitting function. First, each node in the contact area is set to , where each node Represented as a triple ,in is the projection coordinate of the node in the two-dimensional plane, in millimeters (mm), It is the angle between the node normal and the offset main vector, in radians (rad), and is used to describe the spatial direction offset trend. Assuming that the node offset value changes smoothly with the plane position, the following cubic spline surface function is constructed for global fitting: ; in, : In two-dimensional space coordinates The output value of the direction offset fitting function established above is the direction offset angle (unit: rad), which is a cubic bivariate polynomial function. : The highest polynomial order of the fitting function, defined as , indicating the inclusion of cubic terms; used to control the accuracy and complexity of function fitting. : The first Row, No. The polynomial coefficients of the column are real numbers without units, with a total of Finally, it is solved by the least square method. :Possible variables in polynomial functions and The order subscript of , , integer. :To all Combinatorial accumulation generates a cubic bivariate polynomial expansion.
[0029] in , that is, the fitting function contains at most coefficients ,function Used to estimate the direction offset of any position on the plane , the known The coordinates and offsets of the sample points Substitute the function to construct the system of equations. Construct the residual function with the least squares method as the core: ; in, : No. The residual value of a node represents the error between the calculated value of the fitting function at the node coordinate and the actual offset, in radians (rad). . : Total square error, optimization objective function, defined as the sum of squares of all node residuals , used to solve the least squares fitting function coefficients. : The total number of nodes involved in fitting must satisfy , which satisfies the minimum dimension requirement for solving linear systems.
[0030] The goal is to minimize the total sum of squared residuals: ; To simplify the process, only nodes and Take this as an example, , , then after expansion for: .
[0031] Will of , Substituting into the above formula, the coefficient matrix row vector of the node is: The constant term is , a first-order term , , , the quadratic term , , , , , the cubic term , , , , , . Write these values as a row vector, corresponding to a coefficient matrix A line of length 16. The predicted offset of this node is , forming the equation: ,in is a 16-dimensional vector consisting of the above values, is the unknown coefficient vector .
[0032] Similarly, for nodes Substitution , , which expands to: , the quadratic term , , , , , the cubic term , , , , , , and finally substitute into the equation: , construct all Similar expressions of nodes form a matrix , column vector of supporting observations , the fitting coefficient vector is obtained by solving the normal equation : ,in, : Composed of polynomial expansion values of all nodes Coefficient matrix, each row is the polynomial combination value of the corresponding node. : The 16-dimensional coefficient vector to be found , represents the weight of each term in the fitting function. : Observation column vector, containing the measured value of the direction offset of each node . :matrix The transposed matrix of . : The coefficient matrix on the left side of the normal equation, used for least squares solution construction. : The inverse matrix of the above coefficient matrix is used to solve the linear system in the analytical solution. : The result vector on the right side of the normal equation. Finally, the complete fitting function is obtained , this function can be used for any node such as Execute prediction and calculate direction offset value Then calculate the principal curvature of the point and use the second-order derivative to estimate the curvature expression, for example: .in, :direction The principal curvature value on the surface indicates the local curvature of the fitted surface in that direction, and its unit is radians per square millimeter (rad / mm²). :direction The principal curvature values on the surface are in rad / mm². : Fitting function pair The second-order partial derivative in the direction is calculated as follows: , similarly, express The second-order partial derivative of the direction is used to calculate Substitute , And the fitting coefficient value, the principal curvature can be obtained and , for example, estimated , , if the difference If the value is close to or exceeds 0.01, it is determined that the curvature change near the point is significant, and the node can be added to the offset clustering region structure set. Finally, all fitting results are organized into a data structure ,in: :For the fitting function at point The predicted direction offset value at :For nodes The principal curvature value of the fitting surface at (usually ). It is used to generate visual analysis diagrams of directional offsets and curvature heat maps, providing a basis for subsequent geometric reconstruction.
[0033] See also Figure 2 and Figure 5 , the assembly path error analysis module includes: The contact path construction submodule obtains the spatial coordinates and normal directions of each node in the fitting patch in the contact area curvature offset fitting data set, extracts the node chains with continuous connection relationships in the order of node index, and combines them in sequence to form a contact path segment sequence, thereby generating an assembled node path set; Obtain the spatial coordinates and normal directions of each node in the fitting patch in the contact area curvature offset fitting data set, export the triangular mesh model of the contact fitting area in the BIM system or point cloud modeling, and extract the three vertex coordinates of each triangular patch. With unit normal vector ,in Respectively represent Nodes in three-dimensional space along 、 、 The coordinate values of the axis, Represents the unit normal vector at the node (three-dimensional direction vector, modulus 1), and sorts out the node chain with continuous connection relationship according to the topological index order of the node, that is, if the node number is , then the node must be satisfied and adjacent, and Adjacent and no repeated closed loop structure occurs, and a line segment is constructed between each pair of adjacent nodes ,in Indicates the The position vector of each node, Indicates that from Node to The path vector of each node connects all line segments in sequence to form a path sequence , the sequence satisfies the path continuity condition, that is, the end point of each path segment is equal to the starting point of the next path segment, and combined with the normal direction and Synchronous storage as By traversing the node index relationship of each patch and calling the topological adjacency table to detect path closure and eliminate duplicate segments, for example, there are 50 fitting patches in a contact area, each consisting of 3 nodes with a total of 150 index points. After eliminating duplicates, a contact path chain containing 40 nodes can be extracted, and finally an assembled node path set is constructed. .
[0034] The posture parameter extraction submodule calls the assembly node path set, calculates the average normal direction of the nodes in each path segment and the spatial displacement vector between the first and last nodes, and combines the displacement value and the direction vector into a posture parameter structure to generate the assembly path posture parameter set; Call the assembled node path collection and take the node in each path to The normal vector , where the subscript Indicates the starting node index of the current path segment. Indicates the node index of the end point of the path segment, and represents the unit normal direction of the first and last points of the path segment respectively. The average normal direction of the path segment is calculated as: ; in, Represents a path segment The average normal direction vector of the first and last nodes is then extracted. , , respectively represent the starting point and end point position vectors of the path segment, and the spatial displacement vector is calculated as: ; in 、 、 Indicates 、 、 The displacement components in the three-axis directions are finally combined into the posture parameter structure of this segment: If there is nodes, we can calculate For each path segment, perform the above operations to obtain the posture parameter set. 、 ,but ,set up 、 , then , the posture parameters are: , and finally the posture set of all path segments constitutes the assembled path posture parameter set .
[0035] The assembly offset judgment submodule uses the RANSAC random sampling consistency algorithm to judge the direction difference of each path segment and the projection residual of the overall sample based on the assembly path posture parameter set. It extracts the error distribution range of the path segment whose deviation trend exceeds the consistency threshold and generates the assembly path error set. According to the posture parameter set , for each path, the attitude direction vector Perform consistency judgment and use RANSAC (random sampling consensus algorithm) to select the minimum sample set to fit the main direction ,in Represents the path segment index, Indicates the The displacement direction vector of the segment path, Represents the fitted global trend direction vector, and calculates its projection residual for each path , the calculation formula is as follows: ; in, : No. Segment path direction vector, in mm, : The main trend direction vector fitted, unit is mm, : The modulus of the main direction vector, in mm, : Path segment The residual difference from the main direction is in mm. Set the consistency error threshold ,like , it is considered that the path segment deviates from the trend direction, and an additional improved parameter is introduced , which represents the requirement of the internal point ratio of the RANSAC model, usually set to , indicating that at least 50% of the paths must meet If the total number of path segments is 100, at least 50 segments must meet the residual condition. The example calculation is as follows: If , ,but ,like , , then calculate the cosine projection and then subtract, the residual ,like , the residual is calculated as , does not meet the consistency threshold condition. The path segment numbers are summarized to form the assembly path error set: ,For example: , indicating that there is assembly offset in path segments 5, 8, and 17. This set serves as the basis for subsequent error analysis.
[0036] See also Figure 2 and Figure 6 , the assembly path optimization sorting module includes: The path segment screening submodule extracts the directional offset and node spatial offset values of the path segments in the assembly path error set, determines whether the offset and spatial error are both within the error interval, establishes the corresponding index identification sequence, and generates a path segment screening index set; Extract the directional offset and node space offset of the path segment in the assembly path error concentration. When obtaining the directional offset of the path segment, first extract the three-dimensional coordinates of the starting point and end point of the path segment. Set the path segment number as , the starting point coordinates are , the end point coordinates are , then the path segment direction vector is recorded as: ,in: : No. The direction vector of each path segment : The three-dimensional coordinate components of the starting point of the path segment : The three-dimensional coordinate components of the end point of the path segment. The direction offset is defined as the path segment direction vector With the theoretical direction vector The angle is calculated as follows: ,in: : Path segment The direction offset angle (in degrees).
[0037] Assume that the reference direction vector is , if the path segment direction vector is , then its direction offset angle is: , the calculation of spatial offset requires comparing the coordinate difference between the actual node and the reference node. Assume that the coordinate of the reference node is , the actual node coordinates are , then the spatial offset is: ,in: : Path segment The three-dimensional space offset corresponding to the starting point, all coordinate values are in millimeters (mm). For example , ,but: , the judgment condition is: if and , then the path segment is a qualified segment, and an identification index sequence is established as , and combine to obtain the path segment filtering index set.
[0038] The node structure extraction submodule calls the path segment screening index set to obtain the three-dimensional coordinate data of the nodes in the corresponding path segment, establishes the topological order relationship of the nodes in space, and generates the assembled path node structure set; Call the path segment filtering index set to correspond to the node three-dimensional coordinate data in the path segment, and set the filtered path segment set to , where each path segment Contains two nodes: starting point and the end point First, we traverse all the path segments in the collection, call their start and end nodes one by one and extract the three-dimensional coordinates, such as: , , remove all nodes and form a node set , to establish the topological order relationship between nodes, it is necessary to combine the path segment connection structure and construct a directed graph ,in: : Node collection : A set of path segment connecting edges in the form of Using the adjacency matrix Indicates the connection status: ; If the node set is , the connection path segment is: , then the adjacency matrix is: ; Determine the node topology sequence through graph traversal algorithms (such as topological sorting), e.g. , which is applicable to the sequential control of each connection in the assembly. For example, the spatial node is , then its structure is described as: node vector: , node vector: This structure generates a set of assembled path node structures.
[0039] The path sequence sorting submodule obtains the start and end node pairs of continuous path segments based on the assembled path node structure set, establishes a path segment connection graph in the path graph structure, inputs it into the K shortest path algorithm, performs a sorting operation on the path segment arrangement sequence, and generates an optimized path segment index group; According to the assembled path node structure set, the start and end node pairs of continuous path segments are extracted. Let the path segment set be , each path segment is defined as a triple: ,in: : Path segment The start and end nodes : Path segment value (comprehensive deviation) to build connection graph , is a node set, For edge sets, import all path segment connections into the adjacency list structure and use it as the input of the graph. Use the K shortest path algorithm (such as the Yen algorithm) to find the K shortest paths from the starting node to the end node. In order to sort the paths, a weight value needs to be set for each path segment. , which is composed of the path segment direction offset angle and the spatial offset distance: ,in: : Path segment The azimuth angle offset in degrees : Path segment The spatial offset value of the two end nodes, in millimeters or normalized values. For example, the path segment data is: : ,but , : ,but , if the path combination is , then the total cost is: The K shortest path algorithm will traverse all possible path combinations in the graph, calculate their total cost and sort them, and finally output the path with the smallest cost. Group path index, such as Group_1: , Group_2: Each combination constitutes an optimized path segment index group for subsequent path graph generation or assembly sequence sorting.
[0040] See also Figure 2 and Figure 7 , also includes a parameter remapping and simulation back-substitution module, which performs component family parameter remapping on the optimized path plate index group in the BIM model, and performs node-level dynamic back-substitution on the three-dimensional scene to obtain a construction simulation feedback data set; The construction simulation feedback data set includes the spatial position nodes after back-substitution, the updated component family parameter group, and the construction path status record table; The parameter remapping and simulation back-substitution modules include: The parameter remapping submodule extracts the component ID, family category, and face number of each group of plates based on the optimized path plate index group, calls the parameter field structure in the BIM component family instance, and establishes a component family parameter mapping dataset based on the relationship between the index and the component instance; Based on the optimized path plate index group, first traverse the index information of each group of plates, parse the unique number of the corresponding component through the path record file, and extract the family classification to which the component belongs and the list of surface numbers contained. In the Revit or IFC data structure, the family instance structure usually includes component identification, family category and parameter fields. For example, if a component ID is "G1248", its family category is "wall", and its parameter fields may include "type name", "material", "thickness", "height", etc. After the system determines which specific geometric elements the component involves through the surface number, it calls the structure. The XML or JSON format parameter table of the component family is used to extract all parameter fields of the component. By establishing an index mapping relationship, the plate index is bound to the family instance. For example, the plate in the fifth segment in the path is mapped to the family "Wall" of the component "G1248". Then, the data fields with "Material" of "Concrete C30" and "Thickness" of "200mm" in the parameter table of "G1248" are written into the structured dictionary. In this way, the plate groups in all path segments are traversed to finally generate a set of component family parameter mapping data sets containing the correspondence between family ID, component number, family field name and field value.
[0041] The posture update submodule calls the component family parameter mapping data set, identifies the positioning coordinates of the splicing boundary nodes in the path segment and the reference positions corresponding to the current family parameters, adjusts the posture vector and coordinate values of each assembly segment node, and generates a node posture change sequence; The component family parameter mapping dataset is called to process the splicing boundary nodes in the path segment. First, the first and last splicing nodes in each path segment are identified. The location coordinates of these nodes in the global coordinate system are obtained through the spatial index file. Then, the component reference position field in the family parameters is compared (for example, the location point parameter of a certain type of "precast panel" in the family is "insertion point at the center of the bottom surface"). The position difference between the current coordinates of the node and the target reference point is spatially transformed. The attitude vector and position displacement that should be adjusted for the node are solved by rotation and translation vectors. If the current attitude of the node is represented as "x-axis facing east, inclination angle of 10 degrees", and the component family defines that the assembly of this segment should be "horizontal attitude", the inclination angle is adjusted to 0 degrees and the attitude vector direction is updated. After batch processing of all splicing nodes, a node attitude change sequence is generated. Each data in the sequence records information such as the node number, original position, target position, original attitude, target attitude, offset, etc., and is numbered and sorted according to the order of the path segments.
[0042] The back-feedback generation submodule records the position and direction data of the node before and after the state change in the BIM 3D scene based on the node posture change sequence, extracts the state switching path and change amplitude, and generates a construction simulation feedback data set; According to the node posture change sequence, the state recording operation is completed in the BIM three-dimensional scene. First, the spatial position and orientation data of each node in the original state are locked in the three-dimensional model environment, including the position three-dimensional coordinates and posture quadruple or Euler angle representation. Then, its current state is updated according to the adjustment value in the change sequence, and the difference data before and after is recorded. Then, all nodes are traversed to extract the state change path of each node. For example, if a node moves from position A to position B and the rotation angle changes from 15 degrees to 0 degrees, its path is defined as "node N, from A to B, posture change Δ15 degrees", and its change amplitude is calculated. The three-dimensional vector difference method is used to obtain the displacement and rotation angle difference. These change paths are clustered according to component affiliation to generate component state change groups, which are then summarized to form a total construction simulation feedback data set. This data set contains component ID, node number, original state, updated state, change path and value information, which is used for model update and construction visual comparison in subsequent construction simulation processes.
[0043] The above are merely preferred embodiments of the present invention and do not limit the present invention in any other form. Any technician familiar with the profession may use the technical content disclosed above to change or modify it into an equivalent embodiment with equivalent changes and apply it to other fields. However, any simple modification, equivalent change and modification made to the above embodiment based on the technical essence of the present invention without departing from the content of the technical solution of the present invention shall still fall within the scope of protection of the technical solution of the present invention.
Claims
1. BIM-based metal roof construction optimization system, characterized by: The system comprises: The node normal feature extraction module obtains the spatial information of the metal roof panel block grid nodes in the BIM component family model, performs directional difference calculation on the node normal vectors, and constructs a node normal difference set; The contact area fitting modeling module performs assembly contact area identification on the node normal difference set, performs local curvature offset fitting on the contact surface of the contact area, and outputs a contact area curvature offset fitting data group; The assembly path error analysis module constructs a metal roof panel assembly path set through the contact area curvature offset fitting data set, and performs spatial offset error calculation on the path set to obtain an assembly path error set; The assembly path optimization sorting module selects the roof splicing plate group according to the assembly path error set, performs optimization sorting on the assembly path nodes, and outputs the optimized path plate index group.
2. The BIM-based metal roof construction optimization system according to claim 1 is characterized in that: The node normal difference set includes a node space coordinate set, a normal vector direction difference pair, and a direction angle cosine value; the contact area curvature offset fitting data group includes a fitted contact surface coordinate surface, a node direction offset set, and a fitted residual distribution layer; the assembly path error set includes a path segment space offset value group, an assembly surface normal angle group, and a path segment assembly node index; the optimized path plate index group is specifically a component number sequence, an assembly sequence set, and a path preferred node set.
3. The BIM-based metal roof construction optimization system according to claim 1, characterized in that: The node normal feature extraction module includes: The component family node acquisition submodule obtains the metal roof panel block instances in the BIM component family, collects the spatial coordinates and unit normal vectors of all roof panel block grid nodes, constructs a node index sequence based on the topological arrangement order of the nodes in the surface network, and generates a node position and direction set; The node direction angle calculation submodule calculates the angle cosine value of the normal vectors of any group of adjacent nodes with continuous indexes based on the node position and direction set, selects the node pairs whose direction changes exceed the change threshold, and generates node direction difference mapping data; The local curvature identification submodule calculates the overall variation of the normal vectors in the node neighborhood in the triangular patch composed of the offset node pair based on the node direction difference mapping data, extracts the node group with a continuous normal change trend as the curvature significant area, and generates a node normal difference set.
4. The BIM-based metal roof construction optimization system according to claim 1, characterized in that: The contact area fitting modeling module includes: The contact surface node identification submodule retrieves the topological relationship of the node index pairs with significant direction differences in the node normal difference set in the facet network, extracts the plate docking area composed of continuous facets, and generates a facet index set of the docking area; The direction offset fitting submodule determines whether there is a continuous offset trend in the normal direction between nodes in each patch based on the patch index set of the docking area, performs curvature direction fitting on the main vector of the direction change, and generates a contact area direction offset feature structure; The spline surface generation submodule is based on the contact area direction offset characteristic structure, inputs the three-dimensional spatial position of the node and the corresponding direction offset into the surface fitting function, performs spline surface interpolation operation on the spatial point cloud constituting the patch set, and generates a contact area curvature offset fitting data group.
5. The BIM-based metal roof construction optimization system according to claim 4 is characterized in that: For the three-dimensional spatial position of the input node and the corresponding direction offset to the surface fitting function In the formula: ; Calculate surface fitting function The output value of At , the direction offset angle of the node is used to form a continuous curvature trend formed by the direction offset of each node in the face set in space; in, is the highest polynomial order of the fitting function, indicating the inclusion of cubic terms. is the first Step Item and Step The coefficient of the term is obtained by the least squares fitting method from the direction offset data and coordinate input of all nodes in the patch set. is a polynomial function of variables and The order subscript of , Used for all Combination accumulation.
6. The BIM-based metal roof construction optimization system according to claim 1, characterized in that: The assembly path error analysis module includes: The contact path construction submodule obtains the spatial coordinates and normal directions of each node in the fitting patch in the contact area curvature offset fitting data group, extracts node chains with continuous connection relationships in the order of node index, and sequentially combines them to form a contact path segment sequence to generate an assembled node path set; The posture parameter extraction submodule calls the assembly node path set, calculates the average normal direction of the nodes in each path segment and the spatial displacement vector between the first and last nodes, and combines the displacement value and the direction vector into a posture parameter structure to generate an assembly path posture parameter set; The assembly offset judgment submodule uses the RANSAC random sampling consistency algorithm to judge the direction difference of each path segment and the projection residual of the overall sample based on the assembly path posture parameter set, extracts the error distribution range of the path segment whose deviation trend exceeds the consistency threshold, and generates the assembly path error set.
7. The BIM-based metal roof construction optimization system according to claim 6, characterized in that: To determine the direction difference of each path segment and the projection residual of the overall sample, the formula is used: ; Calculate the projection residual between the path segment and the main direction in each path segment ; in, It is Segment path direction vector, is the fitted main trend direction vector, is the magnitude of the principal direction vector.
8. The BIM-based metal roof construction optimization system according to claim 1, characterized in that: The assembly path optimization and sorting module includes: The path segment screening submodule extracts the directional offset and node spatial offset value of the path segment in the assembly path error set, determines whether the offset and spatial error are both within the error interval, establishes a corresponding index identification sequence, and generates a path segment screening index set; The node structure extraction submodule calls the path segment screening index set to obtain the three-dimensional coordinate data of the nodes in the path segment corresponding to the path segment, establishes the topological order relationship of the nodes in space, and generates an assembled path node structure set; The path sequence sorting submodule obtains the start and end node pairs of continuous path segments according to the assembled path node structure set, establishes a path segment connection graph in the path graph structure, inputs it into the K shortest path algorithm to perform a sorting operation on the path segment arrangement sequence, and generates an optimized path plate index group.
9. The BIM-based metal roof construction optimization system according to claim 1, characterized in that: The system further includes a parameter remapping and simulation back-substitution module, which performs component family parameter remapping on the optimized path plate index group in the BIM model and performs node-level dynamic back-substitution on the three-dimensional scene to obtain a construction simulation feedback data set; The construction simulation feedback data set includes the spatial position node after back-substitution, the updated component family parameter group, and the construction path status record table.
10. The BIM-based metal roof construction optimization system according to claim 9, characterized in that: The parameter remapping and simulation back-substitution module includes: The parameter remapping submodule extracts the component ID, family category and face number of each group of plates based on the optimized path plate index group, calls the parameter field structure in the BIM component family instance, and establishes a component family parameter mapping data set according to the relationship between the index and the component instance; The posture update submodule calls the component family parameter mapping data set, identifies the positioning coordinates of the splicing boundary nodes in the path segment and the reference positions corresponding to the current family parameters, adjusts the posture vector and coordinate values of each assembly segment node, and generates a node posture change sequence; The back-feedback generation submodule records the position value and direction data of the node before and after the state change in the BIM three-dimensional scene according to the node posture change sequence, extracts the state switching path and change amplitude, and generates a construction simulation feedback data set.
Citation Information
Patent Citations
Large-span steel structure canopy construction supervision method and system based on BIM
CN118332666A
Building steel structure deepening design and virtual pre-assembly system based on BIM
CN118981829A
Historical building model construction method and system based on BIM
CN119783237A
Large-area special-shaped simulation panel construction method and system based on BIM technology
CN119850369A
BIM-technology-based large-area complex-shape suspended ceiling construction method
WO2023272593A1