Parameterized longitudinal section route modeling method based on Dynamo

Through the parameterized longitudinal section route modeling method based on Dynamo, the problems of low efficiency and insufficient accuracy when importing longitudinal section routes into three-dimensional modeling in building information modeling are solved, and efficient and accurate modeling and good reuse of results are achieved.

CN119622860AActive Publication Date: 2025-03-14GEZHOUBA GROUP FOUND ENG +2
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202411485403.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-23
Publication Date
2025-03-14
Estimated Expiration
2044-10-23

AI Technical Summary

Technical Problem

In the process of building information modeling, the vertical section route is inefficient when introducing three-dimensional modeling, and it is difficult to reuse. The existing software directly uses multi-section linear fitting to the gentle curves in the vertical section route, resulting in too small accuracy.

Method used

The parameterized vertical section route modeling method based on Dynamo is adopted. By collecting the parameters related to the vertical section route, an Excel table is established, the table data is read using the Dynamo node, the parameters are traversed, the vertical curves and straight line segments are drawn, and the output is as a model that Revit can import.

Benefits of technology

It improves modeling efficiency, achieves good reuse of results and high-precision modeling, avoids the increase in labor costs, is suitable for non-professional modeling personnel, and can quickly model and handle different longitudinal section routes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119622860A_ABST
    Figure CN119622860A_ABST
Patent Text Reader

Abstract

The invention discloses a Dynamo-based parameterized longitudinal section route modeling method. The method comprises the following steps: collecting necessary parameters according to a longitudinal section route related design file; establishing an Excel table for the collected parameters, and reading the table by using a node of the Dynamo; traversing all parameters; vertical curves are drawn according to the parameters, and all the vertical curves are added to a curve list; traversing all vertical curves; drawing a corresponding straight line segment according to the related vertical curve, and adding the straight line segment to a curve list; further processing the starting point and the ending point of the longitudinal section route; and outputting the drawn vertical curve route. According to the method, the problems of low efficiency and difficulty in reuse when the vertical section route is imported into three-dimensional modeling in the building informatization modeling process are solved, and the method has the characteristics that rapid modeling can be realized, the increase of labor cost is avoided, and the working efficiency is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention belongs to the technical field of building information modeling, and in particular relates to a parameterized longitudinal section route modeling method based on Dynamo. Background Art

[0002] With the in-depth application of building information modeling (BIM) technology in the field of construction, parametric modeling has gradually become a new research direction. In the longitudinal route modeling of tunnels, bridges or roads, CAD or Civil3D and other software are often used, but this requires manual drawing of all the curves of the longitudinal route. At the same time, when the plane route is imported into a more professional 3D modeling software (such as Revit) for redrawing, there will be problems of low efficiency and difficulty in reusing the results. The use of parametric modeling can solve the above problems very well. The modeler only needs to collect the relevant parameters of the longitudinal route to generate the route model at one time. It is not only extremely efficient, but also simple to operate. Even non-professional modelers can do it easily. At the same time, this method can be used to reuse the results very well. When facing different longitudinal routes, only the parameters need to be changed to quickly model. On the other hand, most software directly uses multi-segment straight line fitting for the transition curve in the longitudinal route, which will inevitably cause the problem of too low precision, while the use of automatic parameter calculation can greatly improve the precision. At present, Revit is the absolute mainstream software for building information modeling. Generally, Revit software comes with Dynamo's operating environment and launcher. Therefore, it is necessary to design a parametric longitudinal route modeling method based on Dynamo to solve the above problems. Summary of the invention

[0003] The technical problem to be solved by the present invention is to provide a parametric longitudinal section route modeling method based on Dynamo, which aims to solve the problems of low efficiency and difficulty in reuse when importing longitudinal section routes into three-dimensional modeling during building information modeling. It has the characteristics of realizing rapid modeling, avoiding the increase of labor costs and improving work efficiency.

[0004] In order to solve the above technical problems, the technical solution adopted by the present invention is: A parametric longitudinal section route modeling method based on Dynamo includes the following steps: S1, collect necessary parameters according to the relevant design documents of the longitudinal section route; S2, create an Excel table for the collected parameters and use the nodes provided by Dynamo to read the table; S3, traverse all parameters; S4, draw vertical curves according to the parameters, and add all vertical curves to the curve list; S5, traverse all vertical curves; S6. Draw a corresponding straight line segment according to the relevant vertical curve, and add the straight line segment to the curve list; S7, further processing the starting point and the end point of the longitudinal section route; S8. Output the drawn vertical curve route.

