Method and system for three-dimensional design and modeling of building curtain wall based on PLM
Patent Information
- Application Number
- CN202611200258.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2026-08-10
- Publication Date
- 2026-10-30
- Estimated Expiration
- 2046-08-10
AI Technical Summary
[0005]本发明的目的在于提供一种基于PLM的建筑幕墙三维设计建模方法与系统,以解决现有技术中空间冲突依赖人工排查、参数化建模缺乏层级全局耦合求解的问题
从基础几何体集合中提取各构件的边界表示数据,包括顶点坐标序列、棱边方向向量和面片法向向量,用以计算任意两个基础几何体之间的空间包围盒重叠度和面片侵入深度,并以此构建空间拓扑冲突检测矩阵。该矩阵以量化指标衡量构件之间的重叠区域体积与法向穿透程度,相比仅依靠人工目视或简单包围盒相离判断,能够更精确地识别面板实体嵌入龙骨实体边界、连接件穿过面板厚度方向等复杂侵入形态。依据冲突检测矩阵中的重叠度最大值和侵入深度最大值,将超出预设阈值的构件标记为待裁减几何体,并执行布尔减运算,自动从构件的边界表示中减去相交部分。这一过程消除了人工锁定冲突对、反复绘制裁剪曲线并手动分割实体的操作,将构件空间适配工作转化为批量矩阵化检测与自动布尔修正,直接获得无相互侵入的候选几何体集合。
Smart Images

