Bridge support parametric modeling method
By using a parametric modeling method for bridge supports, and utilizing software such as Dynamo and Revit to automatically arrange and parametrically generate bridge supports, the problems of low modeling efficiency and poor parameter reusability in existing technologies are solved, thus achieving efficient and accurate bridge support modeling.
Patent Information
- Application Number
- CN202511579579.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-31
- Publication Date
- 2026-02-03
AI Technical Summary
Existing bridge support modeling methods are inefficient, have poor parameter reusability, are prone to errors, and are difficult to work with BIM, lacking a parametric modeling methodology system.
The parametric modeling method for bridge supports is adopted, which automatically arranges and generates parametric data by creating spatial three-dimensional curves, project model files, horizontal curves and component placement steps, using software such as Dynamo and Revit.
It improves modeling efficiency, reduces manual time, enhances model accuracy and flexibility, supports BIM collaborative work, and is applicable to various bridge structures.
Smart Images

Figure CN121456961A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of bridge construction technology, and more specifically, to a parametric modeling method for bridge supports. Background Technology
[0002] With the continuous development of bridge engineering construction, bridge structures are becoming increasingly complex. As an important temporary structure during the construction phase, the design and modeling of bridge supports directly affect construction safety and structural accuracy. In actual engineering projects, bridge support models typically include multiple components such as pile foundations, abutments, tie beams, columns, longitudinal beams, and transverse beams. The dimensions, arrangement, and connection methods of these components need to be adjusted and optimized based on factors such as bridge structural dimensions, load distribution, and construction techniques.
[0003] Currently, bridge support modeling primarily relies on 3D modeling software (such as AutoCAD and Civil 3D) for manual operation. This traditional method has the following drawbacks: 1. Cumbersome and inefficient modeling process: The creation, arrangement, and modification of each component require manual intervention. When the bridge's geometric parameters change, all related components need to be readjusted, which is time-consuming and labor-intensive. 2. Poor parameter reusability and insufficient flexibility: The support structure model lacks parametric definitions, making it difficult to quickly apply to similar bridge types, increasing the engineering design cycle. 3. Low standardization and prone to errors: Traditional methods heavily rely on the operational experience of designers, and the modeling process carries the risk of errors, affecting design quality and construction accuracy. 4. Difficulty in collaborating with BIM: In actual BIM design processes, traditional modeling methods struggle to quickly respond to design changes and facilitate multi-party collaboration, limiting the efficiency of bridge information management.
[0004] With the development of BIM technology, the construction industry has gradually begun to adopt parametric modeling and automated design to improve modeling efficiency and design quality. However, for the modeling of bridge support structures, an efficient and reusable parametric modeling methodology has not yet been established. Summary of the Invention
[0005] In view of this, the present invention proposes a parametric modeling method for bridge supports, aiming to solve the problem that the existing technology has not formed a parametric modeling method system for bridge support structures.
[0006] This invention proposes a parametric modeling method for bridge supports, which includes the following steps: a spatial three-dimensional curve creation step, creating a spatial three-dimensional curve for the design route; a project model file creation step, creating a support project model file; a horizontal curve creation step, creating a horizontal curve based on the spatial three-dimensional curve and obtaining the cross-sectional baseline; a calculation step, calculating the coordinates for component placement based on the cross-sectional baseline; and a placement step, placing the component based on the coordinates and setting the design parameters of the component.
[0007] Furthermore, in the above-mentioned parametric modeling method for bridge supports, the steps for creating spatial three-dimensional curves further include: creating the planar alignment of the design route in drafting software; creating the ground longitudinal profile and design longitudinal slope; obtaining spatial three-dimensional curves from the design route and longitudinal profile; and exporting the spatial three-dimensional curves as three-dimensional curve files.
[0008] Furthermore, in the above-mentioned parametric modeling method for bridge supports, the project model file creation step further includes: creating a support project model file, importing a 3D curve file, and using the 3D curve file to construct a bridge support model; establishing the required component families, and loading the component families into the support project model file.
[0009] Furthermore, in the above-mentioned parametric modeling method for bridge supports, the horizontal curve creation step further includes: an identification sub-step, in Revit, using Dynamo to identify spatial three-dimensional curves; a creation sub-step, creating horizontal curves based on the identified spatial three-dimensional curves; and an acquisition sub-step, acquiring cross-sectional baselines based on the horizontal curves and determining the normal direction of the cross-sectional baselines.
[0010] Furthermore, in the above-mentioned parametric modeling method for bridge supports, in the identification sub-step, the geometric coordinates and tangent direction vectors of the three-dimensional curve in space are extracted through nodes; in the creation sub-step, the three-dimensional path is extracted using nodes, and then the spatial coordinates are projected onto the horizontal plane through a function to generate the corresponding two-dimensional path data, and then the sequence of projection points is processed and reconstructed into a combination of polylines or circles / transition curves through custom code blocks or Python nodes; in the acquisition sub-step, the normal vector of any point on the horizontal curve is calculated through a custom code design calculation process, and the cross-sectional baseline is obtained by extending the normal vector along a preset length; the support placement points are located along the horizontal curve according to the design spacing, the normal vector of the tangent at each support placement point is calculated, and then the normal vector of the tangent is rotated 90 degrees to obtain the direction vector of the cross-sectional baseline.
[0011] Furthermore, in the above-mentioned parametric modeling method for bridge supports, the calculation steps further include: an angle calculation sub-step, which calculates the angle between the due north direction of the component family instance and the cross-section baseline; a center coordinate point calculation sub-step, which calculates the center coordinate point of each component based on the normal direction of the cross-section baseline; and a Y-coordinate calculation sub-step, which replaces the Y-coordinate of the center coordinate point of each component with the design elevation.
[0012] Furthermore, in the above-mentioned parametric modeling method for bridge supports, the angle calculation sub-step further includes: obtaining the vector of the north direction of the component instance and the normal vector of the cross-section baseline through a Python script; in the Python script, projecting the vector of the north direction and the normal vector of the cross-section baseline onto the horizontal plane to obtain a two-dimensional vector; normalizing the two-dimensional vector; calculating the angle between the north direction of the component family instance and the cross-section baseline through vector dot product; and / or, the center coordinate point calculation sub-step further includes: determining the parameter position of each component on the horizontal curve according to the preset arrangement spacing on the horizontal curve, and obtaining the corresponding three-dimensional coordinates using the parameter position point; offsetting each component from the center of the horizontal curve along the normal direction of the cross-section baseline according to the normal vector of the cross-section baseline to obtain the center coordinate point of each component; and / or, in the Y coordinate calculation sub-step, using the `Element.Location` node to obtain the initial three-dimensional coordinate point of the component, and then using the `Point.ByCoordinates` node to keep the original X and Z coordinates unchanged, and replacing the Y coordinate with the design elevation.
[0013] Furthermore, in the aforementioned parametric modeling method for bridge supports, the design elevation is either input from an external source or dynamically obtained through longitudinal profile data of a three-dimensional spatial curve.
[0014] Furthermore, in the above-mentioned parametric modeling method for bridge supports, the placement step further includes: a component placement sub-step, which places the component according to the center coordinate point of each component and the normal direction of the cross-sectional baseline; and a setting sub-step, which sets the design parameters of the component; wherein the design parameters include: color and size.
[0015] Furthermore, in the above-mentioned parametric modeling method for bridge supports, in the component placement sub-step, the required component family type is selected by nodes, the position of each component is determined by the center coordinate point of each component placement, and the component is rotated according to the angle between the due north direction of the component family instance and the cross-section baseline, in conjunction with nodes or a custom Python script.
[0016] In this invention, firstly, a spatial three-dimensional curve of the design route is created; then, a support project model file is created; next, a horizontal curve is created based on the spatial three-dimensional curve, and a cross-sectional baseline is obtained; then, the coordinates for component placement are calculated based on the cross-sectional baseline; finally, the components are placed based on the coordinates, and the design parameters of the components are set. In this way, the method realizes parametric modeling of bridge supports, and the method is automatic and parametrically generated, which greatly reduces the time for manual modeling, improves modeling efficiency, and solves the problem that the existing technology has not formed a parametric modeling method system for bridge support structures. Attached Figure Description
[0017] Various other advantages and benefits will become apparent to those skilled in the art upon reading the following detailed description of preferred embodiments. The accompanying drawings are for illustrative purposes only and are not intended to limit the invention. Furthermore, the same reference numerals denote the same parts throughout the drawings. In the drawings:
[0018] Figure 1 A flowchart of a parametric modeling method for bridge supports is provided for embodiments of the present invention;
[0019] Figure 2 A plan view of a bridge support is provided in the parametric modeling method for bridge supports in this embodiment of the invention.
[0020] Figure 3 The longitudinal section view of the bridge support is provided in the parametric modeling method for bridge support in the embodiments of the present invention.
[0021] Figure 4 A cross-sectional view of a bridge support is provided in the parametric modeling method for bridge supports in this embodiment of the invention.
[0022] Figure 5 This invention provides another cross-sectional view of a bridge support in a parametric modeling method for bridge supports, as described in an embodiment of the invention.
[0023] Figure 6 The present invention provides a visual node diagram in the parametric modeling method for bridge supports.
[0024] Figure 7 A bridge support model diagram is provided in the parametric modeling method for bridge supports in this embodiment of the invention.
[0025] Figure 8 In the parametric modeling method for bridge supports provided in this embodiment of the invention, a custom node diagram for creating a horizontal curve is included.
[0026] Figure 9 In the parametric modeling method for bridge supports provided in this embodiment of the invention, a custom node diagram is constructed at both ends of a horizontal curve.
[0027] Figure 10 The script diagram in the custom node package is provided in the parametric modeling method for bridge supports in the embodiments of the present invention.
[0028] Figure 11 The script program diagram for the custom node "arbitrary point vector of curve" in the parametric modeling method for bridge supports provided in this embodiment of the invention;
[0029] Figure 12 The following is a script program diagram for the custom node "angle between the normal vector and the Y-axis" in the parametric modeling method for bridge supports provided in this embodiment of the invention;
[0030] Figure 13 The following is a script code diagram for a custom node that "obtains an element at any position from a known list" in a parametric modeling method for bridge supports provided in this embodiment of the invention.
[0031] Figure 14 The following is a script diagram for the custom node "list reordering" in the parametric modeling method for bridge supports provided in this embodiment of the invention. Detailed Implementation
[0032] Exemplary embodiments of the present disclosure will now be described in more detail with reference to the accompanying drawings. While exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure may be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided to enable a more thorough understanding of the present disclosure and to fully convey the scope of the disclosure to those skilled in the art. It should be noted that, unless otherwise specified, the embodiments and features described herein can be combined with each other. The present invention will now be described in detail with reference to the accompanying drawings and embodiments.
[0033] See Figure 1 , Figure 1 A flowchart of a parametric modeling method for bridge supports is provided for embodiments of the present invention. As shown in the figure, the parametric modeling method for bridge supports includes the following steps:
[0034] Step S1: Create a spatial three-dimensional curve for the design route.
[0035] Specifically, see Figures 2 to 6 In the drafting software, a spatial three-dimensional curve of the design route is created based on the design drawings of the bridge support. The three-dimensional path can be obtained from the spatial three-dimensional curve. The drafting software can be Civil 3D or other drafting software; this embodiment does not impose any restrictions on it.
[0036] Step S1, which involves creating a three-dimensional curve in space, further includes:
[0037] Sub-step S11: Create the planar alignment of the design route in the drafting software.
[0038] Specifically, in Civil 3D, the "Alignment" function creates the planar lines of a route, which can be done using existing polylines or by drawing them manually, and design standards can be set.
[0039] Sub-step S12: Create ground longitudinal profile and design longitudinal slope.
[0040] Specifically, in Civil 3D, elevation control is achieved by creating ground profiles and designing longitudinal slopes through the "Profile" function.
[0041] Sub-step S13: Obtain the three-dimensional spatial curve from the design route and longitudinal profile.
[0042] Specifically, the "Feature Line" function is used to extract a three-dimensional path with elevation data from the design route and longitudinal profile; this three-dimensional path is the spatial three-dimensional curve. Alternatively, a spatial three-dimensional curve can be obtained by constructing a "Corridor model" and extracting its feature lines.
[0043] Sub-step S14: Export the spatial three-dimensional curve as a three-dimensional curve file.
[0044] Specifically, the spatial 3D curve is converted into a 3D polyline or exported as a LandXML, DWG, or other format to form a 3D curve file, which can be used for subsequent BIM design, construction simulation, or GIS analysis to achieve spatial modeling and shared application of the route. In this embodiment, the 3D curve file is a spatial 3D curve .dwg file.
[0045] Step S2: Create the scaffold project model file.
[0046] Specifically, step S2, which involves creating the project model file, further includes:
[0047] Sub-step S21: Create a support project model file, import a 3D curve file, and use the 3D curve file to build a bridge support model.
[0048] Specifically, in Revit, create a support project model file, import a spatial 3D curve .dwg file, and then use the spatial 3D curve .dwg file to build the bridge support model. See [link to documentation]. Figure 7 .
[0049] First, spatial 3D curves integrate the planar and elevation information of the design route, accurately guiding the placement of supports along the bridge axis and ensuring that the supports are height-matched and direction-consistent with the main bridge structure, avoiding design deviations. Second, spatial 3D curves can serve as lofting trajectories, enabling the rapid generation of continuous and regular support structures through Revit lofting modeling (such as adaptive components and path components), significantly improving modeling efficiency. Third, for bridges spanning complex terrains such as valleys and slopes, spatial 3D curves can automatically adapt to elevation fluctuations, enabling intelligent adjustments to support height and spacing, reducing manual modifications. Furthermore, spatial 3D curve modeling allows for parameter association with the bridge superstructure, foundation, and other components, facilitating unified adjustment and change control. Therefore, spatial 3D curves not only improve modeling accuracy and efficiency but also provide a more intuitive and collaborative 3D representation for bridge support design, making them an indispensable and crucial data foundation for bridge BIM modeling.
[0050] Sub-step S22: Create the required component family and load the component family into the support project model file.
[0051] Specifically, the creation of component families includes: creating basic geometry, setting adjustable parameters, binding reference elements, and testing family responses. Parameter control enables flexible adjustment of support height, dimensions, etc., to adapt to different bridge structures and path requirements. It facilitates batch deployment, subsequent modifications, and linkage with other components, making it a core means to achieve efficient, standardized, and collaborative BIM bridge support modeling.
[0052] Step S3 for creating a horizontal curve involves creating a horizontal curve based on a three-dimensional spatial curve and obtaining the cross-sectional baseline.
[0053] Specifically, step S3 of creating a horizontal curve further includes:
[0054] In sub-step S31, the spatial three-dimensional curve is identified using Dynamo in Revit.
[0055] Specifically, in Revit, Dynamo is used to identify spatial 3D curves (such as 3DPolylines or Model Lines) imported from Civil 3D. The geometric coordinates and tangent direction vectors of these curves are extracted through nodes. More specifically, nodes such as Element.Geometry, Curve.PointAtParameter, and Curve.TangentAtParameter are used to extract the geometric coordinates (XYZ) and tangent direction vectors of the path. Combined with AdaptiveComponent.ByPoints or FamilyInstance.ByPointAndDirection nodes, precise placement and directional control of components along the 3D path are achieved. This step enables parametric placement and automatic modeling based on spatial curves, and is widely used in modeling linear components such as bridge supports, pipelines, and guardrails, improving the accuracy, efficiency, and collaborative capabilities of BIM modeling.
[0056] Create sub-step S32 to create a flat curve based on the identified three-dimensional spatial curve.
[0057] Specifically, by using custom Dynamo nodes, the identified 3D spatial curves (such as 3D Polylines imported from Civil3D) can be converted into 2D alignment curves for design. More specifically, nodes are used to extract 3D paths, and then spatial coordinates are projected onto a horizontal plane using functions to generate corresponding 2D path data. Finally, custom code blocks or Python nodes are used to process the sequence of projected points and reconstruct it into a combination of polylines or circles / gradient curves.
[0058] In practice, the `Curve.Geometry` node is used to extract the 3D path, and then functions such as `Point.XY` and `Vector.XY` are used to project the spatial coordinates onto a horizontal plane, generating the corresponding 2D path data. Subsequently, a custom code block or Python node is used to process the sequence of projected points and reconstruct it into a combination of polylines or circles / gradient curves, which is then imported into Revit or Civil 3D as a planar lineform for design. This enables parameter mapping from the actual 3D path to the designed 2D route, improving design accuracy and curve fitting efficiency.
[0059] Obtain sub-step S33: Obtain the cross-sectional baseline based on the horizontal curve, and determine the normal direction of the cross-sectional baseline.
[0060] Specifically, the arrangement direction of the support components (i.e., the cross-sectional baseline) is obtained based on the horizontal curve. The core of this method lies in using the normal direction of each key point on the horizontal curve as the lateral layout reference for the support. More specifically, the calculation process is designed using custom Python code to calculate the normal vector of any point on the horizontal curve. Once the normal vector has a length, it becomes the normal line, which serves as the cross-sectional baseline. A straight line is created starting from the cross-sectional baseline on the horizontal curve using the `Line.ByStartPointDirectionLength` node, extending a specified length in the direction of the normal vector to obtain the cross-sectional baseline. Support placement points are located along the horizontal curve at the designed spacing. The normal vector of the tangent at each support placement point is calculated, and then the normal vector of the tangent is rotated 90 degrees to obtain the direction vector of the cross-sectional baseline. This direction vector is the normal direction of the cross-sectional baseline, serving as the placement direction for the support beams or bases. This ensures that the support is perpendicular to the route direction, meeting structural stress and construction requirements, and achieving reasonable arrangement and precise positioning of the support model along the route. Cross-sectional baselines are used for the subsequent layout of bridges and other components, and are a key geometric reference in highway design.
[0061] Calculation step S4: Calculate the coordinates of the component placement based on the cross-sectional baseline.
[0062] Specifically, calculation step S4 further includes:
[0063] The angle calculation sub-step S41 calculates the angle between the due north direction of the component family instance and the cross-sectional baseline.
[0064] Specifically, in Dynamo, a custom Python script node is used to calculate the angle between the north direction of a component family instance and the cross-sectional baseline, making the process more flexible and customizable.
[0065] The angle calculation sub-step S41 further includes:
[0066] Sub-step S411: Obtain the vector of the north direction of the component instance and the normal vector of the cross section baseline through a Python script. In the Python script, project the vector of the north direction and the normal vector of the cross section baseline onto the horizontal plane (XY plane), i.e. ignore the Z component, to obtain a two-dimensional vector.
[0067] Specifically, the vector in the due north direction is usually read from the family instance set or family parameters, and the normal vector of the cross section baseline is the tangent of the three-dimensional path corresponding to the three-dimensional curve in space rotated by 90 degrees.
[0068] Sub-step S412: Normalize the two-dimensional vector to ensure that its length is 1.
[0069] Sub-step S413 calculates the angle between the due north direction of the component family instance and the cross-sectional baseline by vector dot product.
[0070] Specifically, using the mathematical formula θ = arccos((A·B) / (|A||B|)), the Python script uses `math.acos` to calculate the arccosine, obtains the radian value, and converts it to an angle. The Python script outputs this angle for subsequent Dynamo nodes to call, dynamically adjusting the rotation angle of family instances to ensure that the component orientation is consistent with the design cross-sectional baseline. Using custom Python nodes enhances the flexibility and scalability of the calculations, facilitates the integration of complex logic and the handling of various special cases, and improves the accuracy and automation level of BIM model parametric control.
[0071] In the center coordinate point calculation sub-step S42, the center coordinate point of each component is calculated based on the normal direction of the cross-section baseline.
[0072] Specifically, based on the cross-sectional baseline, the center coordinates of each component are determined, mainly by locating it along the design route and the normal to the corresponding route tangent.
[0073] The sub-step S42 for calculating the center coordinates further includes:
[0074] Sub-step S421: Determine the parameter position of each component on the horizontal curve according to the preset arrangement spacing on the horizontal curve, and obtain the corresponding three-dimensional coordinates using the parameter position points.
[0075] Sub-step S422: Based on the normal vector of the cross-section baseline, offset each component from the center of the horizontal curve along the normal direction of the cross-section baseline to obtain the center coordinate point of each component.
[0076] Specifically, the offset is made according to the design requirements to meet the design requirements for the lateral position.
[0077] The center point of a component is generally based on the insertion point of the family instance or the center of the geometric bounding box. The precise coordinates can be extracted using `Element.Location` in Dynamo or a custom Python script.
[0078] The calculation of the center coordinates not only ensures the continuous distribution of components along the design route but also guarantees their accurate positioning on the cross-sectional baseline, achieving the standardized arrangement of linear components such as supports. This normal-based spatial positioning method ensures that the placement of components in the model conforms to the design intent and facilitates subsequent parametric adjustments and construction layout, forming a crucial foundation for efficient and accurate BIM modeling.
[0079] Y-coordinate calculation sub-step S43 replaces the Y-coordinate of the center coordinate point of each component with the design elevation.
[0080] Specifically, in Dynamo, the Y-axis coordinate of the center point of a component placement is replaced with the design elevation. This is typically achieved by extracting the X and Z coordinates of the component's positioning point and then using the design elevation as the new Y-value. More specifically, the initial 3D coordinates of the component are obtained using the `Element.Location` node, and then the original X and Z coordinates are kept unchanged while the Y coordinate is replaced with the design elevation parameter using the `Point.ByCoordinates` node. This design elevation can be obtained from external input or dynamically from the longitudinal profile data of a 3D spatial curve. This ensures that the component's vertical position meets the design elevation requirements, achieving precise control over the component's spatial positioning and facilitating subsequent modeling, layout, and construction applications.
[0081] Placement step S5: Place the component according to the coordinates and set the design parameters of the component.
[0082] Specifically, the placement step S5 further includes:
[0083] Component placement sub-step S51: Place the components according to the center coordinates of each component and the normal direction of the cross-sectional baseline.
[0084] Specifically, placing components in Dynamo is typically based on pre-calculated spatial coordinates and orientation information. First, the desired component family type is selected using nodes such as `FamilyType.ByName`. Then, the position of each component is determined using its center coordinates. The components are rotated based on the angle between the component family instance's north direction and the cross-section baseline, using nodes such as `FamilyInstance.ByPointAndRotation` or a custom Python script, to achieve accurate positioning and orientation adjustment. This allows for the automatic batch placement of components, ensuring that each instance is arranged reasonably along the design route and the normal direction of the cross-section baseline, meeting design specifications and structural requirements. This not only improves the efficiency of BIM model construction but also enhances parametric and intelligent management capabilities, facilitating subsequent modifications and coordination.
[0085] Set sub-step S52 to set the design parameters of the component; the design parameters include: color and size.
[0086] Specifically, setting design parameters such as color and size of components in Revit is typically achieved through parametric management of component families. First, add "type parameters" or "instance parameters" to key dimensions (such as height, width, and thickness) in the family editor for flexible adjustment of component specifications. Second, control the surface color of the support structure through material parameters, allowing for diverse appearances by associating different materials. "Shared parameters" also enable unified management across projects. After parameters are modified, the family model automatically updates, ensuring design accuracy and consistency.
[0087] In practice, designers can adjust parameters through the property panel according to their needs in a project, and the results are reflected in the model in real time. This supports multiple design and optimization schemes. The parameterized settings greatly improve the customization capabilities and design efficiency of the support components, and facilitate subsequent construction drawing generation and BIM collaboration.
[0088] Preferably, the angle calculation sub-step further includes: obtaining the orientation vector and the normal vector of the cross-section baseline of the component instance through a Python script; in the Python script, projecting the orientation vector and the normal vector of the cross-section baseline onto the horizontal plane to obtain a two-dimensional vector; normalizing the two-dimensional vector; calculating the angle between the north direction of the component family instance and the cross-section baseline through vector dot product; and / or, the center coordinate point calculation sub-step further includes: determining the parameter position of each component on the horizontal curve according to the preset arrangement spacing on the horizontal curve, and obtaining the corresponding three-dimensional coordinates using the parameter position point; offsetting each component from the center of the horizontal curve along the normal direction of the cross-section baseline according to the normal vector of the cross-section baseline to obtain the center coordinate point of each component; and / or, in the Y coordinate calculation sub-step, using the `Element.Location` node to obtain the initial three-dimensional coordinate point of the component, and then using the `Point.ByCoordinates` node to keep the X and Z coordinates of the origin unchanged, and replacing the Y coordinate with the design elevation.
[0089] As can be seen from this embodiment, firstly, a spatial three-dimensional curve of the design route is created, then a support project model file is created, then a horizontal curve is created based on the spatial three-dimensional curve, and the cross-sectional baseline is obtained. Then, the coordinates for component placement are calculated based on the cross-sectional baseline, and the components are placed based on the coordinates, and the design parameters of the components are set. In this way, the method realizes parametric modeling of bridge supports. Moreover, the method is automatic and parametrically generated, which greatly reduces the time for manual modeling, improves modeling efficiency, and solves the problem that the existing technology has not formed a parametric modeling method system for bridge support structures.
[0090] Let's take square pile foundation as an example to introduce the modeling method:
[0091] 1. Based on the bridge's geometric design parameters, create a spatial 3D curve (using Civil 3D). This spatial 3D curve includes, but is not limited to: the bridge's centerline plane alignment (dwg format); the start and end station numbers of the support deployment area; and the station numbers and elevations of slope change points. Create a route based on these parameters, including the route centerline and longitudinal profile. View and export the spatial 3D curve as a .dwg file.
[0092] 2: Create a support project model file based on Revit and import the spatial 3D curve .dwg file.
[0093] 3: Create the required component families and load them into the Revit support project model file.
[0094] 4: Use the Select Model Elements node to select and identify the imported spatial 3D curve.
[0095] 5: Creating horizontal curves from three-dimensional curves:
[0096] (1) Custom node "Space Curve Create Horizontal Curve", see Figure 8 .
[0097] (2) Custom node "Trim Both Ends of Horizontal Curve", enter the starting point station number of the support arrangement, see [link / reference] Figure 9 .
[0098] 6: Obtain the cross-sectional baseline based on the horizontal curve in step 5:
[0099] ① Calculate the mileage and station numbers of the foundation and tie beam, and use the Code Block and List Create nodes to generate a list of the mileage and station numbers of the centerline of the abutment as list01.
[0100] ② Using Python Script, create a custom node package "LIST[A]±a=LIST[B]", which calculates the pile foundation axis mileage number list02 by subtracting a value from list01. The script in the custom node package is as follows: Figure 10 .
[0101] ③ Reference the Curve.PointAtSegmentLength node, input the horizontal curve from step 5 and list02, and obtain the coordinate points on the horizontal curve corresponding to the mileage station in list02 to get list03.
[0102] ④ Find the normal vector on the horizontal curve originating from the coordinate point in list03, which is list04. Use the custom node "Vector of Arbitrary Point on Curve" to obtain the normal vector. The script for the custom node "Vector of Arbitrary Point on Curve" is as follows: Figure 11 .
[0103] ⑤ Reference the Line.ByStartPointDirectionLength node, input the baseline length array, normal vector and list03, and obtain the normal of the horizontal curve with any length starting from the coordinate point in list03.
[0104] ⑥ Use Curve.EndPoint to get the endpoints of the two normals, and input the endpoints into the Line.ByBestFitThroughPoints node to get the cross-sectional baseline as list05.
[0105] 7: Calculate the angle (list06) between the due north direction of the component family instance and the cross-section baseline in step 6. Input list04 into the custom node "Angle between normal vector and Y-axis". Subtract the result from the previous step from 90° to output list06. Use the angle in list06 to rotate the components on each cross-section baseline along the Z-axis to the design angle. The script for the custom node "Angle between normal vector and Y-axis" is as follows... Figure 12 .
[0106] 8: In the Revit project model file, open the Material Browser and add materials for all support components. In this example, we set it to a color material and name it the corresponding color name.
[0107] 9. Lay out the square pile foundation. Use the custom node "Get element at any position from a known list" to categorize the data in list05 and list06 according to the elevation. The script code for the custom node "Get element at any position from a known list" is as follows: Figure 13 .
[0108] 10: Find the plane coordinates of the square pile foundation. Use Curve.PointAtSegmentLength, input the categorized list05 and the distance from the center point of the square pile foundation to the starting point of the cross-section baseline.
[0109] 11: Set the elevation of the square pile foundation. Referencing the Geometry.Translate node, input the various foundation elevations.
[0110] 12: Restore the spatial 3D coordinates of various square pile foundations to their original order before categorization, using a custom node called "Reorder List". The script for the custom node "Reorder List" is as follows: Figure 14 .
[0111] 13: Obtain the rotation angle of the square pile foundation. Use the custom node "Get element at any position from known list" to obtain the angle from list06.
[0112] 14: Use FamilyType.ByName to get the characters "rectangular prism (stub)".
[0113] 15: Place the square pile foundation component, reference the "FamilyInstance.ByPoint" node, and enter the results of 12 and 14.
[0114] 16: Rotating square pile foundation component. Use the "FamilyInstance.SetRotation" node and enter the results from 13 and 15.
[0115] 17: Assign material to the square pile foundation component, set the element parameters, enter "["material"]" in the Code Block node, enter "orange" in the Material.ByName node, and enter the results of the above two nodes in the Element.SetParameterByName node to complete the setting of material parameters. At the same time, parameters such as foundation length can also be set using the same method.
[0116] The modeling method for rectangular beams, square foundations, spiral welded pipes, and double-section I-beams is the same as above. Just modify the array list of distances from the center point of each component to the starting point of the cross-section baseline in step 10, as well as their respective elevations, according to the different components.
[0117] Modeling methods for I25 I-beams and portal frames:
[0118] 1. In the design, obtain the plane coordinates of the base points spaced 0.5 meters apart on the line. Use the code block node to input: 2..45..0.5, where 2 to 45 are all numbers with an interval of 0.5. Reference the Curve.PointAtSegmentLength node, input the horizontal curve from step 5 above, and the list of numbers with an interval of 0.5.
[0119] 2: Obtain the normal vectors of all points on the baseline from 2 to 45 with an interval of 0.5. Reference the custom node "Normal Vector of Arbitrary Point on Curve" and input the horizontal curve from step 5 and the list of all points from 2 to 45 with an interval of 0.5.
[0120] 3: Find the normal line originating from the base point in step 1. Reference the Line.ByStartPointDirectionLength node, input the results of steps 1 and 2, and then input the distance from the endpoint of the I25 I-beam to the horizontal curve.
[0121] 4: Find the angle between the normal vector in step 2 and the true north direction. Use the custom node "Angle between normal vector and Y-axis" to input the normal vector from step 2, and use "0 - angle" to find the corresponding negative angle, resulting in list07.
[0122] 5: Find the endpoint coordinates of the normal phase in step 3. Reference the Curve.EndPoint node and input the result from step 3.
[0123] 6: Place the I25 I-beams. Assign elevations to the I-beam placement points using the Geometry.Translate node, inputting the result from step 5 and the I-beam elevations.
[0124] 7: Get the FamilyType.ByName of the string "I25 H-beam".
[0125] 8: Place the I25 I-beam, reference the FamilyInstance.ByPoint node, and input the results from 6 and 7.
[0126] 9: Rotate the I-beam to the designed position. Reference the FamilyInstance.SetRotation node, and enter the result from step 8 and list07.
[0127] 10: Set the parameters for the I-beam. Use the Element.SetParameterByName node to set the color to "orange".
[0128] The modeling method for portal frames is the same as above. The baseline of the cross section where the center point of the portal frame is located is different from that of the I25 I-beam. You can modify this baseline and elevation.
[0129] This embodiment has the following significant advantages and positive effects:
[0130] Significantly improved modeling efficiency: Compared with the traditional manual modeling method, this embodiment uses Dynamo scripts to realize the automatic layout and parametric generation of support components, which greatly reduces the manual modeling time and significantly improves modeling efficiency, especially suitable for large-scale and diverse bridge projects.
[0131] Parametric-driven and flexible modification: This embodiment associates key design parameters (such as pier spacing, support height, component size, etc.) with the model, supports one-click model updates, realizes rapid model adjustment and iteration, and avoids repetitive modeling work caused by design changes.
[0132] Enhanced accuracy and standardization: By pre-setting component logic and modeling rules in Dynamo, omissions and mismatches caused by manual operation are effectively reduced, ensuring the geometric accuracy and design consistency of the bridge support model and meeting the design specifications.
[0133] Strong information integration capability: This method can integrate multi-source information such as project geographical location and elevation information, and generate a BIM model with engineering attributes in a unified manner through parameter control, providing a reliable data foundation for subsequent construction simulation, collision detection and material statistics.
[0134] Visualization and Collaborative Optimization: Leveraging the visualization capabilities of the BIM platform, the scaffolding model generated by this method is more intuitive, which helps in the early stages of scheme comparison and collaborative optimization, thereby improving the overall project management level.
[0135] High scalability: This embodiment is highly versatile and applicable to modeling tasks for different types of bridge structure supports. It is highly reproducible and easy to promote and apply in various bridge projects, thus having high engineering application value and economic benefits.
[0136] It should be noted that in the description of this invention, the terms "upper", "lower", "left", "right", "inner", "outer", etc., which indicate the direction or positional relationship, are based on the direction or positional relationship shown in the drawings. This is only for the convenience of description and is not intended to indicate or imply that the device or element must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, it should not be construed as a limitation of this invention.
[0137] Furthermore, it should be noted that, in the description of this invention, unless otherwise explicitly specified and limited, the terms "installation," "connection," and "joining" should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral connection; they can refer to a direct connection or an indirect connection through an intermediate medium; and they can refer to the internal connection of two components. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.
[0138] Obviously, those skilled in the art can make various modifications and variations to this invention without departing from its spirit and scope. Therefore, if these modifications and variations fall within the scope of the claims of this invention and their equivalents, this invention also intends to include these modifications and variations.
Claims
1. A parametric modeling method for bridge supports, characterized in that, Includes the following steps: Steps for creating a 3D spatial curve: Creating a 3D spatial curve for a design route; Steps to create a project model file: Create a scaffold project model file; The steps for creating a horizontal curve are as follows: create a horizontal curve based on the three-dimensional spatial curve, and obtain the cross-sectional baseline. The calculation steps involve calculating the coordinates of the component placement based on the cross-sectional baseline. The placement step involves placing the component according to the coordinates and setting the design parameters of the component.
2. The parametric modeling method for bridge supports according to claim 1, characterized in that, The steps for creating the three-dimensional curve in space further include: Create the planar alignment of the design route in the drafting software; Create the ground longitudinal profile and design the longitudinal slope; Obtain spatial three-dimensional curves from the design route and longitudinal profile; Export the spatial three-dimensional curve as a three-dimensional curve file.
3. The parametric modeling method for bridge supports according to claim 2, characterized in that, The project model file creation steps further include: Create a support project model file, import the 3D curve file, and use the 3D curve file to construct a bridge support model; Create the required component family and load the component family into the support project model file.
4. The parametric modeling method for bridge supports according to claim 3, characterized in that, The flat curve creation step further includes: The identification sub-step involves using Dynamo in Revit to identify 3D spatial curves. Create a sub-step to create a flat curve based on the identified 3D spatial curve; The sub-step involves obtaining the cross-sectional baseline based on the horizontal curve and determining the normal direction of the cross-sectional baseline.
5. The parametric modeling method for bridge supports according to claim 4, characterized in that, In the identification sub-step, the geometric coordinates and tangent direction vector of the three-dimensional curve in space are extracted through the nodes; In the creation sub-step, the three-dimensional path is extracted using nodes, and then the spatial coordinates are projected onto the horizontal plane using a function to generate the corresponding two-dimensional path data. Then, the projection point sequence is processed and reconstructed into a combination of polylines or circles / transition curves using custom code blocks or Python nodes. In the acquisition sub-step, the normal vector of any point on the horizontal curve is calculated by designing a calculation process using custom code. The normal vector is extended by a preset length to obtain the cross-sectional baseline. The support placement points are located along the horizontal curve at the designed spacing. The normal vector of the tangent at each support placement point is calculated. Then, the normal vector of the tangent is rotated by 90 degrees to obtain the direction vector of the cross-sectional baseline.
6. The parametric modeling method for bridge supports according to claim 4, characterized in that, The calculation steps further include: The angle calculation sub-step calculates the angle between the due north direction of the component family instance and the cross-sectional baseline; The center coordinate point calculation sub-step calculates the center coordinate point of each component based on the normal direction of the cross-sectional baseline. The Y-coordinate calculation sub-step replaces the Y-coordinate of the center coordinate point of each component with the design elevation.
7. The parametric modeling method for bridge supports according to claim 6, characterized in that, The angle calculation sub-step further includes: The vector of the north direction and the normal vector of the cross section baseline of the component instance are obtained by using a Python script. In the Python script, the vector of the north direction and the normal vector of the cross section baseline are projected onto the horizontal plane to obtain a two-dimensional vector. The two-dimensional vector is normalized. The angle between the north direction of the component family instance and the cross-sectional baseline is calculated by vector dot product; And / or, The sub-step for calculating the center coordinate point further includes: Based on the preset arrangement spacing on the horizontal curve, determine the parameter position of each component on the horizontal curve, and obtain the corresponding three-dimensional coordinates using the parameter position points; Based on the normal vector of the cross-section baseline, each component is offset from the center of the horizontal curve along the normal direction of the cross-section baseline to obtain the center coordinate point of each component. And / or, In the Y-coordinate calculation sub-step, the initial three-dimensional coordinate points of the component are obtained using the `Element.Location` node, and then the original X and Z coordinates are kept unchanged by using the `Point.ByCoordinates` node, while the Y coordinate is replaced with the design elevation.
8. The parametric modeling method for bridge supports according to claim 7, characterized in that, The design elevation is either input from an external source or dynamically obtained through the longitudinal profile data of the three-dimensional spatial curve.
9. The parametric modeling method for bridge supports according to claim 6, characterized in that, The placement step further includes: The component placement sub-step involves placing the components according to the center coordinates of each component and the normal direction of the cross-sectional baseline. The sub-step involves setting the design parameters of the component; these design parameters include color and size.
10. The parametric modeling method for bridge supports according to claim 9, characterized in that, In the component placement sub-step Select the required component family type by node, determine the position of each component by using the center coordinate point of each component, and rotate the component according to the angle between the due north direction of the component family instance and the cross-sectional baseline, using nodes or a custom Python script.
Citation Information
Cited By
Bridge and tunnel engineering three-dimensional model automatic modeling method and system
CN121962477A