[0005] Preferably, in step S1, necessary parameters are collected according to the relevant design documents of the longitudinal section route, including: slope, slope length, radius of each vertical curve, tangent length, elevation of the slope change point, elevation of the starting point of the longitudinal section route, elevation of the end point and related landing point marks.

[0006] Preferably, in step S2, Excel software is used to create a table for the collected parameter information to form a data matrix with a certain structure.

[0007] Preferably, in step S2, the data path is read using the "File Path" node provided by Dynamo, and then the path is input into the "File From Path" node to read the data to form a parameter matrix.

[0008] Preferably, in step S3, the parameter matrix is ​​traversed, and a basic unit of the traversal is the vertical curve radius, the tangent length, the elevation of the slope change point, and the slope and slope length before and after the vertical curve.

[0009] Preferably, in step S4, drawing a vertical curve according to the parameters includes: S41, calculate the cumulative slope length corresponding to each vertical curve, and set the parameter matrix to be as follows: ; in , is the slope, is the slope length, , are the vertical curve radius, tangent length and slope change point elevation respectively. is the number of vertical curves, The corresponding cumulative slope length calculation method is expressed as: ; in Representative The cumulative slope length corresponding to the vertical curves; S42, calculate the vertical curve concave and convex marks, the calculation method is expressed as: ; in Representative The vertical curves are marked with concave and convex marks. There are 6 marked states respectively; S43, generating a negative sampling point set and a positive sampling point set, the calculation method is expressed as: ; in Representative The negative sampling point set of the vertical curve, Representative The positive sampling point set of the vertical curve, is the sampling step size, For Round down; S44, calculate the elevation of the sampling point; S45, calculating the x coordinate of the sampling point, the calculation method can be expressed as: ; in Represent the x-coordinates of the positive sampling point and the negative sampling point respectively, is the value corresponding to the inversion of the sampling point set, is the slope; S46, use Dynamo's "Point.ByCoordinates" node to generate a collection of entity points based on the sample point elevation and x coordinates ,in is the number of sampling points on the vertical curve; S47, according to , use Dynamo's "NurbsCurve.ByPoints" node to fit all entity points and draw vertical curves ,Will Add to Curve List , after traversing all parameters, the curve list , is the number of vertical curves.

[0010] Preferably, the specific method for calculating the elevation of the sampling point includes: S441, calculate the external vector distance of the sampling point, the calculation method is expressed as: ; in represents the external vector distance of the corresponding sampling point, is the sampling point value, is the slope, is the vertical curve radius; S442, calculate the vertical elevation distance corresponding to the external elevation distance, and the calculation method is expressed as: ; in represents the external vector distance of the corresponding sampling point, is the sampling point value, is the slope, is the length of the tangent to the vertical curve; S443, calculate the sampling point elevation, the calculation method is expressed as: When the bump mark hour, ; in are the elevations corresponding to the negative sampling points and the positive sampling points respectively; When the bump mark hour, ; in The expression is ; When the bump mark hour, ; in The expression is ; When the bump mark hour, ; When the bump mark hour, ; in The expression is ; When the bump mark hour, ; in The expression is .

[0011] Preferably, in step S6, drawing corresponding straight line segments according to relevant vertical curves includes: S61, get the starting point of the straight line segment. Here, the straight line segment refers to the straight line segment between the two vertical curves. Use Dynamo's "Curve.PointAtParameter" node to get the starting point of the straight line segment for the vertical curve before the straight line segment. ; S62, get the end point of the straight line segment, and use Dynamo's "Curve.PointAtParameter" node to get the end point of the straight line segment for a vertical curve after the straight line segment. ; S63, yes and Draw a straight line segment using Dynamo's "Line.ByStartPointEndPoint" node , the straight line segment Add to Curve List After traversing all vertical curves, the curve list .