Figure CN122712959B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of building curtain wall design technology, specifically to a PLM-based three-dimensional design modeling method and system for building curtain walls. Background Technology
[0002] In 3D design modeling of building curtain walls, it is often necessary to handle the spatial relationships between a large number of panels, framing members, and connectors. Current technologies mostly rely on manual placement of components and manual checks for interference in general CAD environments. Designers check the embedding positions of each panel and framing member, and Boolean operations are repeatedly performed to trim the junction areas when adjusting the external dimensions. This manual operation increases dramatically when the curtain wall has complex segmentation or varied curved surfaces, and it is difficult to ensure continuous updates of the overall assembly boundary after local modifications.
[0003] In terms of parametric modeling, existing solutions mostly use unidirectional dimension-driven or isolated component parameter tables, recording only the length, thickness, and other values of individual components, without establishing a global equation system for coupling constraints between components. When the cross-section of the main curtain wall keel changes, the positioning of the connectors attached to it and the panel grid boundaries cannot be automatically adjusted, requiring manual modification of positioning dimensions and trimming parameters item by item. Parameter transfer remains at the level of single-layer reference, lacking the ability to solve for joint constraints of dimensions, positions, and material properties in hierarchical assembly chains.
[0004] The problem this invention aims to solve is how to automatically quantify and detect the degree of spatial topological conflict between all components based on the precise boundary representation data of each component, and realize batch-based trimming of intersecting areas; and how to assign tightly coupled parameterized driving variables to each node after constructing a component hierarchy tree that reflects the assembly logic of the curtain wall, forming a set of global constraint equations that can be solved iteratively in a unified manner, so that the external dimensions, spatial positioning and material properties change collaboratively among components at each level. Summary of the Invention
[0005] The purpose of this invention is to provide a PLM-based 3D design and modeling method and system for building curtain walls, to solve the problems of existing technologies where spatial conflicts rely on manual inspection and parametric modeling lacks hierarchical global coupling solutions. By constructing a conflict detection matrix based on boundary representation data and automatically performing Boolean subtraction operations for filtering, and simultaneously constructing a curtain wall component hierarchy tree and establishing a global constraint equation system for iterative solution, adaptive handling of interference between components and synchronous driven updates of appearance dimensions and assembly positions are achieved.
[0006] To achieve the above objectives, the present invention provides the following technical solution: The present invention provides a PLM-based three-dimensional design and modeling method for building curtain walls, comprising: The geometric and material parameters of the target building curtain wall in the PLM system are obtained and mapped to the initial three-dimensional mesh coordinate system to generate a basic geometric set consisting of panel entities, keel entities, and connector entities. In this way, the engineering parameters in the PLM are directly converted into a three-dimensional basic geometric model, avoiding data deviation caused by manual reconstruction.
[0007] Based on the boundary representation data of each basic geometry in the set of basic geometries, a spatial topological conflict detection matrix is constructed between each basic geometry. By comprehensively utilizing vertex coordinates, edge directions, and face normals, the overlap of the spatial bounding boxes and the intrusion depth of the faces between the geometries are accurately captured, making the conflict recognition more consistent with the real assembly state.
[0008] Based on the spatial topological conflict detection matrix, Boolean subtraction is performed on each basic geometry to filter and obtain a set of candidate geometries. Preferably, basic geometries whose spatial bounding box overlap and patch intrusion depth both exceed the corresponding thresholds are identified as geometries to be clipped, and Boolean subtraction is performed on them to eliminate solid interference while retaining the effective geometric region of the component, thereby generating a set of conflict-free candidate geometries.
[0009] The candidate geometries in the candidate geometry set are sorted according to their hierarchical relationship to generate a curtain wall component hierarchy tree. The parent-child relationship is determined based on the installation reference plane coordinates and the support attachment object identifier, so that the top-to-bottom assembly hierarchy from the main curtain wall keel to the curtain wall panel is clearly represented.
[0010] Each node in the curtain wall component hierarchy tree is assigned a parameterized driving variable, which is associated with geometric parameters and material parameters. Preferably, the component shape dimension parameters, component positioning parameters and component material property parameters of each node are combined into an initial driving variable vector, and a mapping index table between variables and hierarchy positions is established so that subsequent parameter adjustments have a clear hierarchy orientation.
[0011] Based on the parameterized driving variables of all nodes, a global constraint equation set of the curtain wall component hierarchy tree is generated, and the global constraint equation set is iteratively solved to obtain the solution set of parameterized driving variables for each node. As a technical solution of the present invention, the geometric assembly equality constraints and inequality constraints between parent and child nodes are combined into global constraints, which are then linearized and solved using Newton-Raphson iteration to ensure that consistent parameter solutions are obtained while meeting assembly accuracy requirements.
[0012] Based on the solution set of parameterized driving variables for each node, the geometric shape data of each node in the curtain wall component hierarchy tree is updated to generate a three-dimensional design model of the target building curtain wall. During the update process, the vertex coordinates and surface normals are recalculated according to the final external dimensions and positioning values, so that the geometric shape of each component accurately matches the solved driving parameters, thereby obtaining an interference-free, parameterized driven three-dimensional design model of the building curtain wall.
[0013] This invention also provides a PLM-based 3D design and modeling system for building curtain walls, including 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 PLM-based 3D design and modeling method for building curtain walls. By integrating PLM data mapping, conflict detection, Boolean operation filtering, hierarchical tree construction, parameterization driving, and global constraint solving into an automated process, the efficiency and reliability of 3D design and modeling of building curtain walls are significantly improved.
[0014] The technical effects and advantages provided by the present invention in the above technical solution are as follows: Boundary representation data of each component is extracted from the set of basic geometries, including vertex coordinate sequences, edge direction vectors, and facet normal vectors. This data is used to calculate the spatial bounding box overlap and facet intrusion depth between any two basic geometries, and a spatial topological conflict detection matrix is constructed based on this. This matrix uses quantitative indicators to measure the volume of overlapping areas and the degree of normal penetration between components. Compared to relying solely on manual visual inspection or simple bounding box separation judgment, it can more accurately identify complex intrusion patterns such as panel entities embedding into keel entity boundaries and connectors passing through the panel thickness direction. Based on the maximum overlap and intrusion depth values in the conflict detection matrix, components exceeding preset thresholds are marked as geometries to be trimmed, and Boolean subtraction is performed to automatically subtract the intersecting parts from the component's boundary representation. This process eliminates the need for manually locking conflict pairs, repeatedly drawing trimming curves, and manually segmenting entities, transforming the component spatial adaptation work into batch matrix detection and automatic Boolean correction, directly obtaining a set of candidate geometries without mutual intrusion.
[0015] Candidate geometries are sorted according to the coordinates of the installation reference plane and the identifiers of the supporting objects, generating a hierarchical tree with the main curtain wall keel as the root node and the curtain wall panels as leaf nodes. Each node in the hierarchical tree is assigned a parameterized driving variable consisting of component shape and size parameters, component positioning parameters, and component material property parameters, and a mapping index table between variables and hierarchical positions is established. Utilizing the geometric assembly relationship between parent and child nodes, the parameterized driving variables of each node are combined into a global constraint equation system consisting of equality and inequality constraints. After linearization, the Newton-Raphson iterative method is used to solve the equations until the iterative residuals converge. Within the hierarchical tree framework, the global constraints describe the driving effect of changes in keel cross-sectional parameters on connector positioning, the dependence of panel segmentation dimensions on keel spacing, and the limiting dimensional relationships under the influence of material elastic modulus. During the iterative solution process, any change in the parameterized driving variables of any node will be transmitted to the entire hierarchical tree through the system of equations. The updated set of parameterized driving variables makes the final external dimensions and final spatial positioning values of all components uniformly determined. Based on this, the vertex coordinates and face normal vectors of each node are recalculated. The generated 3D design model is connected continuously at the component boundaries without gaps or differences, and can maintain the consistency of the global assembly state under parameter adjustments at any level. Attached Figure Description
[0016] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments recorded in this invention. For those skilled in the art, other drawings can be obtained based on these drawings.
[0017] Figure 1 This is a flowchart of a PLM-based 3D design and modeling method for building curtain walls. Figure 2 This is a flowchart illustrating the generation process of the basic geometry set for building curtain walls; Figure 3 This is a flowchart of the spatial topology conflict detection matrix construction process; Figure 4 It is a statistical diagram of the node types and level depth of the curtain wall component hierarchy tree. Detailed Implementation
[0018] To make the objectives, technical solutions, and advantages of the embodiments of the present invention clearer, the technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0019] See Figure 1 This invention provides a PLM-based 3D design and modeling method for building curtain walls, comprising: acquiring the geometric and material parameters of the target building curtain wall in the PLM system, and mapping the geometric and material parameters to an initial 3D mesh coordinate system to generate a set of basic geometries; constructing a spatial topological conflict detection matrix between the basic geometries based on the boundary representation data of each basic geometry in the set of basic geometries; performing Boolean subtraction operations on each basic geometry according to the spatial topological conflict detection matrix to filter and obtain a set of candidate geometries; sorting the candidate geometries in the set of candidate geometries according to hierarchical relationships to generate a curtain wall component hierarchy tree; assigning parameterized driving variables to each node in the curtain wall component hierarchy tree, wherein the parameterized driving variables are associated with the geometric and material parameters; generating a global constraint equation set of the curtain wall component hierarchy tree based on the parameterized driving variables of all nodes, and iteratively solving the global constraint equation set to obtain a set of parameterized driving variable solutions for each node; updating the geometric shape data of each node in the curtain wall component hierarchy tree based on the set of parameterized driving variables for each node to generate a 3D design model of the target building curtain wall.
[0020] Example 1: In specific implementation, please refer to Figure 2 The geometric and material parameters of the target building curtain wall are extracted from the PLM system. The PLM system stores complete design data for the building curtain wall. Through the application programming interface (API) provided by the PLM system, data query commands are sent to retrieve the corresponding bill of materials (BOM) information and specification attribute fields for the target building curtain wall. Geometric parameters include panel dimensions, panel thickness, keel cross-sectional dimensions, and connector positioning dimensions. Panel dimensions refer to the length and width of the curtain wall panel; panel thickness refers to the thickness of the curtain wall panel; keel cross-sectional dimensions refer to the height and width of the main and horizontal keels; and connector positioning dimensions refer to the center distance between the mounting holes of the connectors on the keels and the offset distance of the connectors relative to the ends of the keels. Material parameters include panel density, panel elastic modulus, and keel yield strength. Panel density is the mass per unit volume of the panel material; panel elastic modulus is the stress-to-strain ratio of the panel material during elastic deformation; and keel yield strength is the stress value when the keel material yields.
[0021] In some implementations, geometric and material parameters are converted into coordinate vectors and physical property scalars in an initial three-dimensional mesh coordinate system, respectively. The initial three-dimensional mesh coordinate system is pre-established based on the installation reference points of the building curtain wall, with the lower left corner of the facade as the origin, the horizontal rightward direction as the positive X-axis, the vertical upward direction as the positive Y-axis, and the direction perpendicular to the facade towards the interior as the positive Z-axis. The length value in the panel's external dimensions is used as the span along the X-axis, and the width value as the span along the Y-axis. Combined with the panel thickness value, the coordinates of the diagonal vertices of the bounding box of the panel entity in the initial three-dimensional mesh coordinate system are determined, thereby generating a coordinate vector representing the panel's geometry. The cross-sectional height and width values in the keel cross-section dimensions are converted into a sequence of contour point coordinates on the YZ cross-section of the keel entity. The connector positioning dimensions are converted into spatial position coordinate vectors of the connector entity's center point in the initial three-dimensional mesh coordinate system. The panel density, panel elastic modulus, and keel yield strength in the material parameters are recorded as floating-point numbers as physical property scalars and are not subject to coordinate transformation.
[0022] In practice, based on coordinate vectors and material property scalars, a basic geometric set consisting of panel entities, keel entities, and connector entities is generated in the initial three-dimensional mesh coordinate system. For the panel entity, a hexahedral entity is created using the bounding box range determined by the panel's coordinate vectors, and the panel density and elastic modulus are assigned to the material property field of this hexahedral entity. For the keel entity, a stretching operation is performed along the keel length direction based on the coordinate sequence of the keel cross-section contour points to generate a three-dimensional keel entity, and the keel yield strength is assigned to the material property field of this three-dimensional keel entity. For the connector entity, a three-dimensional connector entity is constructed based on the coordinate vector of the connector entity's center point, according to preset connector standard shape parameters, which are retrieved from the connector standard parts library in the PLM system. The generated panel entities, keel entities, and connector entities together form the basic geometric set.
[0023] Example 2: In specific implementation, please refer to Figure 3 The boundary representation data of each basic geometry is extracted from the set of basic geometries. The set of basic geometries consists of panel entities, keel entities, and connector entities, and each basic geometry is described using boundary representation. The boundary representation data includes the vertex coordinate sequence, edge direction vectors, and face normal vectors for each basic geometry. The vertex coordinate sequence consists of the 3D coordinate values of all vertices of the basic geometry in the initial 3D mesh coordinate system, with each vertex coordinate represented by a... Stored in triplet format, where This represents the coordinate value of the vertex along the X-axis. This represents the coordinate value of the vertex along the Y-axis. This represents the coordinate value of a vertex along the Z-axis. The edge direction vector is determined by the directed line segment connecting two adjacent vertices. Stored in triplet format This represents the component of the edge direction vector along the X-axis. This represents the component of the edge direction vector along the Y-axis. This represents the component of the edge direction vector along the Z-axis. The normal vector of a facet is determined by the outward normal direction of the plane containing each facet. Stored in triplet format This represents the component of the normal vector of the patch along the X-axis. This represents the component of the normal vector of the patch along the Y-axis. This represents the component of the normal vector of the patch along the Z-axis.
[0024] In some implementations, the maximum and minimum coordinate values of any two basic geometric shapes are determined based on their vertex coordinate sequences. The vertex coordinate sequence of the first basic geometric shape is set as follows: Let the vertex coordinate sequence of the second basic geometry be... Traversal Find the X-axis coordinates of all vertices in the array, and extract the maximum X-axis coordinate value from them. and minimum X-axis coordinate value ; Traversal Find the Y-axis coordinates of all vertices in the array, and extract the maximum Y-axis coordinate value from them. and minimum Y-axis coordinate value ; Traversal Find the Z-axis coordinates of all vertices in the array, and extract the maximum Z-axis coordinate value. and minimum Z-axis coordinate value Similarly, traversal The coordinates of all vertices are obtained. , , , , and Based on the maximum and minimum coordinate values mentioned above, construct the axial bounding box of the first basic geometry. Axial bounding box of the second basic geometry The axial bounding box is a cuboid region defined by two diagonal vertices. The coordinates of the two diagonal vertices are and , The coordinates of the two diagonal vertices are and .
[0025] In practice, the overlap length of the projection intervals of the axial bounding boxes of any two basic geometries along each coordinate axis in three-dimensional space is calculated. For the X-axis direction, the projection interval of the axial bounding box of the first basic geometries along the X-axis direction is... The projection range of the axial bounding box of the second basic geometry in the X-axis direction is: Determine whether two projection intervals have an intersection. or If the two projection intervals do not intersect, the overlap length of the projection intervals along the X-axis is zero; if the two projection intervals do intersect, the overlap length of the projection intervals along the X-axis is determined as follows: take and The smaller value is used as the upper limit of the overlapping interval. ,Pick and The larger value is used as the lower limit of the overlapping interval. The overlap length of the projection intervals along the X-axis is Similarly, calculate the overlap length of the projection intervals along the Y-axis and Z-axis. The product of the overlap lengths along each coordinate axis is taken as the spatial bounding box overlap.
[0026] The overlap of spatial bounding boxes is calculated using the following formula: in, Indicates the overlap of the bounding boxes. This represents the overlap length of the projection intervals of the axial bounding boxes of the first and second basic geometries along the X-axis. This represents the overlap length of the projection intervals of the axial bounding boxes of the first and second basic geometries along the Y-axis. This represents the overlap length of the projection intervals of the axial bounding boxes of the first and second basic geometries along the Z-axis. , , The units are all millimeters. The unit is cubic millimeters.
[0027] In some implementations, the penetration distance along the normal direction between the faces of any two basic geometries is calculated based on the edge direction vectors and face normal vectors of any two basic geometries. All faces are extracted from the first basic geometries, each face having a corresponding face normal vector and vertex coordinates of each vertex on the face. All faces, along with their corresponding face normal vectors and vertex coordinates, are extracted from the second basic geometries. For a face in the first basic geometries... A facet of the second basic geometry , obtain normal vector of the surface and normal vector of the surface Select As a reference normal direction. Calculation to each vertex The directed distance in the plane, and to each vertex The directed distances within the plane are used to determine the maximum absolute value of the penetration depth along the reference normal direction among all directed distances, which is taken as the surface patch. with dough pieces The penetration distance between faces is calculated by iterating through all face pairs in the first and second basic geometries, calculating the penetration distance between each pair, and taking the maximum value of all penetration distances as the face penetration depth. The unit of face penetration depth is millimeters.
[0028] In practical implementation, a spatial topological conflict detection matrix between basic geometries is constructed using spatial bounding box overlap and patch intrusion depth as matrix elements. The set of basic geometries is defined as containing... A basic geometric body, and a spatial topological conflict detection matrix is a... The matrix is a set of elements, where the row indices correspond to the numbers of the first basic geometric shapes, and the column indices correspond to the numbers of the second basic geometric shapes. The matrix contains the first... Line number Column elements For a pair ,in Indicates the number is The basic geometry and numbered The overlap of the bounding boxes between the basic geometric shapes. Indicates the number is The basic geometry and numbered The depth of the facet intrusion between the basic geometry. When At this time, the spatial bounding box overlap and patch intrusion depth are both set to zero. Matrix elements are stored in computer memory, with each tuple recorded as a double-precision floating-point structure.
[0029] Example 3: In practical implementation, the maximum overlap of the bounding boxes and the maximum intrusion depth of patches between each basic geometry and other basic geometries are extracted from the spatial topological conflict detection matrix. The spatial topological conflict detection matrix is a... The matrix, This represents the total number of basic geometric shapes in the set of basic geometric shapes. For the numbered... The basic geometry, traversing the spatial topological conflict detection matrix, the first... All matrix elements in a row, each matrix element For a pair ,in Indicates the number is The basic geometry and numbered The overlap of the bounding boxes between the basic geometric shapes. Indicates the number is The basic geometry and numbered The depth of facet intrusion between basic geometries Take all to and From the first Compare the overlap of all bounding boxes in all pairs of rows. The values are extracted, and the maximum value is used as the index. Maximum overlap of the bounding boxes corresponding to the basic geometry Compare the penetration depth of all patches. The values are extracted, and the maximum value is used as the index. Maximum depth of patch intrusion corresponding to the basic geometry The above extraction operation is performed on each basic geometry in the set of basic geometries to obtain the maximum overlap of the bounding box and the maximum intrusion depth of the facets for each basic geometry.
[0030] In some implementations, it is determined whether the maximum overlap of the spatial enclosure box exceeds a preset overlap threshold and whether the maximum intrusion depth of the panel exceeds a preset intrusion depth threshold. The preset overlap threshold is determined based on the minimum allowable gap between the curtain wall component materials and is set to 1000 cubic millimeters. This value is based on the maximum allowable non-contact gap volume between the curtain wall panel and the keel. When the axial enclosure box overlap volume exceeds 1000 cubic millimeters, it indicates that there is a substantial interference area between the two basic geometries in space. The preset intrusion depth threshold is set to 5 millimeters based on the assembly tolerance grade of the curtain wall components. This value is determined based on the maximum allowable out-of-plane deviation value for curtain wall component installation in the building curtain wall engineering technical specifications. When the penetration distance between the panels exceeds 5 millimeters, it indicates that geometric intrusion exceeding the assembly tolerance range has occurred between the two basic geometries.
[0031] In specific implementation, for the numbered The basic geometry, with the maximum overlap of the bounding box in space. The value of the patch intrusion depth is compared with a preset overlap threshold of 1000 cubic millimeters. Compare with a preset intrusion depth threshold of 5 mm. If cubic millimeters and If both millimeters are true, then the number will be 1. The basic geometry is marked as the geometry to be clipped; if cubic millimeters or If at least one of the conditions in millimeters is met, then the number is... The basic geometry is not marked as the geometry to be clipped. The above judgment condition is expressed by the formula: in, Indicates the number is The cut-off marker value of the basic geometry. Indicates the number is The basic geometry is marked as the geometry to be clipped. Indicates the number is The basic geometry is not marked as the geometry to be clipped. Indicates the number is The maximum overlap of the bounding boxes corresponding to the basic geometry, expressed in cubic millimeters. Indicates the number is The maximum depth of intrusion of the face corresponding to the basic geometry, in millimeters, symbol Represents the logical AND operation.
[0032] In some implementations, a Boolean subtraction operation is performed on the geometry to be clipped, subtracting the intersecting portions of other basic geometries that spatially overlap with the geometry to be clipped. The conflict relationships between the geometry to be clipped and other basic geometries are obtained from the spatial topological conflict detection matrix; for each conflict that satisfies the condition... cubic millimeters and For other basic geometries within a millimeter, the Boolean subtraction function of the 3D solid modeling kernel is invoked. Using the geometry to be subtracted as the subtracted entity and other basic geometries satisfying the above conditions as the subtracting entities, the intersection volume between the subtracted and subtracting entities is calculated, and the intersecting volume is deleted from the subtracted entity. After the Boolean subtraction operation is completed, the geometry of the subtracted entity changes; the area that originally overlapped with the subtracting entity is removed, generating the subtracted geometry. The subtracted geometry retains the remaining geometric shape of the geometry to be subtracted after excluding the spatial interference region.
[0033] In practice, the basic geometries not marked as objects to be clipped and the clipped geometries are merged into a candidate geometry set. Then, all basic geometries in the basic geometry set are traversed, and for objects marked as objects to be clipped... The basic geometry is directly added to the candidate geometry set with its complete geometric shape data; for the marker values to be clipped... The basic geometry is used, and the geometric shape data of the clipped geometry generated by Boolean subtraction is added to the candidate geometry set. Each candidate geometry in the candidate geometry set has a vertex coordinate sequence, edge direction vector, and face normal vector in the initial 3D mesh coordinate system, and there are no spatial topological conflicts between candidate geometries that exceed preset overlap and intrusion depth thresholds. The candidate geometry set is stored in computer memory, and each candidate geometry is assigned a unique geometry identifier for retrieval and retrieval in subsequent processing steps.
[0034] Example 4: In practical implementation, the installation reference plane coordinates and supporting object identifiers of each candidate geometry are obtained from the candidate geometry set. The candidate geometry set consists of panel entities, keel entities, and connector entities obtained after Boolean subtraction filtering. Each candidate geometry inherits corresponding component attribute information from the PLM system during the generation process. The installation reference plane coordinates refer to the spatial position of the candidate geometry on the positioning reference plane in the overall curtain wall assembly system, represented by the point-normal plane equation parameters in the initial three-dimensional mesh coordinate system, where the plane reference point coordinates are... Stored in triplet form, plane normal vector is... Stored in triplets. The support attachment object identifier is a string field extracted from the component assembly relationship table of the PLM system. This string field records the unique identification code of the upper-level support component to which the candidate geometry is attached. For panel entities, the support attachment object identifier is the component code of the horizontal or vertical keel to which the panel entity is attached; for connector entities, the support attachment object identifier is the component code of the keel component to which the connector entity is connected; for curtain wall main keel, the support attachment object identifier is a null value or the building main structure identifier.
[0035] In some implementations, the parent and child components of each candidate geometry in the curtain wall structure are determined based on the supporting attachment object identifier. Each candidate geometry in the candidate geometry set is traversed, and its unique identifier is used as the child identifier. The identifier of the attached component is extracted from the supporting attachment object identifier field of the current candidate geometry. The identifier of the attached component is compared with the unique identifiers of all candidate geometries in the candidate geometry set. If a candidate geometry has a unique identifier that matches the identifier of the attached component, the matching candidate geometry is determined as the parent component of the current candidate geometry. The current candidate geometry is added to the child component list of the parent component. If the supporting attachment object identifier of the current candidate geometry is null or is a building structure identifier, then the current candidate geometry has no parent component and is treated as the root node in the curtain wall component hierarchy tree. After traversing the set of candidate geometries, each candidate geometries is assigned a parent component reference and several child component references, forming a directed graph structure that represents the hierarchical dependencies between components, where directed edges point from parent components to child components.
[0036] In practice, following a top-down order from parent to child components, each candidate geometry is arranged as a node to generate a curtain wall component hierarchy tree. The candidate geometry without a parent component is selected as the root node, which is the main vertical or horizontal load-bearing keel of the curtain wall, installed on the main building structure. The root node is added to the first level of the curtain wall component hierarchy tree. Using a breadth-first traversal algorithm, starting from the root node, each child component node in the root node's child component list is visited sequentially. Visited child component nodes are added to the second level of the curtain wall component hierarchy tree and marked as processed. Following an ascending order of hierarchy number, the child component lists of each node in each level are visited layer by layer. Child component nodes not yet marked as processed are added to the next level of the curtain wall component hierarchy tree until all candidate geometries are marked as processed. In the curtain wall component hierarchy tree, each node contains a node type field, a node unique identifier field, a parent node reference field, and a child node list field. The leaf nodes of the curtain wall component hierarchy tree are curtain wall panels. Curtain wall panel nodes have no child components, and their child node list field is empty. The curtain wall component hierarchy tree is stored in computer memory as a tree data structure. The tree data structure contains a pointer to the root node and a hierarchy depth value, which is equal to the number of nodes traversed from the root node to the farthest leaf node.
[0037] See Figure 4In the figure, the vertical axis represents the number of nodes, and the horizontal axis represents the level depth of the curtain wall component hierarchy tree. The legend distinguishes three types of curtain wall components: keel entities, connector entities, and panel entities. As the level depth increases from 0 to 5, the number of nodes for the three component types changes significantly, reflecting the component distribution characteristics at different levels in the curtain wall component hierarchy tree.
[0038] At depth 0, the number of nodes is extremely small, and only a few keel entities are present, indicating that the main keel of the curtain wall is located at the highest level as the root node, which is consistent with the situation described in Example 4 where the root node is the main load-bearing keel installed on the main structure of the building. At depth 1, the number of keel entity nodes increases significantly, reaching about 25, and no connectors or panels are present, indicating that the first level is mainly composed of secondary keel components.
[0039] At layer depths 2 and 3, the number of connector physical nodes increases significantly, especially at layer depth 2 where it reaches its peak of about 80 nodes, while at layer depth 3 it decreases to about 45 nodes. At this time, the number of keel physical nodes remains in the range of 20 to 30, and panel physical nodes have not yet appeared, indicating that the connector, as an intermediate support component between the keel and the panel, is mainly distributed in the intermediate layer.
[0040] At depths 4 and 5, the number of panel physical nodes increases rapidly, reaching approximately 150 and 210 respectively, becoming the dominant component type at these depths. The number of connector physical nodes decreases to approximately 20 at depth 4 and further to single digits at depth 5. The number of keel physical nodes also decreases to approximately 20 and 10, respectively. This reflects that the panels, as the outermost components of the curtain wall, are concentrated in lower levels and form a hierarchical assembly relationship with the upper-level keel and connector components.
[0041] Example 5: In practical implementation, the component's external dimension parameters and positioning parameters corresponding to each node are extracted from the geometric parameters, and the component's material property parameters corresponding to each node are extracted from the material parameters. Each node in the curtain wall component hierarchy tree represents a candidate geometry. The geometric and material parameters are extracted from the PLM system and stored in the node attribute data structure when generating the basic geometry set. For any node in the curtain wall component hierarchy tree, the component's external dimension parameters include the length and width values in the panel's external dimension, the section height and section width values in the keel's section dimension, and the key external dimension values of the connectors; the component positioning parameters include the center distance of the mounting holes and the offset distance relative to the keel end in the connector's positioning dimensions, as well as the coordinates of the mounting reference plane of the candidate geometry corresponding to the node; the component material property parameters include the panel density, panel elastic modulus, and keel yield strength.
[0042] In some implementations, the component's dimensional parameters, positioning parameters, and material properties are combined into an initial driving variable vector for each node. For a curtain wall component in a hierarchical tree, numbered as... The nodes are arranged in order to form a sub-vector of component dimensions. ,in The total number of dimensional parameters of the component. Indicates the first The first external dimension value of each node, in millimeters; arrange the component positioning parameters sequentially into positioning sub-vectors. ,in The total number of component positioning parameters. Indicates the first The first location value of each node, in millimeters; arrange the component material property parameters in order into material property sub-vectors. ,in This represents the total number of material property parameters for the component. Indicates the first The first material property value of each node, in the corresponding physical units. The initial driving variable vector is obtained by concatenating the dimension sub-vector, the positioning sub-vector, and the material property sub-vector in sequence. Its dimensions are superscript This represents the initial state. This concatenation method ensures that all parameters of the same node are organized into a single numerical vector.
[0043] In practical implementation, each component in the initial driving variable vector of each node is set as a parameterized driving variable, and a mapping index table is established between the parameterized driving variables of each node and the node's hierarchical position in the curtain wall component hierarchy tree. The mapping index table is a two-dimensional table structure. Each row of the mapping index table corresponds to a parameterized driving variable, and each row contains four fields: global variable index number, node unique identifier, the variable's position number in the initial driving variable vector, and the variable's hierarchical depth value in the curtain wall component hierarchy tree. The global variable index number starts from... Start numbering consecutively, each node's Each component receives a unique global variable index. After processing all nodes, the resulting dimension is... Global parameterized driving variable vector ,in The total number of parameterized driving variables for all nodes in the curtain wall component hierarchy tree, and for each component. Corresponding to a specific parameterized driving variable, The value range is the real number field. The mapping index table is stored in computer memory and provides a reverse lookup function from the global variable index number to the node and variable semantics.
[0044] In some implementations, based on the geometric assembly relationship between parent and child nodes in the curtain wall component hierarchy tree, the equality and inequality constraints between the parameterized driving variables of the parent and child nodes are combined into a global constraint equation system. Each directed edge in the curtain wall component hierarchy tree represents the assembly relationship between the parent and child nodes. The assembly relationship determines that the spatial position and external dimensions of the child component must be consistent with the corresponding interface of the parent component. For an assembly relationship, interface size variables and interface position variables are extracted from the parameterized driving variables of the parent node, and mating size variables and mating position variables are extracted from the parameterized driving variables of the child node. Equality constraints are established: the interface size variable equals the mating size variable, and the interface position variable equals the mating position variable; simultaneously, inequality constraints are established: the external dimension variable of the child node is within the allowable space of the parent node. All equality and inequality constraints corresponding to all assembly relationships in the curtain wall component hierarchy tree are combined to form a system containing... A global set of constraint equations, where each constraint equation is expressed as: or In the form of, For a global parameterized driving variable vector, Indicates the first An equality constraint function, Indicates the first Inequality constraint functions.
[0045] In practice, each constraint equation in the global constraint equation system is linearized to obtain a linearized global constraint equation system. The current estimated value of the global parameterized driving variable vector is then selected. superscript Indicates the first The variable values for each iteration. For each equality constraint... ,exist Performing a first-order Taylor expansion at that point, we obtain... For each inequality constraint ,exist Performing a first-order Taylor expansion at that point, we obtain... .in Equality constraint function gradient vector, Inequality constraint function The gradient vector is obtained by taking the partial derivative of the corresponding constraint function with respect to each parameterized driving variable. The partial derivative values are calculated using the finite difference method, with a difference step size of [value missing]. All the linearized equality and inequality constraints together constitute the linearized global constraint equation system.
[0046] In some implementations, the Newton-Raphson iterative method is used to solve the linearized global constraint equations. The equality constraints in the linearized global constraint equations are written in matrix form, and a Jacobian matrix is constructed. The row indices of the Jacobian matrix correspond to the constraint equation numbers, and the column indices correspond to the global parameterized driving variable numbers. The elements of the Jacobian matrix are... Construct the Newton-Raphson iterative update formula: in, Indicates the first The global parameterized driving variable vector after the next iteration Indicates the first The global parameterized driving variable vector after the next iteration Indicates in The Jacobian matrix calculated at point , The transpose of the Jacobian matrix is represented by the symbol […]. This represents the matrix inversion operation. Let represent the residual vector consisting of the function values of all equality constraint functions under the current variable values. The Each component is After each iteration, check if the inequality constraints are satisfied. If not, add the unsatisfied inequality constraints to the residual vector as a penalty term. In the middle, the penalty coefficient is taken as Before the iteration begins, the initial values of the global parameterized driving variable vector are taken as follows: The initial driving variable vector of dimension is concatenated. After each iteration, the iteration residual is calculated, and the iteration residual is defined as the residual vector. The L2 norm. Iteration stops when the iterative residual is less than a preset residual threshold, which is set to... This value is determined based on the relative precision of double-precision floating-point arithmetic in computers, ensuring the engineering usability of the solution results. The global parameterized driving variable vector at the time of stopping iteration... As a solution set of parameterized driving variables.
[0047] In practice, the final external dimension value and final spatial location value of each node are extracted from the solution set of the parameterized driving variables of each node. Based on the mapping index table, the parameterized driving variable components of each node are searched from the global parameterized driving variable solution set. The components contained in the external dimension sub-vector are assembled into the final external dimension value of the node, and the components contained in the location sub-vector are assembled into the final spatial location value of the node. Based on the final external dimension value and final spatial location value, the vertex coordinate sequence and face normal vector of each node are recalculated. For each node, with its final external dimension value and final spatial location value as input, the parameterized entity generation function is called. The parameterized entity generation function derives the relative coordinates of all feature points from the external dimension value according to the standard topology of the component type to which the node belongs. Then, coordinate transformation is performed based on the final spatial location value to obtain the updated vertex coordinate sequence in the initial 3D mesh coordinate system. Based on the updated vertex coordinate sequence, using the vertex order relationship and the new vertex coordinates, the edge direction vector and face normal vector of each face are calculated. The edge direction vector is determined by the coordinate difference between two adjacent vertices on the boundary of the patch, and the patch normal vector is obtained by the cross product of the direction vectors of two non-collinear edges on the patch and normalized.
[0048] In some implementations, the geometric shape data of each node is regenerated based on the recalculated vertex coordinate sequence and patch normal vector of each node. The geometric shape data is organized using boundary representation, with the updated vertex coordinate sequence as the geometric vertex table and the updated patch normal vector and patch boundary loop as the geometric surface table, thus reconstructing the 3D solid boundary model of each node. The geometric shape data of all nodes in the curtain wall component hierarchy tree are combined according to the structure of the curtain wall component hierarchy tree. Along the hierarchical relationship, the geometric shape data of child nodes are assembled and aligned with the geometric shape data of parent nodes through coordinate positioning to form a complete 3D geometric model from the main keel of the curtain wall to the curtain wall panel. The combined 3D geometric model is the 3D design model of the target building curtain wall. The 3D design model of the target building curtain wall contains the precise geometric shape, spatial position, and material property information of all curtain wall components and is stored in a standard 3D model file format.
[0049] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any changes or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application.
Claims
1. A PLM-based 3D design and modeling method for building curtain walls, characterized in that, include: Obtain the geometric and material parameters of the target building curtain wall in the PLM system, and map the geometric and material parameters to the initial three-dimensional mesh coordinate system to generate a set of basic geometries; Based on the boundary representation data of each basic geometry in the set of basic geometries, a spatial topological conflict detection matrix is constructed between each basic geometry. Based on the spatial topological conflict detection matrix, Boolean subtraction operations are performed on each basic geometry to filter and obtain a set of candidate geometries. The candidate geometries in the candidate geometry set are sorted according to their hierarchical relationship to generate a curtain wall component hierarchy tree; Each node in the curtain wall component hierarchy tree is assigned a parameterized driving variable, which is associated with the geometric parameters and the material parameters; Based on the parameterized driving variables of all nodes, a global constraint equation set of the curtain wall component hierarchy tree is generated, and the global constraint equation set is iteratively solved to obtain the solution set of parameterized driving variables for each node. Based on the solution set of parameterized driving variables of each node, the geometric shape data of each node in the curtain wall component hierarchy tree are updated to generate a three-dimensional design model of the target building curtain wall. The construction of a spatial topological conflict detection matrix between basic geometries based on the boundary representation data of each basic geometry in the set of basic geometries includes: Extract the boundary representation data of each basic geometry from the set of basic geometries. The boundary representation data includes the vertex coordinate sequence, edge direction vector and face normal vector of each basic geometry. Calculate the spatial bounding box overlap and the surface intrusion depth between any two basic geometries based on the vertex coordinate sequence, edge direction vector, and patch normal vector of any two basic geometries. Using the spatial bounding box overlap and the patch intrusion depth as matrix elements, a spatial topological conflict detection matrix is constructed between the basic geometries. The step involves performing Boolean subtraction operations on each basic geometric object based on the spatial topological conflict detection matrix to obtain a set of candidate geometric objects, including: Extract the maximum value of the spatial bounding box overlap and the maximum value of the patch intrusion depth between each basic geometry and other basic geometries from the spatial topology conflict detection matrix; Determine whether the maximum overlap of the bounding box is greater than a preset overlap threshold and whether the maximum intrusion depth of the patch is greater than a preset intrusion depth threshold. If so, mark the corresponding basic geometry as a geometry to be clipped. Perform a Boolean subtraction operation on the geometry to be clipped, subtracting the intersecting portions of other basic geometries that spatially overlap with the geometry to be clipped from the geometry to be clipped, to obtain the clipped geometry; The base geometry that is not marked as a geometry to be clipped and the clipped geometry are merged into a candidate geometry set; The process involves generating a global constraint equation set for the curtain wall component hierarchy tree based on the parameterized driving variables of all nodes, and iteratively solving the global constraint equation set to obtain the solution set of parameterized driving variables for each node, including: Based on the geometric assembly relationship between parent and child nodes in the curtain wall component hierarchy tree, the equality and inequality constraints between the parameterized driving variables of the parent node and the parameterized driving variables of the child node are combined into a global constraint equation system. Each constraint equation in the global constraint equation set is linearized to obtain a linearized global constraint equation set. The linearized global constraint equations are solved iteratively using the Newton-Raphson iterative method. After each iteration, the parameterized driving variables of each node are updated until the iteration residual is less than a preset residual threshold. The parameterized driving variables of each node in the current iteration step are then used as the parameterized driving variable solution set.
2. The PLM-based 3D design and modeling method for building curtain walls according to claim 1, characterized in that, The process involves acquiring the geometric and material parameters of the target building curtain wall in the PLM system, mapping these parameters to an initial three-dimensional mesh coordinate system, and generating a basic geometric set, including: The panel outline dimensions, panel thickness, keel cross-sectional dimensions, and connector positioning dimensions of the target building curtain wall are extracted from the PLM system as the geometric parameters, and the panel density, panel elastic modulus, and keel yield strength are extracted as the material parameters. The geometric parameters and material parameters are respectively converted into coordinate vectors and physical property scalars in the initial three-dimensional mesh coordinate system; Based on the coordinate vector and the physical property scalar, a set of basic geometric bodies consisting of panel entities, keel entities, and connector entities is generated in the initial three-dimensional mesh coordinate system.
3. The PLM-based 3D design and modeling method for building curtain walls according to claim 1, characterized in that, The step of sorting the candidate geometries in the candidate geometry set according to their hierarchical relationship to generate a curtain wall component hierarchy tree includes: Obtain the installation reference plane coordinates and support attachment object identifier for each candidate geometry from the candidate geometry set; Based on the support attachment object identifier, determine the parent and child components of each candidate geometry in the curtain wall structure; Following the top-down order from parent to child components, each candidate geometry is arranged as a node to generate a curtain wall component hierarchy tree. The root node of the curtain wall component hierarchy tree is the main curtain wall keel, and the leaf nodes are the curtain wall panels.
4. The PLM-based 3D design and modeling method for building curtain walls according to claim 1, characterized in that, Assigning parameterized driving variables to each node in the curtain wall component hierarchy tree, wherein the parameterized driving variables are associated with the geometric parameters and the material parameters, including: Extract the component's external dimensions and positioning parameters corresponding to each node from the geometric parameters, and extract the component's material properties parameters corresponding to each node from the material parameters; The component's external dimensions, positioning parameters, and material properties are combined to form an initial driving variable vector for each node; Each component in the initial driving variable vector of each node is set as the parameterized driving variable, and a mapping index table is established between the parameterized driving variable of each node and the hierarchical position of the node in the curtain wall component hierarchy tree.
5. The PLM-based 3D design and modeling method for building curtain walls according to claim 1, characterized in that, The solution set of parameterized driving variables based on each node updates the geometric shape data of each node in the curtain wall component hierarchy tree, generating a 3D design model of the target building curtain wall, including: Extract the final external dimensions and final spatial positioning values of each node from the solution set of the parameterized driving variables of each node; Based on the final external dimensions and the final spatial positioning values, recalculate the vertex coordinate sequence and face normal vector of each node; Based on the recalculated vertex coordinate sequence and face normal vector of each node, the geometric shape data of each node is regenerated, and the geometric shape data of all nodes are combined into a three-dimensional design model of the target building curtain wall according to the structure of the curtain wall component hierarchy tree.
6. The PLM-based three-dimensional design and modeling method for building curtain walls according to claim 1, characterized in that, The calculation of the spatial bounding box overlap and patch intrusion depth between any two basic geometries based on their vertex coordinate sequences, edge direction vectors, and patch normal vectors includes: Based on the vertex coordinate sequence of any two basic geometric shapes, determine the maximum and minimum coordinate values of the two basic geometric shapes respectively, and construct the axial bounding boxes of the two basic geometric shapes based on the maximum and minimum coordinate values; Calculate the overlap length of the projection intervals of the axial bounding boxes of any two basic geometries in each coordinate axis direction in three-dimensional space, and use the product of the overlap lengths of the projection intervals in each coordinate axis direction as the overlap degree of the spatial bounding boxes. Based on the edge direction vectors and surface normal vectors of any two basic geometries, calculate the penetration distance between the surfaces of any two basic geometries along the normal direction, and take the maximum value of the penetration distance between all surfaces as the surface intrusion depth.
7. A PLM-based 3D design and modeling system for building curtain walls, comprising a memory, a processor, and a computer program stored in the memory and running on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the PLM-based three-dimensional design and modeling method for building curtain walls as described in any one of claims 1 to 6.
Citation Information
Patent Citations
BIM (Building Information Modeling)-based curtain wall parametrization design method
CN104102765A
Three-dimensional representation method, interference detection method, and Boolean operation method for building member
CN119378048A
