A lightweight processing method and system for a BIM three-dimensional model of a frame structure building

By aligning and cropping the target component mesh with the standard template mesh, hierarchical rendering instructions are generated, which solves the problem of deep compression and high-fidelity reconstruction of BIM 3D models of frame structure buildings in low computing power environments on the Web, and realizes deep compression and high-fidelity reconstruction of massive component geometric data.

CN121544847BActive Publication Date: 2026-04-17SHAANXI WATER DEV & CONSTR GRP CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHAANXI WATER DEV & CONSTR GRP CO LTD
Filing Date
2026-01-20
Publication Date
2026-04-17

AI Technical Summary

Technical Problem

In low-computing environments on the web, existing technologies cannot effectively achieve deep compression and high-fidelity reconstruction of BIM 3D models of frame structure buildings, resulting in excessive memory usage and difficulty in resolving the contradiction between visual fidelity and performance.

Method used

By aligning the target component mesh with the standard template mesh in spatial pose, performing geometric adaptation clipping and parameter fitting, generating hierarchical rendering instructions, and using surface culling and sidewall filling instructions to instantiate and draw the standard template mesh, we can achieve deep compression and high-fidelity reconstruction of massive component geometric data.

Benefits of technology

Under the condition of loss of parameter semantics, deep compression of massive component geometric data is achieved, saving computing power, and high-fidelity models with physical thickness are reconstructed, thus resolving the contradiction between rendering performance and visual fidelity on the web.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121544847B_ABST
    Figure CN121544847B_ABST
Patent Text Reader

Abstract

The application discloses a kind of frame structure building BIM three-dimensional model light weight processing method and system, it is related to image processing technical field, the method includes: obtaining target component grid to be processed and standard template grid, target component grid and standard template grid are carried out spatial pose alignment processing, and obtain alignment component grid;Geometric adaptation cropping processing is carried out to alignment component grid, and independent difference geometry is obtained;Parameter fitting is carried out to independent difference geometry, and hierarchical rendering instruction is obtained, hierarchical rendering instruction includes surface culling instruction and side wall filling instruction respectively generated for different plate thickness aperture of target component grid;Based on hierarchical rendering instruction, instantiation drawing processing is carried out to standard template grid, and the target model of rendering completion is obtained.The application achieves the technical effect of reconstructing high-fidelity model with physical thickness in the low-power environment of Web end.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of image processing technology, specifically to a lightweight processing method and system for BIM 3D models of frame structure buildings. Background Technology

[0002] With the deepening application of Building Information Modeling (BIM) technology in the engineering field, especially in the detailed design stage of frame structures (such as steel structures), the requirements for the precision of model data are increasing. The model usually contains a large number of components (such as beams and columns). Although these components are based on standard profile sections on a macroscopic level, on a microscopic level, in order to meet connection requirements, the ends of the components often have different mechanical processing features (such as bolt holes, chamfers, locks, etc.).

[0003] In current lightweight web-based rendering practices, common exchange formats are typically used for model transfer to ensure compatibility. However, these formats often lose the parametric semantics of the design software (e.g., "there is a 20mm diameter hole at a certain location"), resulting in each component being discretized into independent triangular mesh geometric data. This presents two significant problems for web-based rendering: 1. Excessive VRAM usage; 2. A trade-off between visual fidelity and performance: retaining all mesh details is too time-consuming; using conventional mesh simplification algorithms leads to distortion. Therefore, how to achieve deep compression of massive component geometric data while sacrificing parametric semantics, and how to reconstruct a high-fidelity model with physical thickness in a low-computing-power web environment, is a pressing technical problem that needs to be solved. Summary of the Invention

[0004] To address the technical challenge of achieving deep compression of massive component geometric data and reconstructing high-fidelity models with physical thickness in a low-computing-power environment on the web, given the loss of parameter semantics, this application provides a lightweight processing method and system for BIM 3D models of frame structure buildings.

[0005] The specific technical solution adopted is as follows:

[0006] Obtain the target component mesh and the standard template mesh, and perform spatial pose alignment processing on the target component mesh and the standard template mesh to obtain the aligned component mesh;

[0007] The aligned component mesh is geometrically adapted and trimmed to obtain independent differential geometry;

[0008] The independent differential geometry is fitted with parameters to obtain hierarchical rendering instructions, which include surface culling instructions and sidewall filling instructions generated for different plate thicknesses and hole diameters of the target component mesh.

[0009] Based on the hierarchical rendering instructions, the standard template mesh is instantiated and drawn to obtain the rendered target model.

[0010] In one possible implementation of this application, the step of aligning the target component mesh with a standard template mesh in spatial pose to obtain an aligned component mesh includes:

[0011] Based on the deviation between the geometric center and the centroid of the target component mesh, a local coordinate system is constructed, and the target component mesh is transformed into the local coordinate system;

[0012] For the target component mesh after coordinate system transformation, cross-correlation analysis is performed on the geometric feature sequence between the target component mesh and the standard template mesh to calculate the axial installation deviation of the target component mesh relative to the standard template mesh;

[0013] Based on the axial installation deviation, the target component mesh is spatially aligned to obtain an aligned component mesh.

[0014] In one possible implementation of this application, constructing a local coordinate system based on the deviation between the geometric center and the centroid of the target component mesh includes:

[0015] Determine the centroid coordinates of the target component mesh, and construct a covariance matrix based on the centroid coordinates and the coordinate set of each vertex in the target component mesh;

[0016] The covariance matrix is ​​decomposed into eigenvalues ​​to obtain multiple component eigenvalues ​​and unit eigenvectors along different axes.

[0017] Based on the deviation between the centroid coordinates and the geometric center of the target component mesh, the direction of the unit feature vector is adjusted to construct a local coordinate system for the target component mesh.

[0018] In one possible embodiment of this application, the step of performing cross-correlation analysis on the geometric feature sequence between the target component mesh and the standard template mesh to calculate the axial installation deviation of the target component mesh relative to the standard template mesh includes:

[0019] Determine the Z-axis sampling range of the physical bounding box of the target component mesh, and calculate the cross-sectional area of ​​the component entity at each sampling point within the Z-axis sampling range;