[0012] Preferably, in step S7, the starting point and the end point of the vertical curve route are further processed. First, the starting point is processed. Here, the starting point is marked according to the landing point. For discussion: When the drop mark The steps include: Processing the starting point: S71a, obtain vertical curve Starting point , and then obtain The elevation value and the x-coordinate ; S71b, calculate the x coordinate of the starting point of the longitudinal section route, the calculation method can be expressed as: ; in is the starting point elevation; S71c, according to and the route start elevation Generate Entity Points ; S71d, according to and Generate Line , and Add to Curve List ; When the drop mark The steps include: Processing the starting point: S71e, calculate vertical curve concave and convex marks ; S71f, get vertical curve midpoint , and then obtain The elevation value ; S71g, vertical curve Sampling, sampling collection ,in Midpoint ; S71h, calculate the search set , the calculation method can be expressed as: ; in is the starting point elevation of the route; S71i, Traverse, if ,use and Create Entity Point ;if or ,use and Create Entity Point ,in For the The x and z coordinates of the points; S71j, through Draw a perpendicular line , Will Divide into two parts, and delete the part that is not connected to the set; After processing the route starting point, process the route end point and mark the end point. For discussion: When the drop mark The steps include: Processing of the endpoint: S72a, obtain vertical curve The end point , and then obtain The elevation value and the x-coordinate ; S72b, calculate the x coordinate of the end point of the longitudinal section route, the calculation method can be expressed as: ; in is the end point elevation; S72c, according to and the elevation of the end of the route Generate Entity Points ; S72d, according to and Generate Line , and Add to Curve List ; When the drop mark The steps include: Processing of the endpoint: S72e, calculate vertical curve concave and convex marks ; S72f, get vertical curve midpoint , and then obtain The elevation value ; S72g, vertical curve Sampling, sampling collection ,in Midpoint ; S72h, calculate the search set , the calculation method can be expressed as: ; in is the elevation of the route end point; S72j, yes Traverse, if ,use and Create Entity Point ;if or ,use and Create Entity Point ,in For the The x and z coordinates of the points; S71j, through Draw a perpendicular line , Will Split into two parts, removing the part that is not connected to the set.

[0013] Preferably, in step S8, the drawn vertical curve route is outputted, including: S81, use Dynamo's "PolyCurve.ByJoinedCurves" node to connect all the curves or lines in the curve list into a whole ; S82, use Dynamo's "ImportInstance.ByGeometry" node to Import it into Revit software, and then Save as ".rvt", ".rfa" or ".fbx" format model.

[0014] The beneficial effects of the parametric longitudinal section route modeling method based on Dynamo provided by the present invention are as follows: Compared with the prior art, the present invention uses parameterization ideas to model the longitudinal section route, which greatly improves the efficiency of modeling on the one hand, and realizes good reuse of results and high-precision modeling on the other hand. Even non-professional modelers only need to collect relevant parameters to achieve rapid modeling, avoiding the increase of labor costs and improving work efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0015] The present invention will be further described below in conjunction with the accompanying drawings and embodiments: Figure 1 A flow chart of a parameterized longitudinal section route modeling method based on Dynamo according to the present invention; Figure 2 It is a simplified diagram of two vertical curves and a straight line segment in the middle of an embodiment of the present invention; Figure 3 All Dynamo nodes used in the embodiments of the present invention; Figure 4 It is a schematic diagram of the t1 state of the vertical curve concave-convex mark of the present invention; Figure 5 It is a schematic diagram of the t2 state of the vertical curve concave-convex mark of the present invention; Figure 6 It is a schematic diagram of the t3 state of the vertical curve concave-convex mark of the present invention; Figure 7 This is a schematic diagram of the a1 state of the vertical curved concave-convex mark of the present invention; Figure 8 This is a schematic diagram of the a2 state of the vertical curved concave-convex mark of the present invention; Fig. 9 It is a schematic diagram of the a3 state of the vertical curved concave-convex mark of the present invention; Fig.10 A schematic diagram of drawing a straight line segment for the present invention; Fig.11 This is a schematic diagram of the starting point and landing point marking according to an embodiment of the present invention; Fig.12 This is a schematic diagram of the end point mark of an embodiment of the present invention; Fig.13 A flowchart of the start and end point processing of an embodiment of the present invention; Fig.14 It is a schematic diagram of vertical curve segmentation according to an embodiment of the present invention. DETAILED DESCRIPTION

[0016] Embodiment 1: like Figure 1 As shown, a parametric longitudinal section route modeling method based on Dynamo includes the following steps: S1, collect necessary parameters according to the relevant design documents of the longitudinal section route; S2, create an Excel table for the collected parameters and use the nodes provided by Dynamo to read the table; S3, traverse all parameters; S4, draw vertical curves according to the parameters, and add all vertical curves to the curve list; S5, traverse all vertical curves; S6. Draw a corresponding straight line segment according to the relevant vertical curve, and add the straight line segment to the curve list; S7, further processing the starting point and the end point of the longitudinal section route; S8. Output the drawn vertical curve route.

[0017] Preferably, in step S1, necessary parameters are collected according to the relevant design documents of the longitudinal section route, including: slope, slope length, radius of each vertical curve, tangent length, elevation of the slope change point, elevation of the starting point of the longitudinal section route, elevation of the end point and related landing point marks.

[0018] Preferably, in step S2, Excel software is used to create a table for the collected parameter information to form a data matrix with a certain structure.

[0019] Preferably, in step S2, the data path is read using the "File Path" node provided by Dynamo, and then the path is input into the "File From Path" node to read the data to form a parameter matrix.

[0020] Preferably, in step S3, the parameter matrix is ​​traversed, and a basic unit of the traversal is the vertical curve radius, the tangent length, the elevation of the slope change point, and the slope and slope length before and after the vertical curve.

[0021] Preferably, in step S4, drawing a vertical curve according to the parameters includes: S41, calculate the cumulative slope length corresponding to each vertical curve, and set the parameter matrix to be as follows: ; in , is the slope, is the slope length, , are the vertical curve radius, tangent length and slope change point elevation respectively. is the number of vertical curves, The corresponding cumulative slope length calculation method is expressed as: ; in Representative The cumulative slope length corresponding to the vertical curves; S42, calculate the vertical curve concave and convex marks, the calculation method is expressed as: ; in Representative The vertical curves are marked with concave and convex marks. There are 6 marked states respectively; S43, generating a negative sampling point set and a positive sampling point set, the calculation method is expressed as: ; in Representative The negative sampling point set of the vertical curve, Representative The positive sampling point set of the vertical curve, is the sampling step size, For Round down; S44, calculate the elevation of the sampling point; S45, calculating the x coordinate of the sampling point, the calculation method can be expressed as: ; in Represent the x-coordinates of the positive sampling point and the negative sampling point respectively, is the value corresponding to the inversion of the sampling point set, is the slope; S46, use Dynamo's "Point.ByCoordinates" node to generate a collection of entity points based on the sample point elevation and x coordinates ,in is the number of sampling points on the vertical curve; S47, according to , use Dynamo's "NurbsCurve.ByPoints" node to fit all entity points and draw vertical curves ,Will Add to Curve List , after traversing all parameters, the curve list , is the number of vertical curves.

[0022] Preferably, the specific method for calculating the elevation of the sampling point includes: S441, calculate the external vector distance of the sampling point, the calculation method is expressed as: ; in represents the external vector distance of the corresponding sampling point, is the sampling point value, is the slope, is the vertical curve radius; S442, calculate the vertical elevation distance corresponding to the external elevation distance, and the calculation method is expressed as: ; in represents the external vector distance of the corresponding sampling point, is the sampling point value, is the slope, is the length of the tangent to the vertical curve; S443, calculate the sampling point elevation, the calculation method is expressed as: When the bump mark hour, ; in are the elevations corresponding to the negative sampling points and the positive sampling points respectively; When the bump mark hour, ; in The expression is ; When the bump mark hour, ; in The expression is ; When the bump mark hour, ; When the bump mark hour, ; in The expression is ; When the bump mark hour, ; in The expression is .

[0023] Preferably, in step S6, drawing corresponding straight line segments according to relevant vertical curves includes: S61, get the starting point of the straight line segment. Here, the straight line segment refers to the straight line segment between the two vertical curves. Use Dynamo's "Curve.PointAtParameter" node to get the starting point of the straight line segment for the vertical curve before the straight line segment. ; S62, get the end point of the straight line segment, and use Dynamo's "Curve.PointAtParameter" node to get the end point of the straight line segment for a vertical curve after the straight line segment. ; S63, yes and Draw a straight line segment using Dynamo's "Line.ByStartPointEndPoint" node , the straight line segment Add to Curve List After traversing all vertical curves, the curve list .

[0024] Preferably, in step S7, the starting point and the end point of the vertical curve route are further processed. First, the starting point is processed. Here, the starting point is marked according to the landing point. For discussion: When the drop mark The steps include: Processing the starting point: S71a, obtain vertical curve Starting point , and then obtain The elevation value and the x-coordinate ; S71b, calculate the x coordinate of the starting point of the longitudinal section route, the calculation method can be expressed as: ; in is the starting point elevation; S71c, according to and the route start elevation Generate Entity Points ; S71d, according to and Generate Line , and Add to Curve List ; When the drop mark The steps include: Processing the starting point: S71e, calculate vertical curve concave and convex marks ; S71f, get vertical curve midpoint , and then obtain The elevation value ; S71g, vertical curve Sampling, sampling collection ,in Midpoint ; S71h, calculate the search set , the calculation method can be expressed as: ; in is the starting point elevation of the route; S71i, Traverse, if ,use and Create Entity Point ;if or ,use and Create Entity Point ,in For the The x and z coordinates of the points; S71j, through Draw a perpendicular line , Will Divide into two parts, and delete the part that is not connected to the set; After processing the route starting point, process the route end point and mark the end point. For discussion: When the drop mark The steps include: Processing of the endpoint: S72a, obtain vertical curve The end point , and then obtain The elevation value and the x-coordinate ; S72b, calculate the x coordinate of the end point of the longitudinal section route, the calculation method can be expressed as: ; in is the end point elevation; S72c, according to and the elevation of the end of the route Generate Entity Points ; S72d, according to and Generate Line , and Add to Curve List ; When the drop mark The steps include: Processing of the endpoint: S72e, calculate vertical curve concave and convex marks ; S72f, get vertical curve midpoint , and then obtain The elevation value ; S72g, vertical curve Sampling, sampling collection ,in Midpoint ; S72h, calculate the search set , the calculation method can be expressed as: ; in is the elevation of the route end point; S72j, yes Traverse, if ,use and Create Entity Point ;if or ,use and Create Entity Point ,in For the The x and z coordinates of the points; S71j, through Draw a perpendicular line , Will Split into two parts, removing the part that is not connected to the set.