[0020] Based on the cross-sectional area of ​​the component entity at each sampling point, a gradient sequence of cross-sectional area along the axis is constructed.

[0021] Determine the baseline gradient sequence corresponding to the standard template mesh;

[0022] Cross-correlation analysis was performed on the gradient sequence of the axial cross-sectional area and the reference gradient sequence to obtain the correlation coefficient value;

[0023] Based on the displacement corresponding to the maximum value of the correlation coefficient and the sampling interval, the axial installation deviation of the target component mesh relative to the standard template mesh is calculated.

[0024] In one possible embodiment of this application, the step of performing geometric adaptation and trimming on the aligned component mesh to obtain an independent differential geometry includes:

[0025] Perform a three-dimensional Boolean difference operation on the target component mesh and the standard template mesh in the aligned component mesh to obtain the original difference mesh;

[0026] The original differential mesh is subjected to noise reduction processing to obtain an independent differential geometry.

[0027] In one possible implementation of this application, the noise removal process performed on the original differential mesh to obtain an independent differential geometry includes:

[0028] Perform topological connectivity analysis on the original differential mesh to obtain multiple sub-mesh, and calculate the closed volume of each sub-mesh;

[0029] Compare the closed volume with the minimum preset volume;

[0030] If the comparison result shows that the closed volume is less than the minimum preset volume, then the subgrid corresponding to the closed volume is determined to be computational noise and is discarded directly;

[0031] If the comparison result shows that the closed volume is greater than or equal to the minimum preset volume, then the sub-mesh corresponding to the closed volume is determined to be a valid feature, and is saved and stored in the set of valid meshes;

[0032] The effective mesh set is used as an independent differential geometry representing the processing features.

[0033] In one possible implementation of this application, the step of performing parameter fitting on the independent differential geometry to obtain hierarchical rendering instructions includes:

[0034] A subset is randomly selected from the set of vertices of the independent differential geometry, and the geometric model corresponding to the subset is calculated. The model parameters of the geometric model include the axis direction, the points on the axis, and the model radius.

[0035] Calculate the first distance between the remaining vertices in the vertex set and the geometric model, and determine the number of interior points whose first distance is less than a preset distance threshold;

[0036] After multiple iterations, the geometric model with the most interior points is selected as the candidate model, and the projection range of the interior points in the candidate model on the axis is used as the feature depth.

[0037] The set consisting of the axial direction, points on the axial direction, model radius, and feature depth is used as the feature parameter set;

[0038] Based on the determination result between the physical attribute ratio of the feature parameter set and the preset visual critical threshold, a graded rendering instruction is generated.

[0039] In one possible implementation of this application, generating graded rendering instructions based on the determination result between the ratio of physical properties of the feature parameter set and a preset visual critical threshold includes:

[0040] Calculate the physical property ratio between the feature depth and the model radius in the feature parameter set, where the feature depth is used to characterize the thickness of the component plate and the model radius is used to represent the hole diameter of the component;

[0041] The ratio of the physical attributes is compared with a preset visual critical threshold.

[0042] If the comparison result shows that the ratio of the physical properties is less than the preset visual critical threshold, then the component feature is determined to be a thin-walled feature;

[0043] If the comparison result shows that the ratio of the physical properties is greater than or equal to the preset visual critical threshold, then the component feature is determined to be a thick-walled feature.

[0044] For all successfully parameterized component features, a surface removal instruction is generated; for the thick-walled features, a sidewall filling instruction is generated.

[0045] In one possible implementation of this application, the step of instantiating and drawing the standard template mesh based on the hierarchical rendering instructions to obtain the rendered target model includes:

[0046] During the fragment coloring stage, based on the surface culling instruction, pixel-level surface negative shape operation is performed on each fragment in the standard template mesh to obtain a surface negative shape region;

[0047] Based on the pipe wall filling transformation matrix corresponding to the sidewall filling command, positive geometric compensation is performed on the negative surface region to obtain the rendered target model.

[0048] To achieve the above objectives, a lightweight processing system for BIM 3D models of frame structure buildings is also provided. The system includes a memory, a processor, and a computer program stored in the memory and running on the processor. When the processor executes the computer program, it implements the steps of the method described in any of the above descriptions.

[0049] This application has, but is not limited to, the following technical effects:

[0050] By acquiring the target component mesh and the standard template mesh, the target component mesh and the standard template mesh are aligned in spatial pose to obtain the aligned component mesh. The aligned component mesh is then subjected to geometric adaptation and clipping to obtain independent differential geometry. The independent differential geometry is then parametrically fitted to obtain hierarchical rendering instructions. The standard template mesh is then instantiated and drawn using the hierarchical rendering instructions to obtain the rendered target model. In this application, by parametrically fitting the independent differential geometry, surface culling instructions and sidewall filling instructions are generated for different plate thicknesses and apertures of the target component mesh. The surface culling instructions and sidewall filling instructions are used to construct different plate thicknesses and apertures, and targeted rendering processing is performed instead of retaining all mesh details, thus saving computing power. Furthermore, under the condition of loss of parametric semantics, deep compression of massive component geometric data is achieved, and a high-fidelity model with physical thickness is reconstructed in a low-computing environment on the Web. Attached Figure Description

[0051] Figure 1 This is a flowchart illustrating the first embodiment of the lightweight processing method for BIM 3D models of frame structure buildings in this application.

[0052] Figure 2 This is a schematic diagram of the device structure of the hardware operating environment involved in the embodiments of this application. Detailed Implementation

[0053] It should be understood that the specific embodiments described herein are merely illustrative of this application and are not intended to limit this application.

[0054] This application provides a method for lightweighting BIM 3D models of frame structure buildings. In the first embodiment of this method, refer to... Figure 1 The method includes:

[0055] Step S10: Obtain the target component mesh and the standard template mesh to be processed, and perform spatial pose alignment processing on the target component mesh and the standard template mesh to obtain the aligned component mesh.

[0056] As an example, this method is mainly applicable to steel structure components with through-hole features (such as bolt holes). For blind holes or complex irregular grooves, a "irregular mesh mounting" mechanism is used as a fallback.