[0025] Preferably, in step S8, the drawn vertical curve route is outputted, including: S81, use Dynamo's "PolyCurve.ByJoinedCurves" node to connect all the curves or lines in the curve list into a whole ; S82, use Dynamo's "ImportInstance.ByGeometry" node to Import it into Revit software, and then Save as ".rvt", ".rfa" or ".fbx" format model.

[0026] Embodiment 2: like Figure 2 As shown, the present invention takes the longitudinal section of a certain intercity underground railway tunnel as an example. Figure 2 This is a simplified diagram of two vertical curves and the straight line segment in the middle. The straight line segments of the two bundles of curves in the figure are abbreviated.

[0027] In step S1, it is necessary to collect the necessary parameters of the longitudinal section route, including: slope length, slope, radius of each vertical curve, tangent length, elevation of the slope change point, and the elevation of the starting point, end point and related landing point marks of the longitudinal section route. This part will be collected in steps S7 and Fig.11 and Fig.12 Shown in.

[0028] As shown in Table 1, in step S2, an Excel table needs to be constructed for the collected parameters. Table 1 contains all the parameters of this embodiment. Taking "Slope 1" as an example, "0.002" is the slope. When the slope is increasing, the slope is positive, otherwise it is negative. Taking "Vertical Curve 1" as an example, "8000" is the vertical curve radius, "28" is the tangent length, and "18.668" is the elevation of the slope change point. The last line is the starting point and end point parameters of the vertical curve route, and "0 18.324 0 51.199" represent the starting point landing point mark, the starting point elevation, the end point landing point mark, and the end point elevation, respectively. The starting point is used for explanation. When the starting point falls outside the vertical curve, the landing point mark is 0, and when it falls inside the vertical curve, the landing point mark is 1;

[0029] Table 1: Constructing an Excel table for the collected parameters; like Figure 3 As shown, in step S2, use Dynamo's built-in "File Path" node to read the data path, and then input the path into the "File From Path" node to read the data to form a parameter matrix. Figure 3 These are all the Dynamo nodes used in this embodiment.

[0030] Step S3, traverse the parameter matrix, and a basic unit of the traversal is the vertical curve radius, the tangent length, the elevation of the slope change point, and the slope and slope length before and after the vertical curve. In this embodiment, a unit of the traversal is "slope 1 vertical curve 1 slope 2", "slope 2 vertical curve 2 slope 3"... and so on.

[0031] In step S4, drawing a vertical curve according to the parameters includes: S41, calculate the cumulative slope length corresponding to each vertical curve, and set the parameter matrix to be as follows: ; in , is the slope, is the slope length, , are the vertical curve radius, tangent length and slope change point elevation respectively. is the number of vertical curves, The corresponding cumulative slope length calculation method is expressed as: ; in Representative The cumulative slope length corresponding to the vertical curves; According to the above, the parameter matrix of this embodiment is: , , , .

[0032] S42, calculate the vertical curve concave and convex marks, the calculation method is expressed as: ; in Representative The vertical curves are marked with concave and convex marks. There are 6 marked states, such as Figure 4~Figure 9 As shown; Taking the "vertical curve 1" of this embodiment as an example, , ,but .

[0033] S43, generating a negative sampling point set and a positive sampling point set, the calculation method is expressed as: ; in Representative The negative sampling point set of the vertical curve, Representative The positive sampling point set of the vertical curve, is the sampling step size, For Round down. In this embodiment, , taking the "vertical curve 1" of this embodiment as an example, , its negative sampling and positive sampling are: ; S44, calculate the sampling point elevation, including: S441, calculate the external vector distance of the sampling point, the calculation method is expressed as: ; in represents the external vector distance of the corresponding sampling point, is the sampling point value, is the slope length, is the vertical curve radius. Taking the first point of the forward sampling of “vertical curve 1” in this embodiment as an example, , , ,but .

[0034] S442. Calculate the vertical elevation distance corresponding to the external elevation distance. The calculation method is expressed as: ; in represents the external vector distance of the corresponding sampling point, is the sampling point value, is the slope, is the length of the tangent of the vertical curve. Taking the first point of the forward sampling of "vertical curve 1" in this embodiment as an example, , , ,but .

[0035] S443. Calculate the elevation of the sampling point. The calculation method is expressed as: When the bump mark hour, ; in are the elevations corresponding to the negative sampling points and the positive sampling points respectively; When the bump mark hour, ; in The expression is ; When the bump mark hour, ;in The expression is ; When the bump mark hour, ; When the bump mark hour, ;in The expression is ; When the bump mark hour, ;in The expression is ; Taking the first point of the forward sampling of "vertical curve 1" in this embodiment as an example, ,but The elevation of the first point in the set is .

[0036] S45, calculating the x coordinate of the sampling point, the calculation method can be expressed as: ; in Represent the x-coordinates of the positive sampling point and the negative sampling point respectively, is the value corresponding to the inversion of the sampling point set, is the slope. Taking the first point of the forward sampling of “vertical curve 1” in this embodiment as an example, the sampling point set is reversed to , the value of the corresponding first point is 0, that is , , then the x coordinate of the first point of forward sampling is .

[0037] S46, use Dynamo's "Point.ByCoordinates" node to generate a collection of entity points based on the sample point elevation and x coordinates ,in is the number of sampling points on the vertical curve, and the parameter of this node is ,in is the x-coordinate, For elevation.

[0038] S47, according to , use Dynamo's "NurbsCurve.ByPoints" node to fit all entity points and draw vertical curves ,Will Add to Curve List , after traversing all parameters, the curve list , is the number of vertical curves. Step S5: Carry out traversal.

[0039] like Fig.10 As shown, in step S6, drawing corresponding straight line segments according to relevant vertical curves includes: S61, get the starting point of the straight line segment. Here, the straight line segment refers to the straight line segment between the two vertical curves. Use Dynamo's "Curve.PointAtParameter" node to get the starting point of the straight line segment for the vertical curve before the straight line segment. , the parameters of this node are .

[0040] S62, get the end point of the straight line segment, and use Dynamo's "Curve.PointAtParameter" node to get the end point of the straight line segment for a vertical curve after the straight line segment. , the parameters of this node are .

[0041] S63, yes and Draw a straight line segment using Dynamo's "Line.ByStartPointEndPoint" node , the parameters of this node are , the straight line segment Add to Curve List After traversing all vertical curves, the curve list ; like Figure 11~Figure 14In step S7, the starting point and the end point of the vertical curve route are further processed. First, the starting point is processed. Here, the starting point is marked according to the landing point. Discuss when the drop mark The steps include: S710, processing the starting point: S71a, obtain vertical curve Starting point , and then obtain The elevation value and the x-coordinate ; S71b, calculate the x coordinate of the starting point of the longitudinal section route, the calculation method can be expressed as: ; in is the starting point elevation; S71c, according to and the route start elevation Generate Entity Points ; S71d, according to and Generate Line , and Add to Curve List ; When the drop mark The steps include: S710, processing the starting point: S71a, calculate the vertical curve concave and convex marks ; S71b, get vertical curve midpoint , and then obtain The elevation value ; S71c, vertical curve Sampling, sampling collection ,in Midpoint ; S71d, calculate the search set , the calculation method can be expressed as: ; in is the starting point elevation of the route; S71e, yes Traverse, if ,use and Create Entity Point ;if or ,use and Create Entity Point ,in For the The x-coordinate and z-coordinate (elevation) of each point; S71f, through Draw a perpendicular line , Will Divide into two parts, and delete the part that is not connected to the set; In this embodiment, according to the parameter matrix, the starting point is marked as , the elevation is 18.575, and the concave and convex marks can be calculated as , vertical curve midpoint The elevation value ,right Sampling is performed, the sampling step is set to 0.1, and the retrieval set can be calculated , we can find out by traversing the search collection , , create an entity point using (717,0,18.166) ,Pass Draw a perpendicular line , Will Divide into two parts, delete the part that is not connected to the set, that is, the left part.