[0057] As an example, the lightweight processing method for BIM 3D models of frame structure buildings can also be applied to a lightweight processing system for BIM 3D models of frame structure buildings. The overall modules and their functions of the system are as follows:

[0058] This system is logically divided into four serial processing modules (M1-M4), and the functions of each module are defined as follows:

[0059] M1: Data normalization and baseline establishment module;

[0060] Input: A set of original component meshes with arbitrary poses and no semantic meaning, which is the target component mesh.

[0061] Functions: Calculates the distribution of the principal axis and centroid of the component, eliminates directional ambiguity, and establishes a unified local coordinate system; calculates the axial installation deviation of the component relative to the standard template by using the cross-correlation analysis of the end section area signals.

[0062] Output: Spatial orientation normalized and axis-aligned component data stream (aligned component mesh).

[0063] M2: Differential extraction and pre-cleaning module;

[0064] Input: Aligned component mesh, standard template mesh.

[0065] Functions: Perform Boolean difference operations to extract the difference volume; calculate the volume of connected components and remove non-feature fragment noise with a volume smaller than a threshold.

[0066] Output: A collection of cleaned, independent differential volume meshes.

[0067] M3: Feature parameterization and hierarchical decision module;

[0068] Input: Independent differential volume mesh.

[0069] Function: Fit geometric feature parameters using the RANSAC algorithm and perform residual and normal verification; for features that pass verification, calculate the plate thickness-to-diameter ratio (P / A). Generate hierarchical rendering instructions (culling instructions / filling instructions); for irregular features that fail verification, retain the original mesh.

[0070] Output: Lightweight instruction set, irregular grid assets.

[0071] M4: Hybrid rendering execution module;

[0072] Input: Standard template, instruction set, irregular mesh.

[0073] Functionality: In the Web-based GPU pipeline, instantiate a drawing template and perform fragment culling; instantiate a standard drawing pipeline wall for filling; and mount and draw irregular meshes.

[0074] Output: The final synthesized high-fidelity 3D image, which is also the 3D target model.