[0042] After processing the route starting point, the route end point is processed. Here, the end point is marked according to the landing point. Discuss when the drop mark The steps include: S720, processing the endpoint: S72a, obtain vertical curve The end point , and then obtain The elevation value and the x-coordinate ; S72b, calculate the x coordinate of the end point of the longitudinal section route, the calculation method can be expressed as: ; in is the end point elevation; S72c, according to and the elevation of the end of the route Generate Entity Points ; S72d, according to and Generate Line , and Add to Curve List ; When the drop mark The steps include: S720, processing the endpoint: S72a, calculate the vertical curve concave and convex marks ; S72b, obtain vertical curve midpoint , and then obtain The elevation value ; S72c, vertical curve Sampling, sampling collection ,in Midpoint ; S72d, calculate the search set , the calculation method can be expressed as: ; in is the elevation of the route end point; S72e, yes Traverse, if ,use and Create Entity Point ;if or ,use and Create Entity Point ,in For the The x-coordinate and z-coordinate (elevation) of each point; S71f, through Draw a perpendicular line , Will Split into two parts, removing the part that is not connected to the set.

[0043] In this embodiment, according to the parameter matrix, the starting point is marked as , the elevation is 51.199, get The end point , , , but ,according to Generate Entity Points , according to the generated , and add it to the curve list. At this point, all vertical curves and straight line segments in this embodiment are drawn. The curve list ,in for The reserved part on the right; Finally, step S8, Use Dynamo's "PolyCurve.ByJoinedCurves" node to connect all the curves (straight lines) in the curve list into a whole , and then use Dynamo's "ImportInstance.ByGeometry" node to Import it into Revit software, and then convert it according to actual needs Save as ".rvt", ".rfa" or ".fbx" format model.

Claims

1. A parametric longitudinal section route modeling method based on Dynamo, characterized in that: The following steps are involved: S1, collect necessary parameters according to the relevant design documents of the longitudinal section route; S2, create an Excel table for the collected parameters and use the nodes provided by Dynamo to read the table; S3, traverse all parameters; S4, draw vertical curves according to the parameters, and add all vertical curves to the curve list; S5, traverse all vertical curves; S6. Draw a corresponding straight line segment according to the relevant vertical curve, and add the straight line segment to the curve list; S7, further processing the starting point and the end point of the longitudinal section route; S8. Output the drawn vertical curve route.

2. The parametric longitudinal section route modeling method based on Dynamo according to claim 1, characterized in that: In step S1, necessary parameters are collected according to the relevant design documents of the longitudinal section route, including: slope, slope length, radius of each vertical curve, tangent length, elevation of the slope change point, elevation of the starting point of the longitudinal section route, elevation of the end point and related landing point marks.

3. The parametric longitudinal section route modeling method based on Dynamo according to claim 2, characterized in that: In step S2, Excel software is used to create a table for the collected parameter information to form a data matrix with a certain structure.

4. The parametric longitudinal section route modeling method based on Dynamo according to claim 3, characterized in that: In step S2, use Dynamo's built-in "File Path" node to read the data path, and then input the path into the "File FromPath" node to read the data to form a parameter matrix.

5. The method for modeling a parametric longitudinal section route based on Dynamo according to claim 4, characterized in that: In step S3, the parameter matrix is ​​traversed, and a basic unit of the traversal is the vertical curve radius, the tangent length, the elevation of the slope change point, and the slope and slope length before and after the vertical curve.

6. The method for parameterized longitudinal section route modeling based on Dynamo according to claim 5, characterized in that: In step S4, drawing a vertical curve according to the parameters includes: S41, calculate the cumulative slope length corresponding to each vertical curve, and set the parameter matrix to be as follows: ; in , is the slope, is the slope length, , are the vertical curve radius, tangent length and slope change point elevation respectively. is the number of vertical curves, The corresponding cumulative slope length calculation method is expressed as: ; in Representative The cumulative slope length corresponding to the vertical curves; S42, calculate the vertical curve concave and convex marks, the calculation method is expressed as: ; in Representative The vertical curves are marked with concave and convex marks. There are 6 marked states respectively; S43, generating a negative sampling point set and a positive sampling point set, the calculation method is expressed as: ; in Representative The negative sampling point set of the vertical curve, Representative The positive sampling point set of the vertical curve, is the sampling step, For Round down; S44, calculate the elevation of the sampling point; S45, calculating the x coordinate of the sampling point, the calculation method can be expressed as: ; in Represent the x-coordinates of the positive sampling point and the negative sampling point, respectively. is the value corresponding to the inversion of the sampling point set, is the slope; S46, use Dynamo's "Point.ByCoordinates" node to generate a set of entity points based on the sample point elevation and x coordinates ,in is the number of sampling points on the vertical curve; S47, according to , use Dynamo's "NurbsCurve.ByPoints" node to fit all entity points and draw vertical curves ,Will Add to Curve List , after traversing all parameters, the curve list , is the number of vertical curves.

7. The method for parameterized longitudinal section route modeling based on Dynamo according to claim 6, characterized in that: The specific methods for calculating the elevation of sampling points include: S441, calculate the external vector distance of the sampling point, the calculation method is expressed as: ; in represents the external vector distance of the corresponding sampling point, is the sampling point value, is the slope, is the vertical curve radius; S442, calculate the vertical elevation distance corresponding to the external elevation distance, and the calculation method is expressed as: ; in represents the external vector distance of the corresponding sampling point, is the sampling point value, is the slope, is the length of the tangent line of the vertical curve; S443, calculate the sampling point elevation, the calculation method is expressed as: When the bump mark hour, ; in are the elevations corresponding to the negative sampling points and the positive sampling points respectively; When the bump mark hour, ; in The expression is ; When the bump mark hour, ; in The expression is ; When the bump mark hour, ; When the bump mark hour, ; in The expression is ; When the bump mark hour, ; in The expression is .

8. The method for modeling a parametric longitudinal section route based on Dynamo according to claim 7, characterized in that: In step S6, drawing corresponding straight line segments according to relevant vertical curves includes: S61, get the starting point of the straight line segment. Here, the straight line segment refers to the straight line segment between the two vertical curves. Use Dynamo's "Curve.PointAtParameter" node to get the starting point of the straight line segment for the vertical curve before the straight line segment. ; S62, get the end point of the straight line segment, and use Dynamo's "Curve.PointAtParameter" node to get the end point of the straight line segment for a vertical curve after the straight line segment. ; S63, yes and Use Dynamo's "Line.ByStartPointEndPoint" node to draw a straight line segment , the straight line segment Add to Curve List After traversing all vertical curves, the curve list .

9. The method for modeling a parametric longitudinal section route based on Dynamo according to claim 8, characterized in that: In step S7, the starting point and the end point of the vertical curve route are further processed. First, the starting point is processed. Here, the starting point is marked according to the landing point. For discussion: When the drop mark The steps include: Processing the starting point: S71a, obtain vertical curve Starting point , and then obtain The elevation value and the x-coordinate ; S71b, calculate the x coordinate of the starting point of the longitudinal section route, the calculation method can be expressed as: ; in is the starting point elevation; S71c, according to and the route start elevation Generate Entity Points ; S71d, according to and Generate Line , and Add to Curve List ; When the drop mark The steps include: Processing the starting point: S71e, calculate vertical curve concave and convex marks ; S71f, get vertical curve midpoint , and then obtain The elevation value ; S71g, vertical curve Sampling, sampling collection ,in Midpoint ; S71h, calculate the search set , the calculation method can be expressed as: ; in is the starting point elevation of the route; S71i, Traverse, if ,use and Create Entity Point ;if or ,use and Create Entity Point ,in For the The x and z coordinates of the points; S71j, through Draw a perpendicular line , Will Divide into two parts, and delete the part that is not connected to the set; After processing the route starting point, process the route end point and mark the end point. For discussion: When the drop mark The steps include: Processing of the endpoint: S72a, obtain vertical curve The end point , and then obtain The elevation value and the x-coordinate ; S72b, calculate the x coordinate of the end point of the longitudinal section route, the calculation method can be expressed as: ; in is the end point elevation; S72c, according to and the elevation of the end of the route Generate Entity Points ; S72d, according to and Generate Line , and Add to Curve List ; When the drop mark The steps include: Processing of the endpoint: S72e, calculate vertical curve concave and convex marks ; S72f, get vertical curve midpoint , and then obtain The elevation value ; S72g, vertical curve Sampling, sampling collection ,in Midpoint ; S72h, calculate the search set , the calculation method can be expressed as: ; in is the elevation of the route end point; S72j, yes Traverse, if ,use and Create Entity Point ;if or ,use and Create Entity Point ,in For the The x and z coordinates of the points; S71j, through Draw a perpendicular line , Will Split into two parts, removing the part that is not connected to the set.

10. The parametric longitudinal section route modeling method based on Dynamo according to claim 9, characterized in that: In step S8, the drawn vertical curve route is output, including: S81, use Dynamo's "PolyCurve.ByJoinedCurves" node to connect all the curves or lines in the curve list into a whole ; S82, use Dynamo's "ImportInstance.ByGeometry" node to Import it into Revit software, and then Save the model in ".rvt", ".rfa" or ".fbx" format.

Citation Information

Patent Citations

  • BIM parametric modeling method and device based on Dynamo

    CN111063030A

  • Longitudinal section line layout method and system, terminal and readable storage medium

    CN113190892A

  • Revit-based roadbed slope lattice girder construction model building method

    CN113779684A

  • Asymmetric curve box girder modeling method based on Dynamo and Excel

    CN116910868A

  • Tunnel BIM (Building Information Modeling) parametric modeling method based on Dynamo plug-in

    CN117235844A