[0075] As an example, the target component mesh can be the geometric data of multiple components to be processed. (in, (For component indexing), the constructed geometric data is usually defined in the global world coordinate system, with arbitrary translation positions and rotation angles. In order to perform geometric comparison, a local coordinate system based on its own geometric features must be established for each component.

[0076] As an example, the standard template mesh can be a reference component selected by clustering for reuse and differentiation. The standard template mesh comes from the "cluster center based on cross-sectional topological features" or the "preset parametric profile library". After unifying the local coordinate system, although the same type of component has the same orientation, there may still be physical misalignment on the Z-axis (length direction) due to different cutting lengths or differences in the modeling origin. For profiles with uniform cross-sections, conventional geometric alignment is prone to failure. Signal alignment can be performed by utilizing the physical characteristic that the cross-sectional area at both ends of the component changes abruptly.

[0077] Step S10 includes steps S11 to S13:

[0078] Step S11: Based on the deviation between the geometric center and the centroid of the target component mesh, a local coordinate system is constructed, and the target component mesh is transformed to the local coordinate system;

[0079] As an example, a local coordinate system can be a unified reference system established based on the principal axes of PCA (covariance matrix eigenvalue decomposition). By performing eigenvalue decomposition on the component, the major axis (Z-axis), width axis (X-axis), and height axis (Y-axis) of the component are determined, and a local coordinate system is established based on these.

[0080] Step S11 includes:

[0081] Determine the centroid coordinates of the target component mesh, and construct a covariance matrix based on the centroid coordinates and the coordinate set of each vertex in the target component mesh.

[0082] As an example, the centroid coordinates of the target component mesh can be determined as follows:

[0083] Determine the first [item] in the set corresponding to the target component mesh. The set of coordinates of all vertices of a component mesh. Calculate the centroid coordinates of this point set. :

[0084]

[0085] Where m represents the first... The number of all vertices in a component mesh. This represents the coordinates of the j-th vertex.

[0086] As an example, constructing the covariance matrix The method is as follows:

[0087]

[0088] The covariance matrix is ​​decomposed into eigenvalues ​​to obtain multiple component eigenvalues ​​and unit eigenvectors along different axes.

[0089] As an example, consider the covariance matrix. Eigenvalue decomposition is performed to obtain the eigenvalues ​​of the three components and their corresponding unit eigenvectors. These three vectors represent the directions with the largest, second largest, and smallest variances of the point cloud distribution, namely the major axis (Z-axis), width axis (X-axis), and height axis (Y-axis) of the component.

[0090] Based on the deviation between the centroid coordinates and the geometric center of the target component mesh, the direction of the unit feature vector is adjusted to construct a local coordinate system for the target component mesh.

[0091] As an example, since the eigenvectors only represent the direction of a line and do not have positive or negative directional properties (i.e., and (Mathematical equivalence) Direct use may result in a random reversal of the coordinate system. Therefore, the following hierarchical strategy is needed to lock in a unique positive direction:

[0092] Level 1 criterion (centroid-center deviation method): Calculate the geometric center of the component's axis-aligned bounding box. Constructing reference vectors ,calculate In the eigenvector Projection on .like Greater than the preset small threshold (For example ),and Then flip direction ( This strategy is applicable to asymmetric components whose centroid is significantly deviated from the geometric center.

[0093] Second-level judgment (vertex extreme value distribution method): If (Indicating that the component is highly symmetrical, such as a standard I-beam), the above method fails; in this embodiment, for a three-axis symmetrical component, the long side of the geometric bounding box is forcibly designated as the Z-axis, the direction of the larger moment of inertia of the cross section is designated as the X-axis, and the difference between the positive and negative directions of the axial direction is ignored.

[0094] When the feature values ​​are detected to be approximately equal (the difference is less than the threshold), for rectangular cross sections, the edge direction of the geometric bounding box is forcibly specified as the X-axis; for circular cross sections, any radial direction passing through the centroid is specified as the X-axis, and the component is marked to ignore rotational differences about the Z-axis.

[0095] Through the above steps, the system constructs a system where the origin is located at the geometric center. A local coordinate system is defined by the axial direction. All component meshes are then rigidly transformed to this local coordinate system.

[0096] Step S12: For the target component mesh after coordinate system transformation, perform cross-correlation analysis on the geometric feature sequence between the target component mesh and the standard template mesh, and calculate the axial installation deviation of the target component mesh relative to the standard template mesh.

[0097] As an example, after unifying the local coordinate system, although similar components have the same orientation, there may still be physical misalignment on the Z-axis (length direction) due to different cutting lengths or differences in the modeling origin. For profiles with uniform cross-sections, conventional geometric alignment is prone to failure. In this embodiment, the physical characteristic of abrupt changes in the cross-sectional area at both ends of the component is used for signal alignment.

[0098] As an example, axial installation deviation can be the amount of physical misalignment of the target component mesh relative to the standard template mesh on the Z-axis.

[0099] Step S12 includes:

[0100] Determine the Z-axis sampling range of the physical bounding box of the target component mesh, and calculate the cross-sectional area of ​​the component entity at each sampling point within the Z-axis sampling range;

[0101] As an example, for the transformed target component mesh The system sets the sampling step size. (This embodiment takes) The system defines the physical bounding box of a component (the smallest hexahedron capable of completely enclosing all vertices of the component's mesh) along the Z-axis. This yields the Z-axis sampling range. To capture end features, the sampling range is extended outwards. That is, the sampling interval is ,in, .

[0102] As an example, at the sampling point At this point, the system calculates the area of ​​the solid cross-section of the component. This allows us to obtain the cross-sectional area of ​​the component entity at each sampling point within the Z-axis sampling range.

[0103] Based on the cross-sectional area of ​​the component entity at each sampling point, a gradient sequence of cross-sectional area along the axis is constructed.

[0104] As an example, if If it is located outside the scope of the component entity, then This generates a sequence of cross-sectional areas along the axis. :

[0105]

[0106] Similarly, for a pre-selected standard template mesh Generate a benchmark sequence .

[0107] As an example, based on the area sequence along the axial section, the discrete gradient sequence of the area sequence along the axial section is calculated, that is, the gradient sequence of the area along the axial section. :

[0108] Where j represents the sampling point index, similarly, the baseline gradient sequence of the standard template mesh can be obtained. .

[0109] Determine the baseline gradient sequence corresponding to the standard template mesh;

[0110] Cross-correlation analysis was performed on the gradient sequence of the axial cross-sectional area and the benchmark gradient sequence to obtain the correlation coefficient value.

[0111] As an example, due to the abrupt numerical jumps from 0 to non-zero (the starting point of the component) and from non-zero to 0 (the ending point of the component) at both ends of the sequence, this "rectangular wave" characteristic exhibits extremely high autocorrelation in signal processing. The discrete cross-correlation function between the gradient sequence along the axial cross-section and the reference gradient sequence is calculated to obtain the correlation coefficient value. :

[0112]

[0113] Specifically, cross-correlation calculations are performed only on the cross-sectional area gradient sequence of the target component and the standard template at both ends of a preset length (e.g., within 500mm of the end).

[0114] In another implementation, based on the axial cross-sectional area sequence and the reference sequence Calculate the correlation coefficient value. The calculation method can be:

[0115]

[0116] Based on the displacement corresponding to the maximum value of the correlation coefficient and the sampling interval, the axial installation deviation of the target component mesh relative to the standard template mesh is calculated.

[0117] As an example, search enables Displacement that reaches the global maximum value The physical distance corresponding to this displacement is the axial installation deviation. :

[0118] in, This indicates the sampling interval (e.g., 5 mm) set when generating the sequence of cross-sectional areas along the axis.

[0119] Step S13: Based on the axial installation deviation, perform spatial pose alignment processing on the target component mesh to obtain an aligned component mesh.

[0120] As an example, this axial installation deviation This precisely describes the physical alignment position of the target component mesh relative to the standard template mesh along its length. Regardless of whether the middle section of the component has a uniform cross-section, the area jump signal at the ends ensures the uniqueness and accuracy of the alignment. At this point, the target component mesh has achieved precise rigid registration with the standard template mesh in space, resulting in an aligned component mesh. The aligned component mesh is the aggregate obtained after registering the target component mesh and the standard template mesh.

[0121] As an example, using the alignment position obtained in step S13 as the initial value, the ICP (Iterative Closest Point) algorithm is used to finely adjust the target component mesh and the standard template mesh at the point cloud level until the registration error converges to within the preset small tolerance (such as 0.1mm).

[0122] Step S20: Perform geometric adaptation and trimming on the aligned component mesh to obtain independent differential geometry.

[0123] As an example, after completing the spatial orientation normalization and precise axial alignment of the component, the target component mesh... With standard template grid In geometric space, they are already at the theoretical maximum overlap state; the purpose of this step is to use three-dimensional Boolean operations to separate the small geometric differences (i.e., processing features) between the two from the component body, and to clean up the computational noise that may be generated by Boolean operations, so as to provide clean geometric input for subsequent parametric processing.

[0124] As an example, an independent differential geometry can be a material removal volume obtained by differential calculation of the aligned component mesh through Boolean difference.

[0125] The step S20 of lightweight processing of the BIM 3D model of the frame structure building also includes steps S21 to S22, including:

[0126] Step S21: Perform three-dimensional Boolean difference operation on the target component mesh and the standard template mesh in the aligned component mesh to obtain the original difference mesh.

[0127] As an example, before performing Boolean difference operations, a clipping bounding box is constructed based on the axial installation deviation and the actual length of the target component mesh to be processed, for the standard template mesh. Perform a Boolean intersection or planar cut operation to trim its Z-axis length to the same value as the plane. Consistent with the obtained adaptation template, the adaptation template is then used in differential operations. The input target component mesh and standard template mesh must undergo "hole filling" or "manifolding" to ensure that they are watertight meshes.

[0128] As an example, this step mainly focuses on feature extraction for common "subtractive processing" processes in steel structure manufacturing, such as drilling, chamfering, and grooving. The geometric essence of such processes is to remove specific volumes from standard profiles. Therefore, these removed geometries can be reverse-engineered by calculating the volume difference between the standard template and the actual component.

[0129] In practice, the system first uses the local coordinate system transformation matrix and axial installation deviation calculated by the M1 module. Mesh the target component to be processed Rigid transformation to standard template mesh Within the unified coordinate space, and under this unified reference, the system performs three-dimensional Boolean difference operations.

[0130] The calculation formula is defined as follows:

[0131]

[0132] in, Given the set of original difference grids, under an ideal mathematical model, It should only include cylinders corresponding to bolt holes or prisms with corresponding chamfers; however, for "additive" features such as welded lugs and stiffeners in the component, the result of the above difference operation will be empty (or ignored by the Boolean algorithm). If additive features need to be processed, the reverse difference operation can be performed in parallel (i.e., This embodiment focuses on detailing the processing flow of subtractive material features.

[0133] Step S22: Perform noise removal processing on the original differential mesh to obtain an independent differential geometry.

[0134] As an example, because BIM models undergo mesh discretization during the export process, even identical geometric surfaces may exhibit slight differences in the topology of the triangular meshes generated across different component instances. This leads to the generation of numerous non-featured fragments or tiny closed volumes (i.e., computational noise) during Boolean operations, in addition to the expected manufacturing features. If left untreated, this noise will severely interfere with subsequent feature parameterization fitting.

[0135] Based on this, noise removal processing is performed on the original differential mesh to obtain independent differential geometry.

[0136] Step S22 includes:

[0137] A topological connectivity analysis is performed on the original differential mesh to obtain multiple sub-mesh, and the closed volume of each sub-mesh is calculated.

[0138] As an example, the system first processes the original differential mesh. Perform topological connectivity analysis, Decomposed into a set of geometrically unconnected independent sub-mesh Each subgrid This represents a potential independent processing feature or a noise cluster.

[0139] As an example, for each subgrid The system calculates its closed volume. For non-closed fragmented meshes, the volume of their axis-aligned bounding box (AABB) can be calculated as an approximation.

[0140] Compare the closed volume with the minimum preset volume;

[0141] If the comparison result shows that the closed volume is less than the minimum preset volume, then the subgrid corresponding to the closed volume is determined to be computational noise and is discarded directly;

[0142] If the comparison result shows that the closed volume is greater than or equal to the minimum preset volume, then the sub-mesh corresponding to the closed volume is determined to be a valid feature, and is saved and stored in the set of valid meshes;

[0143] The effective mesh set is used as an independent differential geometry representing the processing features.

[0144] As an example, set a noise cleaning volume threshold / minimum preset volume. In this embodiment, considering that the volume of the smallest bolt hole (such as an M12 bolt hole) in actual engineering is usually larger than... ,Will Set as (This value is sufficient to filter out "burrs" and "debris" caused by grid accuracy errors).

[0145] If closed volume The subgrid was determined to be computational noise and was discarded.

[0146] If closed volume If the sub-mesh is determined to be a valid feature, it is retained and stored in the net difference volume mesh set. That is, the effective mesh set, which is used as an independent differential geometry representing the processing features.

[0147] The above cleaning steps output a clean, independent set of net differential geometry meshes / independent differential geometries. These grids accurately correspond to every actual manufacturing feature on the component, and eliminate most of the interference data introduced by calculation errors.

[0148] Step S30: Perform parameter fitting on the independent differential geometry to obtain hierarchical rendering instructions. The hierarchical rendering instructions include surface culling instructions and sidewall filling instructions generated for different plate thicknesses and hole diameters of the target component mesh.

[0149] As an example, this embodiment is a core step in achieving data lightweighting, and its task is to remove the material, which is still composed of a large number of triangular facets, from the volume mesh. The data is translated into semantically clear geometric parameter instructions with extremely low data volume. At the same time, in order to solve the shortcomings of traditional algorithms in handling irregular features, this embodiment introduces a robust verification and fallback mechanism, and formulates differentiated rendering strategies based on physical properties.

[0150] As an example, the hierarchical rendering instructions include surface culling instructions and sidewall fill instructions. Surface culling instructions are used to control the shader to discard lightweight data of pixels, while sidewall fill instructions are used to control the transformation data of standard pipe wall instantiation. Different rendering instructions are used to execute targeted rendering strategies for different features. Among them, sidewall fill instructions are only generated for "through hole features", and blind holes must be classified as irregular features.

[0151] Step S30 includes: randomly selecting a subset from the vertex set of the independent differential geometry, calculating the geometric model corresponding to the subset, wherein the model parameters of the geometric model include the axis direction, the points on the axis, and the model radius;

[0152] Calculate the first distance between the remaining vertices in the vertex set and the geometric model, and determine the number of interior points whose first distance is less than a preset distance threshold;

[0153] After multiple iterations, the geometric model with the most interior points is selected as the candidate model, and the projection range of the interior points in the candidate model on the axis is used as the feature depth.

[0154] As an example, iterate through each material and remove the volume mesh. We attempted to reverse-engineer the parameters to standard geometric parameters. Considering that the most common feature in steel structure processing is rotary drilling (cylinder), we prioritized the use of the Random Sample Consensus (RANSAC) algorithm for cylinder fitting and added a strict verification process.

[0155] As an example, RANSAC cylindrical fitting can be done in the following ways:

[0156] Establish a standard cylindrical geometric model, whose equation is that the distance from a point to the axis is equal to the radius. Randomly select a subset (e.g., 3 points) from the vertex set to solve for the model parameters (axis direction). A point on the axis Model radius ), and calculate the first distance from the remaining vertices to the model, counting those whose first distance is less than a distance threshold (e.g. The system calculates the number of interior points of a given model. After multiple iterations (1000 in this example), the model with the highest number of interior points is selected as the candidate solution. Subsequently, the system calculates the position of the interior points on the axis. The projection range on the surface is used to obtain the feature depth h. When judging candidate models, in addition to the number of interior points, the "interior point ratio" is added as a judgment criterion (for example, models with more than 80% of interior points are selected as candidate solutions).

[0157] As an example, to prevent incorrectly fitting of square holes, oblong holes, or angled holes as cylinders, the system performs double verification:

[0158] Residual verification: Calculate the root mean square error (RMSE) from all mesh vertices to the fitted cylindrical surface. If the RMSE is greater than the preset engineering fitting tolerance (the recommended value in this embodiment is...), then... If the result is negative, then the fitting is considered to have failed.

[0159] Normal perpendicularity check: Calculate the direction of the characteristic axis. The angle between the hole and the principal axis (X-axis or Y-axis) of the component's local coordinate system is considered. If the angle deviates significantly from 0 degrees or 180 degrees (e.g., a deviation greater than 5 degrees), it indicates that the hole is an oblique hole. Standard cylindrical filling will cause surface defects, resulting in a failed fit. Based on the verification results, a corresponding set of feature parameters is generated.

[0160] The set consisting of the axial direction, points on the axial direction, model radius, and feature depth is used as the feature parameter set;

[0161] As an example, based on the above verification results, the feature parameters are processed in a split manner, specifically:

[0162] Branch A (Parameterization Successful): If the verification passes, it indicates that the feature is a standard vertical circular hole; generate a set of machining feature parameters. (Axis direction, points on the axis, model radius, and feature depth), and discard the original mesh data / target component mesh.

[0163] Branch B (Irregular Shape Preservation): If the verification fails (e.g., square holes, slanted holes, large chamfers), the system marks the feature as an "irregular shape feature." In this case, the system directly retains the original mesh data of the feature. It is marked as an independent sub-mesh asset and is not parametrically compressed; this mechanism ensures that the solution will not crash when faced with complex irregular processing, thus guaranteeing the engineering fidelity.

[0164] Based on the determination result between the physical attribute ratio of the feature parameter set and the preset visual critical threshold, a graded rendering instruction is generated.

[0165] As an example, for a standard feature entering branch A, in order to strike a balance between rendering performance and visual effects, the system generates hierarchical rendering instructions based on the physical properties of the feature.

[0166] As an example, the visual threshold is a preset value. It can be 0.15. The ratio of the physical properties of the feature parameter set is compared with the visual critical threshold, and the rendering instructions to be generated are determined based on the comparison result.

[0167] The step of generating graded rendering instructions based on the determination result between the physical attribute ratio of the feature parameter set and the preset visual critical threshold includes:

[0168] Calculate the physical property ratio between the feature depth and the model radius in the feature parameter set, where the feature depth is used to characterize the thickness of the component plate and the model radius is used to represent the hole diameter of the component;

[0169] As an example, the ratio of plate thickness to aperture is calculated to obtain the ratio of physical properties. :

[0170]

[0171] This physical property ratio reflects the depth-to-width ratio of the holes in the component.

[0172] The ratio of the physical attributes is compared with a preset visual critical threshold.

[0173] If the comparison result shows that the ratio of the physical properties is less than the preset visual critical threshold, then the component feature is determined to be a thin-walled feature.

[0174] As an example, if the ratio of physical properties (Thin-walled feature) The component is identified as a thin-walled feature, and the visual projection area of ​​the inner wall is extremely small and can be ignored.

[0175] If the comparison result shows that the ratio of the physical properties is greater than or equal to the preset visual critical threshold, then the component feature is determined to be a thick-walled feature.

[0176] As an example, if the ratio of physical properties (Thick-walled feature) The component is identified as a thick-walled feature. The inner wall surface makes a significant visual contribution and must be reconstructed.

[0177] For all successfully parameterized component features, a surface removal instruction is generated; for the thick-walled features, a sidewall filling instruction is generated.

[0178] As an example, a rendering instruction is generated based on the discrimination result, and a surface culling instruction containing the feature parameter set is generated for all successfully parameterized features (regardless of thickness). This is used to instruct the shader during the rendering phase to remove the corresponding pixels on the surface of the component, forming a two-dimensional opening.

[0179] As an example, for thick-walled features, sidewall filling instructions are generated; a pipe wall filling transformation matrix is ​​constructed. Used to render pre-defined standardized pipe wall geometry during the rendering phase. (An open circular tube with a radius and height of 1) is transformed to the position of the hole. The construction process of the tube wall filling transformation matrix follows the order of "scaling-rotation-translation", specifically:

[0180] Scaling matrix : The axis scaling factor is , The axis scaling factor is h.

[0181] Rotation matrix : Standard Z-axis Rotate to feature normal .

[0182] Translation matrix The translation vector is the feature center. .

[0183]

[0184] The pipe wall filling transformation matrix is ​​encapsulated in the sidewall filling instruction. In this context, it serves as the input data for instantiation and rendering.

[0185] As an example, the above steps transform massive geometric differences into three types of lightweight data: a very small number of irregular meshes (branch B), general surface culling instructions (branch A), and on-demand sidewall filling instructions (branch A-thick wall). This hierarchical strategy minimizes data transmission and memory usage while ensuring visual integrity.

[0186] Step S40: Based on the hierarchical rendering instructions, the standard template mesh is instantiated and drawn to obtain the rendered target model.

[0187] As an example, this step is the final execution stage of the lightweight processing flow, which usually runs in the graphics rendering engine of the web (such as the browser's WebGL / WebGPU environment). Its core task is to parse the lightweight instruction set and the irregular assets, and use the programmable pipeline feature of the GPU to dynamically reconstruct a high-fidelity 3D target model without loading the original full component mesh.

[0188] Step S40 includes:

[0189] During the fragment coloring stage, based on the surface culling instruction, pixel-level surface negative shape operation is performed on each fragment in the standard template mesh to obtain a surface negative shape region.

[0190] As an example, during the scene initialization phase, the system performs the following resource loading operations:

[0191] Load Standard Template: Loads the selected standard template component mesh. The vertex buffer is loaded into video memory.

[0192] Load Standard Geometry Agent: Loads the pre-defined standardized pipe wall geometry Load into video memory. It is a hollow cylindrical tube grid without a cap or bottom, with its geometric center located at the origin, and its radius and height both being 1 unit length.

[0193] Load irregular assets: Load the small number of irregular meshes retained in the above steps (branch B) into video memory.

[0194] Upload command data: Transformation matrices and surface culling commands for all component instances. and sidewall filling instructions All data are uploaded to video memory as textures or uniform buffer objects for concurrent reading by shaders.

[0195] At this point, there are no successfully parameterized original component meshes in the video memory, achieving extreme lightweighting at the data level.

[0196] As an example, for tens of thousands of similar components in a scene, the system utilizes the hardware instantiation technology of the graphics API to initiate only one instantiation of the standard template mesh. The drawing call is performed. The vertex shader reads the spatial transformation matrix of the component based on the instance ID and transforms the standard template mesh to the correct position in the world coordinate system.

[0197] During the fragment shader phase, the system performs a "surface negative shape" operation. For each fragment on the stencil surface:

[0198] The shader indexes and reads all associated surface culling instructions from the instruction texture based on the current instance ID. (Including feature center) ,radius , legal direction (e.g., 64) increases the maximum number of features processed per component. Any excess features are returned to mesh rendering to prevent the GPU shader from traversing all feature instructions, which could cause the GPU TDR to crash (timeout reset).

[0199] The shader transforms the world coordinates of fragments to the local space of features.

[0200] Calculate the perpendicular distance from the fragment to the feature axis. and the projected distance along the axis .

[0201] Decision logic: If and This indicates that the element is located within the volume of the cylinder that should be "hollowed out".

[0202] Execute discard: When the above conditions are met, the shader executes the discard (a shading instruction) instruction to prevent the fragment from being written to the color buffer and depth buffer, thus generating a negative surface region.

[0203] Based on the pipe wall filling transformation matrix corresponding to the sidewall filling command, positive geometric compensation is performed on the negative surface region to obtain the rendered target model.

[0204] As an example, after the above surface negative shape operation, the component corresponding to the target component mesh has formed the correct two-dimensional opening. In order to complete the visual details, the system performs subsequent filling operations.

[0205] Specifically, 1. Standard pipe wall filling (for thick-walled features)

[0206] The system initiates a response to the standardized pipe wall geometry. In the second instantiation draw call, the vertex shader reads the sidewall fill instruction based on the instance ID. The pipe wall filling transformation matrix This matrix acts directly on the vertex of the unit cylindrical tube, instantly stretching, rotating, and translating it to the location of the hole in the component. Because... Built based on characteristic physical dimensions, the deformed tube walls can precisely fit inside the edges of the removed holes. When an observer views from the side or at an angle, these tube walls block the line of sight, perfectly reconstructing the physical thickness of the steel plate.

[0207] 2. Mounting irregularly shaped meshes (for complex features)

[0208] For features marked as "irregular" (such as slanted holes and large chamfers), the system renders them as ordinary independent sub-mesh. These meshes are attached to the corresponding component instances through the component's transformation matrix, ensuring that even when the algorithm cannot be parameterized, special processing details can still be correctly displayed, thus providing an engineering safety net for the solution.

[0209] This application provides a lightweight processing method for BIM 3D models of frame structure buildings. It involves acquiring the target component mesh and a standard template mesh, aligning their spatial poses to obtain an aligned component mesh, performing geometric adaptation and clipping on the aligned component mesh to obtain independent differential geometry, performing parameter fitting on the independent differential geometry to obtain hierarchical rendering instructions, and then using these hierarchical rendering instructions to instantiate and render the standard template mesh, resulting in the rendered target model. In this application, parameter fitting of the independent differential geometry generates surface culling and sidewall filling instructions for different plate thicknesses and apertures of the target component mesh. These instructions are used to construct different plate thicknesses and apertures, performing targeted rendering processing instead of retaining all mesh details, thus saving computational power. Furthermore, under the condition of loss of parametric semantics, it achieves deep compression of massive component geometric data and reconstructs a high-fidelity model with physical thickness in a low-computing-power environment on the Web.

[0210] Reference Figure 2 , Figure 2 This is a schematic diagram of the device structure of the hardware operating environment involved in the embodiments of this application.

[0211] like Figure 2 As shown, the lightweight processing device for the BIM 3D model of the frame structure building may include: a processor 1001, a memory 1003, and a communication bus 1002. The communication bus 1002 is used to realize the connection and communication between the processor 1001 and the memory 1003.

[0212] Optionally, the lightweight BIM 3D model processing equipment for this frame structure building may also include a user interface, a network interface, a camera, RF (Radio Frequency) circuitry, sensors, a WiFi module, etc. The user interface may include a display screen and an input submodule such as a keyboard; optional user interfaces may also include standard wired or wireless interfaces. The network interface may include standard wired or wireless interfaces (such as a Wi-Fi interface).

[0213] Those skilled in the art will understand that Figure 2 The lightweight processing equipment structure for BIM 3D models of frame structures shown in the figure does not constitute a limitation on the lightweight processing equipment for BIM 3D models of frame structures. It may include more or fewer components than shown, or combine certain components, or have different component arrangements.

[0214] like Figure 2 As shown, the memory 1003, serving as a storage medium, may include an operating system, a network communication module, and a lightweight processing program for the BIM 3D model of a frame structure building. The operating system is a program that manages and controls the hardware and software resources of the lightweight processing device for the BIM 3D model of a frame structure building, supporting the operation of the lightweight processing program and other software and / or programs. The network communication module is used to enable communication between the various components within the memory 1003, as well as communication with other hardware and software in the lightweight processing system for the BIM 3D model of a frame structure building.

[0215] exist Figure 2 In the lightweight processing device for BIM 3D models of frame structure buildings shown, the processor 1001 is used to execute the lightweight processing program for BIM 3D models of frame structure buildings stored in the memory 1003 to implement the steps of the lightweight processing method for BIM 3D models of frame structure buildings described above.

[0216] The specific implementation method of the lightweight processing device for BIM 3D model of frame structure building in this application is basically the same as the various embodiments of the lightweight processing method for BIM 3D model of frame structure building described above, and will not be repeated here.

[0217] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or system. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or system that includes that element.

[0218] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.

[0219] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) as described above, and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0220] The above are merely preferred embodiments of this application and do not limit the scope of this application. Any equivalent structural or procedural transformations made based on the description and drawings of this application, or direct or indirect applications in other related technical fields, are similarly included within the scope of protection of this application.

[0221] It should be noted that the order of the embodiments described above is merely for descriptive purposes and does not represent the superiority or inferiority of the embodiments. The processes depicted in the accompanying drawings do not necessarily require a specific or sequential order to achieve the desired result. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.

[0222] The various embodiments in this specification are described in a progressive manner. The same or similar parts between the various embodiments can be referred to each other. Each embodiment focuses on describing the differences from other embodiments.

Claims

1. A method for lightweight processing of a BIM three-dimensional model of a frame structure building, characterized in that, The method includes: Obtain the target component mesh and the standard template mesh, and perform spatial pose alignment processing on the target component mesh and the standard template mesh to obtain the aligned component mesh; The aligned component mesh is geometrically adapted and trimmed to obtain independent differential geometry; The independent differential geometry is subjected to parameter fitting to obtain hierarchical rendering instructions. The hierarchical rendering instructions include surface culling instructions and sidewall filling instructions generated for different plate thicknesses and apertures of the target component mesh, specifically including: A subset is randomly selected from the set of vertices of the independent differential geometry, and the geometric model corresponding to the subset is calculated. The model parameters of the geometric model include the axis direction, the points on the axis, and the model radius. Calculate the first distance between the remaining vertices in the vertex set and the geometric model, and determine the number of interior points whose first distance is less than a preset distance threshold; After multiple iterations, the geometric model with the most interior points is selected as the candidate model, and the projection range of the interior points in the candidate model on the axis is used as the feature depth. The set consisting of the axial direction, points on the axial direction, model radius, and feature depth is used as the feature parameter set; Based on the determination result between the physical attribute ratio of the feature parameter set and the preset visual critical threshold, a graded rendering instruction is generated, specifically including: Calculate the physical property ratio between the feature depth and the model radius in the feature parameter set, where the feature depth is used to characterize the thickness of the component plate and the model radius is used to represent the hole diameter of the component; The ratio of the physical attributes is compared with a preset visual critical threshold. If the comparison result shows that the ratio of the physical properties is less than the preset visual critical threshold, then the component feature is determined to be a thin-walled feature; If the comparison result shows that the ratio of the physical properties is greater than or equal to the preset visual critical threshold, then the component feature is determined to be a thick-walled feature. For all successfully parameterized component features, a surface removal instruction is generated; for the thick-walled features, a sidewall filling instruction is generated. Based on the hierarchical rendering instructions, the standard template mesh is instantiated and drawn to obtain the rendered target model, specifically including: During the fragment coloring stage, based on the surface culling instruction, pixel-level surface negative shape operation is performed on each fragment in the standard template mesh to obtain a surface negative shape region; Based on the pipe wall filling transformation matrix corresponding to the sidewall filling command, positive geometric compensation is performed on the negative surface region to obtain the rendered target model.

2. The lightweight processing method for BIM 3D models of frame structure buildings as described in claim 1, characterized in that, The step of aligning the target component mesh with the standard template mesh in spatial pose to obtain an aligned component mesh includes: Based on the deviation between the geometric center and the centroid of the target component mesh, a local coordinate system is constructed, and the target component mesh is transformed into the local coordinate system; For the target component mesh after coordinate system transformation, cross-correlation analysis is performed on the geometric feature sequence between the target component mesh and the standard template mesh to calculate the axial installation deviation of the target component mesh relative to the standard template mesh; Based on the axial installation deviation, the target component mesh is spatially aligned to obtain an aligned component mesh.

3. The lightweight processing method for BIM 3D models of frame structure buildings as described in claim 2, characterized in that, The construction of a local coordinate system based on the deviation between the geometric center and the centroid of the target component mesh includes: Determine the centroid coordinates of the target component mesh, and construct a covariance matrix based on the centroid coordinates and the coordinate set of each vertex in the target component mesh; The covariance matrix is ​​decomposed into eigenvalues ​​to obtain multiple component eigenvalues ​​and unit eigenvectors along different axes. Based on the deviation between the centroid coordinates and the geometric center of the target component mesh, the direction of the unit feature vector is adjusted to construct the local coordinate system of the target component mesh.

4. The lightweight processing method for BIM 3D models of frame structure buildings as described in claim 2, characterized in that, The cross-correlation analysis of the geometric feature sequences between the target component mesh and the standard template mesh, and the calculation of the axial installation deviation of the target component mesh relative to the standard template mesh, include: Determine the Z-axis sampling range of the physical bounding box of the target component mesh, and calculate the cross-sectional area of ​​the component entity at each sampling point within the Z-axis sampling range; Based on the cross-sectional area of ​​the component entity at each sampling point, a gradient sequence of cross-sectional area along the axis is constructed. Determine the baseline gradient sequence corresponding to the standard template mesh; Cross-correlation analysis was performed on the gradient sequence of the axial cross-sectional area and the reference gradient sequence to obtain the correlation coefficient value; Based on the displacement corresponding to the maximum value of the correlation coefficient and the sampling interval, the axial installation deviation of the target component mesh relative to the standard template mesh is calculated.

5. The lightweight processing method for BIM 3D models of frame structure buildings as described in claim 1, characterized in that, The step of performing geometric adaptation and trimming on the aligned component mesh to obtain independent differential geometry includes: Perform a three-dimensional Boolean difference operation on the target component mesh and the standard template mesh in the aligned component mesh to obtain the original difference mesh; The original differential mesh is subjected to noise reduction processing to obtain an independent differential geometry.

6. The lightweight processing method for BIM 3D models of frame structure buildings as described in claim 5, characterized in that, The noise removal process performed on the original differential mesh to obtain an independent differential geometry includes: Perform topological connectivity analysis on the original differential mesh to obtain multiple sub-mesh, and calculate the closed volume of each sub-mesh; Compare the closed volume with the minimum preset volume; If the comparison result shows that the closed volume is less than the minimum preset volume, then the subgrid corresponding to the closed volume is determined to be computational noise and is discarded directly; If the comparison result shows that the closed volume is greater than or equal to the minimum preset volume, then the sub-mesh corresponding to the closed volume is determined to be a valid feature, and is saved and stored in the set of valid meshes; The effective mesh set is used as an independent differential geometry representing the processing features.

7. A lightweight processing system for BIM 3D models of frame structure buildings, characterized in that, The system includes a memory, a processor, and a computer program stored in the memory and running on the processor, wherein the processor executes the computer program to implement the steps of the method as described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • BIM rapid lightweight method

    CN118799529A

  • Light-weight glass container structure optimization design method based on three-dimensional simulation model

    CN120124129A