An airport pavement engineering three-dimensional model modeling method, system, device and storage medium
By directly reading CAD 2D drawing data and using optimization algorithms to generate Revit terrain, the problems of large repetitive workload and low accuracy in 3D modeling of airport pavement engineering are solved, achieving efficient and accurate 3D model generation and complete engineering quantity statistics.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- NORTHWEST DESIGN & RES INST OF CIVIL AVIATION AIRPORT CONSTR GRP CO LTD
- Filing Date
- 2024-08-30
- Publication Date
- 2026-04-28
AI Technical Summary
Existing 3D modeling methods for airport pavement engineering suffer from problems such as repetitive manual input of elevation data, low model accuracy, slow generation speed, and incomplete models, failing to accurately represent the actual shape and having limited application value.
By directly reading CAD 2D drawing data and combining optimization algorithms such as Boolean operations, closed region operations, and terrain projection, Revit terrain is generated and a 3D solid pavement structure is established. Lightweight data format is used for storage, and pavement markings, blocks, and dowel bars are automatically generated.
It improves modeling efficiency, reduces repetitive work, generates models that are consistent with the actual component shapes, have high accuracy, run smoothly, and can fully encode and count engineering quantities, thus improving the application value of the model.
Smart Images

Figure CN119107423B_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of 3D modeling and relates to a method, system, equipment and storage medium for 3D modeling of airport pavement engineering. Background Technology
[0002] Currently, civil aviation digitalization is in a phase of rapid development, placing high demands on digital applications in airport construction. As part of airport digital assets, the 3D model of airport pavement engineering is the core of airport flight area digital assets, serving as a crucial information carrier throughout the entire airport process from site selection to operation. It is a key focus for design optimization, aircraft operation simulation, construction management, operation and maintenance, safety and emergency management, and other related tasks. Currently, traditional 3D modeling methods for airport pavement engineering mainly suffer from the following problems:
[0003] The elevation of the 3D model cannot be automatically converted to the elevation annotation of the 2D drawing. The elevation of the component positioning point or endpoint needs to be manually entered in the software. Since there are a large number of 3D components in pavement engineering, manually entering the elevation will cause a lot of repetitive work.
[0004] The projection outline or positioning lines of a 3D model cannot be directly converted into 2D drawing data. They need to be manually drawn again based on the 2D drawing, which makes the modeling process inefficient.
[0005] 3D model entities are typically modeled using built-in software components (such as Revit built-in families). Due to software limitations, the 3D shapes of these built-in components cannot accurately represent the desired 3D shape, resulting in inaccurate 3D model shapes that do not closely match the designed terrain. Furthermore, 3D models built using built-in components are not lightweight models, leading to slow model generation, choppy program operation, and low modeling efficiency.
[0006] For complex 3D models, software limitations prevent accurate modeling using native functions. Instead, only textures or lines can be used for approximate representation, failing to accurately depict the 3D entity. This also limits the model's practical application value, making it impossible to perform coding, quantity surveying, and other tasks. Summary of the Invention
[0007] The purpose of this invention is to overcome the shortcomings of the prior art and provide a method, system, equipment and storage medium for modeling three-dimensional models of airport pavement engineering. It eliminates the need for manual input of elevation information, has high modeling efficiency and reduces repetitive workload.
[0008] To achieve the above objectives, the present invention employs the following technical solution:
[0009] A method for creating a three-dimensional model of an airport pavement project includes the following steps:
[0010] S1: Obtain elevation text, terrain grid, and geometric information of the flattening range boundary from the CAD 2D drawings of the airport pavement project, and create a 3D terrain based on Revit;
[0011] S2, configures the pavement structure design parameters in three-dimensional terrain;
[0012] S3: Obtain all areas filled in the CAD 2D drawings of the airport pavement project that conform to the naming rules of a specific layer, and generate the pavement structure by filling the areas in the 3D terrain based on Boolean operations.
[0013] S4: Obtain pavement marking information from the CAD 2D drawings of the airport pavement project, and project it onto the 3D terrain to generate pavement markings.
[0014] S5: Obtain the geometric information of the joint lines in the CAD two-dimensional drawings of the airport pavement project, and generate the closed outer contour of each pavement panel according to the pavement structure. Generate pavement blocks in the three-dimensional terrain and obtain the corner point positioning points of the blocks.
[0015] S6, generate plate seams based on the projection of the block corner points into the three-dimensional terrain;
[0016] S7: Based on the projection of the corner points of the blocks onto the three-dimensional terrain and the calculation of the force transmission rods, the three-dimensional model of the airport pavement project is established.
[0017] Compared with the prior art, the present invention has the following beneficial effects:
[0018] The method described in this invention can directly read the elevation data from CAD 2D drawings to generate Revit terrain, and then use this as a basis to generate 3D solid pavement structures. This eliminates the need for manual input of elevation information, resulting in high modeling efficiency and minimal repetitive work. The outer contours and positioning lines of each 3D model are obtained by reading data from 2D design drawings or from built-in software data, eliminating the need for manual drawing and significantly improving modeling efficiency. The 3D models are generated using various optimized algorithms, including Boolean operations, closed region operations, and terrain projection. The shapes of the 3D models are completely consistent with the actual completed component shapes and closely match the designed terrain, resulting in high model accuracy. Furthermore, the 3D models are stored using a lightweight data structure, leading to fast model generation, smooth operation, and high modeling efficiency. Regardless of the complexity of the 3D model structure, this method can accurately create its 3D model, avoiding data loss issues caused by approximate representations. All 3D models can be batch-coded and used for quantity surveying, enhancing the practical application value of the models.
[0019] Furthermore, in traditional design methods, the elevation of each pavement segment vertex needs to be manually entered, resulting in a significant amount of repetitive work. This invention uses a method that directly reads the elevation data from CAD 2D drawings to generate Revit terrain, and then projects the pavement structure onto the terrain for modeling. This eliminates the need for manual elevation data input, greatly reducing repetitive work for designers.
[0020] Furthermore, in traditional design methods, pavement structures are modeled using Revit floor families, a cumbersome process that suffers from severe model lag due to data storage issues with floor families. This invention innovatively employs Boolean operations to generate 3D solid pavement structures and exports them in a lightweight data format (DirectShape) for modeling pavement structures, markings, and blocks. This method simplifies the modeling process, increases program efficiency, and ensures smooth, lag-free model operation.
[0021] Furthermore, in traditional design methods, pavement structural layers are distinguished using "layers" within a floor slab family, and each lower structural layer is also "divided" like the surface layer. This method produces a model that does not match the actual pavement structural layer form: in reality, the lower structural layers are a single, seamless structure, except for the surface layer which requires segmentation. The pavement structural layer generated using this invention has a single, seamless lower structure, while the surface layer is divided into segments based on the geometric information of the slab joints, perfectly matching the actual pavement structural form.
[0022] Furthermore, in traditional design methods, the construction details of each pavement structure layer are represented within the same floor slab family, and the outward expansion of lower layers relative to upper layers cannot be accurately reflected due to software limitations. In this invention, each pavement structure layer is an independent 3D model, and the outward expansion of lower layers relative to upper layers can be accurately represented.
[0023] Furthermore, in traditional design methods, pavement segmentation requires manually drawing the boundary lines of each closed segment, resulting in a large amount of repetitive work for designers. This invention uses a method that reads 2D CAD slab joint line information to automatically generate closed segment boundary lines, which is simple to operate, highly efficient, and reduces repetitive work.
[0024] Furthermore, traditional design methods for pavement markings typically employ a texture mapping approach, where a drawn pavement marking image is vertically projected onto the pavement structural layer to generate the marking. This method only allows for "seeing" the pavement marking; it doesn't truly create a 3D model. Subsequent coding, quantity surveying, and simulations fail to retrieve pavement marking information, resulting in low model application value. This invention utilizes multiple methods to create 3D pavement markings. All markings possess independent 3D geometric entities and can be programmed with various design parameters and materials. The model closely integrates with the pavement structure, providing a superior display effect. It accurately calculates pavement marking quantities and precisely retrieves 3D geometric information to guide actual construction and for simulation, significantly enhancing the model's application value.
[0025] Furthermore, in traditional design methods, pavement components such as slab joints and dowel bars are numerous but relatively small in size. Modeling them using elevation input methods is labor-intensive and offers limited improvement in model presentation. Therefore, they are generally not modeled in practice, resulting in incomplete 3D pavement engineering models. This invention uses a method of reading slab joint information from CAD 2D drawings and setting parameters to automatically generate 3D models of slab joints and dowel bars in batches. This reduces repetitive work for designers, increases model accuracy, and provides excellent presentation.
[0026] Furthermore, in traditional design methods, pavement markings are rendered as textures and cannot be programmed with parameters, and slab joints and dowel bars are generally not modeled, resulting in incomplete airport models, inaccurate quantity surveys, and limited practical application value. The pavement engineering 3D model in this invention features complete 3D entity modeling, accurate material volume (area), and complete coding. It can be easily applied to subsequent quantity surveys, construction guidance, construction planning, report export, and operational simulation, solving the problem of difficulty in extending the model to downstream applications and improving the model's application value throughout its entire lifecycle. Attached Figure Description
[0027] Figure 1 This is a flowchart of a rapid modeling method for a 3D model of an airport pavement project, as described in Example 1.
[0028] Figure 2 This is a detailed flowchart of a rapid 3D modeling method for airport pavement engineering, as described in Embodiment 1.
[0029] Figure 3 This is a partial schematic diagram of the terrain design in 2D drawing of Example 1;
[0030] Figure 4 This is the Revit terrain of Example 1 without boundary clipping;
[0031] Figure 5 This is the Revit terrain after the flattened boundary of Example 1;
[0032] Figure 6 This is the pavement area structural layer construction method of Example 1;
[0033] Figure 7 This is the pavement area structure layer information configuration interface of Example 1;
[0034] Figure 8 This is the XML file architecture for storing the pavement structure configuration in Example 1;
[0035] Figure 9 This is a schematic plan view of the pavement structure in Embodiment 1;
[0036] Figure 10 This is a partial schematic diagram of the pavement structure three-dimensional model of Example 1;
[0037] Figure 11 This is the pavement marking (runway) selection interface of Example 1;
[0038] Figure 12 This is a partial schematic diagram of the three-dimensional model of the pavement markings in Example 1;
[0039] Figure 13 This is the interface for selecting the pavement block layer in Example 1;
[0040] Figure 14 This is a partial schematic diagram of the pavement block 3D model of Embodiment 1;
[0041] Figure 15 This is the interface for creating a panel seam layer selection in Example 1;
[0042] Figure 16 This is a partial schematic diagram of the three-dimensional model of the plate joint and force transmission rod in Example 1;
[0043] Figure 17 This is the force transmission rod parameter configuration interface for Example 1;
[0044] Figure 18 This is the creation of the force transmission bar layer selection interface in Example 1. Detailed Implementation
[0045] like Figure 1 As shown, the airport pavement engineering three-dimensional modeling method of the present invention includes the following process:
[0046] S1 retrieves elevation text, terrain grid, and flat area boundary geometry information from the CAD 2D drawings of the airport pavement project, and creates 3D terrain based on Revit.
[0047] S2, configures the pavement structure design parameters in the three-dimensional terrain.
[0048] S3 retrieves all areas of the airport pavement engineering CAD 2D drawing that conform to a specific layer naming rule, and generates the pavement structure by filling the areas in the 3D terrain based on Boolean operations.
[0049] S4 retrieves pavement marking information from the CAD 2D drawings of the airport pavement project and projects it onto the 3D terrain to generate pavement markings.
[0050] S5: Obtain the geometric information of the joint lines in the CAD 2D drawings of the airport pavement project, and generate the closed outer contour of each pavement panel according to the pavement structure. Generate pavement blocks in the 3D terrain and obtain the corner points of the blocks.
[0051] S6 generates board seams by projecting the corner points of the blocks onto the three-dimensional terrain.
[0052] S7 generates force transmission rods by projecting the corner points of the blocks onto the three-dimensional terrain and calculating the force transmission rods.
[0053] like Figure 2 As shown, the specific process of the above method is as follows:
[0054] Step S1 is as follows:
[0055] S1.1. Use external library files to read CAD 2D drawing files, and read elevation text, terrain grid and flat area boundary geometric information according to the specified layer.
[0056] S1.2. Convert the elevation textual geometric information into elevation points, normalize the coordinates of the elevation points, and filter and delete duplicate elevation points based on the normalized coordinate values.
[0057] S1.3. Calculate the intersection points between the grid lines of the terrain grid obtained in step S1.1. An optimized intersection point calculation method is used. The specific steps are as follows:
[0058] (1) Divide the grid lines into sets of horizontal lines, vertical lines, and diagonal lines;
[0059] (2) Calculate the intersection of the horizontal and vertical lines: For each horizontal line, iterate through all elements in the set of vertical lines, and determine whether the X coordinate of the vertical line is within the X coordinate range of the horizontal line, and at the same time determine whether the Y coordinate of the horizontal line is within the Y coordinate range of the vertical line. If both are true, it means that the two lines intersect, the X coordinate of the intersection point is the X coordinate of the vertical line, and the Y coordinate of the intersection point is the Y coordinate of the horizontal line. Output the coordinates of the intersection point.
[0060] (3) Calculate the intersection of horizontal / vertical / diagonal lines with diagonal lines: Based on the geometric information of the lines, convert them into the general expression of a straight line Ax+By+C=0, calculate the intersection of the two lines and determine whether the intersection is on one of the lines. If it is, output the coordinates of the intersection.
[0061] After the intersection point calculation is completed, duplicate points are deleted. For details, please refer to step S1.2.
[0062] S1.4. Traverse the intersections and elevation points of the terrain grid, and move the elevation point plane to the nearest terrain grid intersection.
[0063] S1.5. Call the TopographySurface.Create method in Revit to generate the initial terrain.
[0064] S1.6. Extract the triangular faces of the initial terrain generated in step S1.5, delete the triangular faces outside the flattening range boundary, and generate the final terrain. The modified ray intersection method is used to determine whether a triangular face is outside the flattening range boundary. The specific steps are as follows:
[0065] (1) Calculate the midpoint of the triangle and draw an infinitely long ray to the right from the midpoint;
[0066] (2) Extract all horizontal lines from the boundary of the flattened area and add them to the set of horizontal lines. Add all other lines to the set of general lines and all arcs to the set of arcs.
[0067] (3) Traverse the set of horizontal lines and determine whether the ray and the horizontal line are collinear. If they are collinear, extend the midpoint of the current horizontal line downwards by a certain distance and transform it into two line segments. Add the newly generated two line segments to the set of general lines in (2).
[0068] (4) Traverse the set of arcs and calculate the intersection points of the ray and the arc. If there is an intersection point, calculate the position of the intersection point on the arc, and connect the arc endpoints and the intersection points in sequence from the start point to the end point of the arc to transform the arc into a set of line segments, and add the newly generated line segments to the general line set in (2);
[0069] (5) Traverse the set of general lines and calculate the intersection points of the ray and the general lines;
[0070] (6) Traverse all intersection points. If the planar coordinates of two intersection points are the same, store the two intersection points as an "intersection point group"; otherwise, store them as "general intersection points".
[0071] (7) Traverse all intersection point groups and determine the relationship between the original line segments corresponding to the two intersection points in the group and the ray. If both original line segments are simultaneously above or below the ray, then exclude the intersection point group from the results;
[0072] (8) Calculate the sum of the number of “intersection group” and “general intersection”. If it is divisible by 2, it means that the triangular face is outside the boundary of the flat area; otherwise, it is inside the boundary of the flat area.
[0073] Step S2 specifically involves: In the pavement structure layer configuration window, selecting to create a new pavement structure type or modify an existing pavement structure type, a structure layer configuration dialog box will pop up. In this dialog box, the pavement structure type can be selected or modified, and the name, thickness, outward extension distance relative to the previous layer, and material of each layer from top to bottom can be entered or modified. After configuration, the program will process the input parameters and store the processing results in an external XML file.
[0074] Step S3 specifically involves:
[0075] S3.1. Use external library files to read the CAD 2D drawing, obtain all area hatches that conform to the specific layer naming rules, exclude those with non-closed boundaries, and further filter and classify them. Area hatches with the same layer name as the specified layer name are classified as "solid domain hatches", and other area hatches are classified as "cutting domain hatches".
[0076] S3.2. For "Solid Domain Fill" and "Clipping Domain Fill" in step S3.1, extract all their outer contours, determine whether the contour lines intersect, and skip the contour if they intersect.
[0077] S3.3. Filter all topographic surfaces in Revit, traverse all triangular meshes in the topographic surface, use each triangular mesh as the outer contour, and use the thickness of all different structural layers in the pavement structure design parameters as the distance to extrude downwards to generate a three-dimensional solid, and put the three-dimensional solids of different thicknesses into sets with corresponding names.
[0078] S3.4. Based on the results in step S3.2, the outer contour extracted by “entity domain filling” is offset, and the offset distance is obtained by accumulating the outward expansion distance in the pavement structure design parameters.
[0079] S3.5. Based on the "Solid Domain Fill" contour before and after offset generated in step S3.4, stretch the entire contour vertically to generate a solid Boolean operation solid. Based on the "Cut Domain Fill" outer contour generated in step S3.2, without any offset, directly stretch the contour vertically to generate a hollow Boolean operation solid.
[0080] S3.6. Perform a difference operation between the solid Boolean operation entity generated in step S3.5 and the hollow Boolean operation entity to generate a modified solid Boolean operation entity. The purpose is to ensure that the underlying structure of the selected pavement area does not intrude into other pavement areas.
[0081] S3.7. Find the intersection between the corrected solid Boolean entity generated in step S3.6 and the terrain 3D entity generated in S3.3. To improve program efficiency, when performing the intersection operation, first select the corrected solid Boolean entity with the largest outer contour for the operation, and exclude the terrain 3D entity with no intersection result to reduce the amount of geometric calculations required by the program.
[0082] S3.8. Sum the thicknesses of each pavement structural layer in S2 to obtain the downward movement distance of each structural layer, and perform position transformation on the structural layers. Store the transformed 3D solid in a lightweight format.
[0083] S3.9. Based on the pavement structure parameters in S2, assign corresponding materials to each pavement structure layer and write the corresponding parameters of the structure layer into the 3D model.
[0084] Step S4 specifically involves:
[0085] S4.1. Select the pavement marking category to be generated. Pavement markings are divided into four main categories based on the region: "Runway Markings," "Taxiway Markings," "Apron Markings," and "Service Lane Markings," each further subdivided into different subcategories. The generation parameters differ for each category.
[0086] S4.2. Select the geometric entity generation method. The generation method mainly refers to the algorithm used to generate the geometric entity: for linear pavement markings, you can choose "linear projection" or "region projection"; for regional pavement markings, you can choose "region extrusion" or "region projection". The basic ideas of the three methods are as follows:
[0087] (1) "Linear Projection": Calculate the plane intersection points of the pavement marking lines and the edges of the terrain triangulation network, and calculate the elevation of all intersection points on the terrain. Project the pavement marking lines onto the terrain as a whole based on the geometric information of the intersection points. Then, using the marking width as the lofting section width, the projected lines as the lofting path, and the lofting section height of 1mm, a three-dimensional solid pavement marking is generated. This method is only applicable to linear pavement markings.
[0088] (2) “Regional Extrusion”: The pavement sign positioning point is vertically projected onto the terrain. Using the projection point as the plane base point and the normal direction of the projection point on the terrain as the plane normal direction, a geometric plane is established. On the newly established geometric plane, the pavement sign outline is drawn according to the sign parameters, and then stretched by 1mm along the normal direction to generate a three-dimensional pavement sign solid. This method is only applicable to regional pavement signs.
[0089] (3) “Regional Projection”: Based on the pavement marking parameters, the outer contour of the pavement marking is first generated on the plane, and then the contour is stretched vertically and intersected with the terrain triangle extracted in S4.3 to generate the three-dimensional entity of the pavement marking. This method is applicable to both linear pavement markings and regional pavement markings.
[0090] "Linear projection" and "region stretching" are simplified generation algorithms with fast program speed, but the generated results may not closely match the pavement structure and may have local bulges or subsidence; "region projection" is a general generation algorithm with slower program speed, but the generated results are accurate and closely match the pavement structure.
[0091] S4.3. Filter all terrain surfaces in Revit and extract all triangles from the terrain surfaces.
[0092] S4.4. Read the CAD 2D drawing. During the reading process, the layer name and data type are automatically configured according to the pavement marking category selected in step S4.1. For linear markings or large regional markings, obtain the geometric parameters of all lines or polylines under the corresponding layer; for small regional markings, obtain the geometric parameters and attributes of the block with the corresponding name.
[0093] S4.5. Based on the geometric information and attributes obtained in step S4.4, and the sign generation method selected in step S4.2, generate the path or outer contour for pavement sign generation. If linear pavement sign is selected in step S4.1, and "linear projection" is selected in step S4.2, then the pavement sign path is generated; otherwise, the pavement sign outer contour is generated.
[0094] S4.6. Loft the pavement marking path generated in S4.5, using the marking width as the loft section width and the loft section height as 1mm, to generate a 3D solid pavement marking. Then, extrude the outer contour of the pavement marking generated in S4.5 vertically to generate a Boolean operation solid. Next, find the intersection of this solid with the triangle extracted in S4.3 to generate the 3D solid pavement marking, and save it in a lightweight format.
[0095] S4.7. Based on the pavement marking category selected in step S4.1 and the pavement marking data built into the program, assign relevant design parameters, codes and corresponding materials to the generated results.
[0096] Step S5 specifically involves:
[0097] S5.1. Use external library files to read CAD 2D drawings and obtain the geometric information of all board seam lines based on the selected layer.
[0098] S5.2. Based on the 3D pavement structure model generated in S3, select the pavement surface layer to be segmented and extract its outer contour lines and 3D solids. Integrate the outer contour lines with the slab joint lines obtained in S5.1 into a set of pavement segment boundary lines, and perform closed region analysis based on this set to generate the closed outer contour of each pavement panel.
[0099] S5.3. Based on the closed outer contour of the track panel generated in S5.2, stretch it vertically to generate a Boolean operation entity.
[0100] S5.4. Intersect the Boolean operation entity generated in S5.3 with the 3D entity of the pavement surface layer extracted in S5.2 to generate a pavement block 3D entity, and store it in a lightweight format.
[0101] S5.5. Based on the closed outer contour of the track panel generated in S5.2, extract its contour corner points and project the corner points vertically to the top of the corresponding block as the block corner point positioning points. These positioning points are mainly used for the subsequent establishment of the three-dimensional model of the plate joint and the force transmission rod.
[0102] S5.6. Based on the pavement surface layer information, pavement block naming and coding rules, etc., assign relevant design parameters, codes and corresponding materials to the generated results.
[0103] Step S6 specifically involves:
[0104] S6.1. Use external library files to read CAD 2D drawings and obtain the geometric information of all board joint lines according to the selected board joint type and its layer.
[0105] S6.2. Filter out the corner points that coincide with the plane of the board seam line, divide the board seam line into multiple short line segments, write the elevation of the corner points into the line segments, and generate a three-dimensional board seam line segment.
[0106] S6.3. Based on the three-dimensional seam line segments and corresponding seam types generated in S6.2, loft to generate a three-dimensional seam model and save it in a lightweight format.
[0107] S6.4. Based on the set board joint information, assign relevant design parameters, codes and corresponding materials to the generated results.
[0108] Step S7 specifically involves:
[0109] S7.1. Configure the force transmission rod parameters.
[0110] S7.2. Use external library files to read CAD 2D drawings and obtain the geometric information of all force transmission rod lines according to the selected force transmission rod type and its layer.
[0111] S7.3. Filter out the corner points of the blocks that coincide with the plane of the force transmission bar lines. The corner point positioning information can be directly extracted from the 3D model of the pavement blocks. Based on the planar distance between the positioning points and the starting point of the force transmission bar lines, connect the positioning points sequentially and project them to generate the positioning line segments for the force transmission bar layout.
[0112] S7.4. Based on the force transmission rod layout positioning line segments generated in S7.3, generate the center point of the force transmission rod according to the configuration parameters, generate the force transmission rod layout path according to the center point, generate the three-dimensional solid of the force transmission rod through layout, and save it in a lightweight format.
[0113] S7.5. Based on the configured force transmission rod parameters, assign relevant design parameters, codes, and corresponding materials to the generated results.
[0114] This embodiment takes a domestic branch airport pavement project as the design target and provides a rapid 3D modeling method for airport pavement projects based on AutoCAD and Revit platforms. Utilizing AutoCAD 2D design drawings and the Revit API extension interface, a 3D model of the pavement structure, pavement markings, pavement blocks, slab joints, and dowel bars is quickly and accurately created. The steps include:
[0115] In step S1, the CAD 2D drawing is first read using an external library file. In this project's 2D drawing, the elevation text layer is "Flight Area Elevation," the terrain grid layer is "FGX," and the leveling boundary layer is "Leveling Boundary." The elevation text, terrain grid, and leveling boundary geometric information are read according to their layer names. (Partial view of the 2D drawing is provided.) Figure 3 .
[0116] The elevation textual geometric information is converted into elevation points. The X and Y coordinates of each elevation point are multiplied by 100 and converted to integer format. Then, all elevation points are iterated over, and those with identical X and Y coordinates are filtered and deleted. For example, if two original elevation points have coordinates (-321.997, 202.002, 55.27) and (-322.002, 202.002, 55.27), their converted coordinates will be (-32200, 202, 55.27) and (-32200, 202, 55.27), respectively. Since both have the same X and Y coordinates, one of these elevation points is deleted.
[0117] Calculate the intersection points of the terrain grid by dividing the grid lines into sets of horizontal lines, vertical lines, and diagonal lines. Calculate the intersection points of horizontal and vertical lines, and the intersection points of horizontal / vertical / diagonal lines with each other, respectively. After the intersection point calculation is completed, refer to the elevation point processing steps to filter and delete intersection points with the same X and Y coordinates.
[0118] The algorithm iterates through all elevation points, and for each elevation point, iterates through all terrain grid intersections. It then finds the terrain grid intersection with the smallest planar distance to the current elevation point and uses its X and Y coordinates to cover the current elevation point. To reduce computation, after each elevation point is traversed, the nearest terrain grid intersection data is removed from the program.
[0119] After the elevation points have been moved, the `TopographySurface.Create` method in Revit is called, passing in all elevation point data, to generate a Revit topography surface without boundary clipping, such as... Figure 4 As shown.
[0120] The Revit terrain is trimmed using the flattened boundary, deleting triangles outside the flattened boundary to generate the final terrain. The modified ray intersection method is used to determine whether a triangle is outside the flattened boundary; the specific steps are as follows:
[0121] (1) Extract all MeshTriangles in the current Revit terrain (TopographySurface);
[0122] (2) Perform a judgment on each MeshTriangle and create a ray for the judgment. The starting point of the ray is the average of the planar coordinates of the three corner points of the MeshTriangle, and the direction of the ray is horizontal to the right.
[0123] (3) Extract all horizontal lines from the boundary of the flattened area and add them to the set of horizontal lines. Add all other lines to the set of general lines and all arcs to the set of arcs.
[0124] (4) Traverse the set of horizontal lines, handle the case of collinearity with rays, and add the newly generated line segments after transformation to the set of general lines;
[0125] (5) Traverse the set of arcs and add the newly generated line segments after transformation to the set of general lines;
[0126] (6) Call the Curve.Intersect method to calculate the intersection points of the ray with all general lines, and iterate through all intersection points. If the planar coordinates of two intersection points are the same, store the two intersection points as an "intersection point group"; otherwise, store them as "general intersection points".
[0127] (7) Traverse all intersection point groups and determine the relationship between the original line segments corresponding to the two intersection points in the group and the ray. If both original line segments are simultaneously above or below the ray, then exclude the intersection point group from the results;
[0128] (8) Calculate the sum of the number of “intersection group” and “general intersection”. If it is divisible by 2, it means that the triangular face is outside the boundary of the flattened range; otherwise, it is inside the boundary of the flattened range.
[0129] (9) For MeshTriangle that is determined to be within the flat range boundary, extract its three corner points, store the point coordinates in the point list, and store the point coordinates as PolymeshFacet class;
[0130] (10) Call the TopographySurface.Create method, pass in the point list and PolymeshFacet, generate a new Revit terrain, and delete the original Revit terrain after generation.
[0131] After generation, the terrain is as follows Figure 5 As shown.
[0132] In step S2, the corresponding pavement structure configuration window is configured. The pavement project includes four pavement structure types (areas): "Pavement," "Shoulder," "Work Road," and "Windproof Pavement." The structural configurations differ for each type (area). Taking the pavement area as an example, the structural configuration for this project is as follows:
[0133] The pavement structure consists of four layers, from top to bottom: a cement concrete surface layer, an asphalt sand isolation layer, a cement-stabilized crushed stone base course, and a cement-stabilized gravel subbase course. The thicknesses of each layer from top to bottom are 0.34m, 0.015m, 0.2m, and 0.2m, respectively. The outward extension distances of each layer from top to bottom are 0m, 0m, 0.6m, and 0.3m, respectively. The materials of each layer from top to bottom are cement concrete, asphalt isolation layer, cement-stabilized crushed stone, and cement-stabilized gravel. Two-dimensional drawings of the structural layer construction and corresponding configuration interfaces are available in [link to relevant documentation]. Figure 6 and Figure 7 .
[0134] After configuration, the program calls the System.Xml library to store the configuration information as an external XML file. See the XML file structure below. Figure 8 .
[0135] In step S3, taking the creation of a pavement area as an example, the CAD 2D drawing is first read using an external library file. All pavement area layers in this project begin with "DM-", with the layer name for the pavement area to be created being "DM-Pavement". During the reading process, the area fills (Hatch) under all layers beginning with "DM-" are retrieved and categorized. Layers named "DM-Pavement" are classified as "Solid Domain Fills," and others are classified as "Clip Domain Fills." (Pavement structure plan view opinion) Figure 9 .
[0136] After the fill extraction is complete, extract all contours (HatchLoops) from "Solid Domain Fill" and "Clipping Domain Fill". Determine if the contour type is External; if not, do not extract the contour. After contour extraction, iterate through all results and check if the contour lines intersect. If they intersect, skip the contour.
[0137] Filter all topographic surfaces (TopoSurface) in Revit, traverse all triangular meshes (MeshTriangle) within the topographic surfaces, and connect the three vertices of each MeshTriangle sequentially to generate a closed curve. Then, vertically downwards, call the CreateExtrusionGeometry method to extrude each closed curve by a distance equal to the thickness of the pavement structure layer. Taking the pavement area as an example, there are three different thicknesses for the pavement structure layer: 0.34m, 0.015m, and 0.2m. Therefore, extrude three times with each of these different thicknesses to generate three 3D solids of different thicknesses. Store the MeshTriangle and the three 3D solids as GeoSolidInfo classes.
[0138] The outline extracted by "entity domain filling" is offset using the CreateViaOffset method. The offset distance is obtained by accumulating the outward expansion distances in the pavement structure design parameters. Taking the pavement area as an example, the accumulated outward expansion distances for each layer are 0m, 0m, 0.6m, and 0.9m, respectively. Therefore, the outer outline is offset twice, by 0.6m and 0.9m respectively. Before offsetting, the IsCounterclockwise method should be used to determine the normal direction of the outer outline. If it is true, it means the curve is in the positive direction and the offset distance is positive; if it is false, it means the curve is in the negative direction and the offset distance is negative.
[0139] The outer contours of the "Solid Domain Fill" before and after offset, as well as the outer contour of the "Cutout Domain Fill," are vertically stretched upwards by 10000m using the CreateExtrusionGeometry method, generating solid and hollow Boolean operation entities respectively. This 10000m stretch ensures that the top of the entity exceeds the terrain, guaranteeing the validity of subsequent Boolean operations.
[0140] The solid Boolean operation entity and the hollow Boolean operation entity are subjected to the difference operation by calling the ExecuteBooleanOperationModifyingOriginalSolid method to generate the corrected solid Boolean operation entity, and all hollow Boolean operation entities are deleted.
[0141] The corrected solid Boolean entity is intersected with the aforementioned 3D entity in the GeoSolidInfo class by calling the ExecuteBooleanOperation method to generate the 3D entity of the pavement structure layer. During runtime, the structure layer with the largest area is selected first for Boolean operation, and the GeoSolidInfo class is filtered to improve efficiency. Taking the pavement area as an example, the maximum offset distance is 0.9m. Therefore, during the calculation, the thickness corresponding to the structure layer with an offset distance of 0.9m is used to obtain the 3D entity of the corresponding thickness in the GeoSolidInfo class for Boolean operation. If the calculation result is empty, the current GeoSolidInfo class is deleted, and no further calculations are performed.
[0142] The thickness of each structural layer is accumulated to obtain the downward movement distance of each layer. The MoveElement method is then called to transform the position of each layer. Taking the pavement area as an example, the downward movement distances of each structural layer after the thickness accumulation are 0m, 0.34m, 0.355m, and 0.555m, respectively. The moved 3D solid is then stored as a lightweight DirectShape format.
[0143] The Document.Paint method is called to assign the corresponding material to each pavement structural layer, with the material set in step S2 as the standard. Simultaneously, each structural layer is coded, with the coding determined according to the "Classification and Coding Standard for Civil Transport Airport Engineering Objects" (MHT5070) and the actual project conditions.
[0144] Partial view of the completed 3D model of the pavement structure Figure 10 .
[0145] In step S4, first select the pavement marking category to be created. Taking runway markings as an example, the runway marking category includes the following subcategories: runway threshold markings, runway number, runway centerline, runway center circle, touchdown zone, aiming point, runway edge line, runway holding position markings, turnaround line, and turnaround edge line. Select all categories for subsequent creation. See the pavement marking (runway) selection interface. Figure 11 .
[0146] When selecting a geometric entity generation method, linear pavement signs can choose either "Linear Projection" or "Regional Projection," while regional pavement signs can choose either "Regional Extrusion" or "Regional Projection." To improve the accuracy of the results, this project selects "Regional Projection" for all sign categories.
[0147] Filter all topographic surfaces (TopoSurface) in Revit, iterate through all MeshTriangles within them, and store them as a set of topographic triangles.
[0148] External library files are used to read CAD 2D drawings, and geometric elements in the corresponding layers are read according to the selected pavement sign category. The layer name for each pavement sign category is fixed. Taking runway signs as an example, the relationship between each sign category and its corresponding layer is shown in Table 1:
[0149] Table 1: Correspondence between runway markings and layer names
[0150]
[0151]
[0152] When reading geometric elements, for linear markers (such as runway centerlines), read all lines under that layer; for large regional markers (such as grounding zones), read all closed polylines under that layer; for small regional markers (such as runway holding position markers), read the attributes of the specified name block under that layer.
[0153] After the geometric elements are read, since the geometric entity generation method selected in this case is "regional projection," it is necessary to first generate the outer contour of the sign based on the sign's geometric information and attributes. For linear pavement signs (such as runway centerlines), the original lines are offset to both sides by half the sign's width, and then the first and last ends of the two offset lines are connected to generate the sign's outer contour. For large regional signs (such as grounding zones), all the read closed polylines are directly used as the sign's outer contour. For small regional signs (such as runway holding position signs), the sign's outer contour is automatically generated from the data saved by the program based on the read block attributes. After the outer contour is generated, the CreateExtrusionGeometry method is called to stretch vertically upwards by 10000m to generate a Boolean operation entity. Then, ExecuteBooleanOperation is called to calculate the intersection of the Boolean operation entity and the terrain triangle to generate the pavement sign's 3D entity, which is then stored in the lightweight DirectShape format.
[0154] The Document.Paint method is called to assign the corresponding material to each pavement sign, and each pavement sign is coded. The coding is determined according to the "Classification and Coding Standard for Civil Transport Airport Engineering Objects" (MHT 5070) and in combination with the actual situation of the project.
[0155] Partial view of the completed 3D model of pavement markings Figure 12 .
[0156] In step S5, the CAD 2D drawing is first read using an external library file, extracting the geometric information of all lines under all panel seam layers. The panel seam layer selection interface is shown below. Figure 13 .
[0157] Based on the 3D pavement structure model generated by S3, select the pavement surface layers to be segmented, extract the outer contour lines and 3D solids of the surface layers, and integrate the outer contour lines with the slab joint lines from the previous step. To reduce the amount of subsequent geometric calculations, based on the relationship between the slab joint lines and the outer contour lines, the slab joint lines are traversed and redundant lines are deleted. The specific operations are as follows:
[0158] (1) The seam line coincides with the outer contour line: Delete the current seam line;
[0159] (2) No intersection between the board seam line and the outer contour line: Use the modified ray intersection method to determine whether the board seam line is outside the outer contour line. Refer to step S1.6 in the instruction manual for specific steps. If so, delete the current board seam line;
[0160] (3) Intersection of board seam line and outer contour line: The board seam line is divided into two independent line segments by the intersection point. The modified ray intersection method is used to determine whether the two line segments are outside the outer contour line. If they are, the corresponding board seam line is deleted.
[0161] After integration, call the Document.Delete method to delete the existing Revit room divider lines and rooms, call the NewRoomBoundaryLines method to convert all integrated lines into Revit room divider lines, call the NewRooms2 method to automatically generate closed room data, and call the GetBoundarySegments method to obtain the outer contour of all closed rooms. This outer contour is the closed outer contour of each panel.
[0162] The closed outer contour of the pavement panel is stretched vertically upwards by 10000m using the CreateExtrusionGeometry method to generate a Boolean operation entity. Then, ExecuteBooleanOperation is called to find the intersection of the Boolean operation entity and the original pavement surface layer 3D entity, generating a pavement block 3D entity, which is then stored as a lightweight DirectShape format.
[0163] Projecting the corner points of the closed outer contour of the pavement panel onto the top surface of the pavement blocks generates corner point positioning points for each block. The specific steps are as follows: traverse each corner point of the current contour, filter out the 3D solid vertices of the pavement block that coincide with the current corner point's planar positioning, obtain the maximum Z-coordinate value among them as the projected Z-coordinate, and add corresponding point elements to the pavement block result based on the corner point's planar positioning and the projected Z-coordinate. After all points are generated, delete the original pavement surface layer.
[0164] The Document.Paint method is called to assign the corresponding material to the pavement blocks, and the pavement blocks are coded. The coding is determined according to the "Classification and Coding Standard for Civil Transport Airport Engineering Objects" (MHT 5070) and in combination with the actual situation of the project.
[0165] Partial view of the completed pavement block 3D model Figure 14 .
[0166] In step S6, the CAD 2D drawing is first read using an external library file, retrieving all line geometry information under each board seam layer. The board seam layer selection interface is shown below. Figure 15 .
[0167] Filter out the corner points that coincide with the planar joint lines. The corner point positioning information can be directly extracted from the pavement block 3D model. Divide the joint lines into multiple short segments, and write the elevation of the corner point positioning points into the segments to generate 3D joint line segments.
[0168] Using the 3D seam line segment as the lofting path, the CreateExtrusionGeometry method is called to generate the 3D model of the seam. For seams other than expansion joints, the lofted section width is 0.8cm and the height is 3cm; the lofted section width for expansion joints is 2cm, and the height is the same as the corresponding plate thickness. After generation, it is saved as a lightweight DirectShape format.
[0169] Call the Document.Paint method to assign the appropriate material to the board seam, and encode the board seam according to the "Classification and Coding Standard for Civil Transport Airport Engineering Objects" (MHT 5070) and the actual situation of the project.
[0170] Partial view of the completed 3D model of the board seam Figure 16 .
[0171] In step S7, the force transmission rod parameters are first configured. This configuration only requires setting the diameter, length, edge distance, and total number of force transmission rods for three common plate side lengths (4.0m, 4.5m, 5.0m). For actual plate side lengths equal to 4.0m / 4.5m / 5.0m, the program will directly call the configured parameters; for actual plate side lengths not equal to 4.0m / 4.5m / 5.0m, the program will select the configuration with the closest length to the actual plate side length and perform parameter transformation to obtain the current plate side length configuration parameters. The force transmission rod parameter configuration interface can be found here. Figure 17 .
[0172] The system reads CAD 2D drawings from an external library and retrieves the geometric information of all force transmission rod lines based on the selected force transmission rod type and its layer. The force transmission rod layer selection interface can be found here. Figure 18 .
[0173] The corner points of the filter block that coincide with the plane of the force transmission rod line are positioned. The force transmission rod line is divided into multiple short line segments. The elevation of the corner points of the filter block is written into the line segments to generate the force transmission rod arrangement positioning line segments.
[0174] Based on the configured total number of force transmission rods and edge distances, locate the center point of each force transmission rod on the force transmission rod layout positioning line segment. Offset the center point of each force transmission rod by half the length of the force transmission rod to both sides of the force transmission rod layout positioning line segment, and connect the two offset points to generate the force transmission rod lofting path. Using the cross-sectional circle of the force transmission rod as the lofting section, call the CreateExtrusionGeometry method to loft and generate the 3D solid of the force transmission rod, and save it as a lightweight DirectShape format.
[0175] The Document.Paint method is called to assign the appropriate material to the force transmission rod, and the force transmission rod is coded. The coding is determined according to the "Classification and Coding Standard for Civil Transport Airport Engineering Objects" (MHT 5070) and in combination with the actual situation of the project.
[0176] Partial view of the completed 3D model of the force transmission rod Figure 16 .
[0177] Compared with existing technologies, this embodiment creates a 3D model starting from 2D CAD drawings, configures relevant modeling parameters based on Revit secondary development, and designers only need to perform a few operations to complete the model creation; the generated 3D model is completely consistent with the 2D CAD drawings, and the model accuracy is high, which is better than existing traditional modeling methods; the 3D model is saved using a lightweight data structure to reduce lag; the program runs faster, and the modeling speed is better than existing traditional modeling methods; design parameters, codes, materials, etc. can be written synchronously, improving the application value of the model throughout its entire life cycle.
[0178] The following are embodiments of the apparatus of the present invention, which can be used to execute embodiments of the method of the present invention. For details not omitted in the apparatus embodiments, please refer to the embodiments of the method of the present invention.
[0179] In another embodiment of the present invention, a three-dimensional modeling system for airport pavement engineering is provided. This system can be used to implement the aforementioned three-dimensional modeling method for airport pavement engineering. Specifically, the three-dimensional modeling system for airport pavement engineering includes:
[0180] The 3D terrain creation module is used to obtain elevation text, terrain grid, and flat area boundary geometric information from the CAD 2D drawings of airport pavement engineering, and to create 3D terrain based on Revit.
[0181] The parameter configuration module is used to configure the pavement structure design parameters in three-dimensional terrain.
[0182] The pavement structure generation module is used to obtain all areas that conform to specific layer naming rules in the CAD 2D drawings of airport pavement engineering, and generate pavement structures by filling areas in the 3D terrain based on Boolean operations.
[0183] The pavement marking generation module is used to obtain pavement marking information from the CAD 2D drawings of airport pavement engineering and project it onto the 3D terrain to generate pavement markings.
[0184] The pavement block generation module is used to obtain the geometric information of the joint lines in the CAD two-dimensional drawings of the airport pavement project, and generate the closed outer contour of each pavement panel according to the pavement structure. It generates pavement blocks in the three-dimensional terrain and obtains the corner point positioning points of the blocks.
[0185] The board seam generation module is used to generate board seams based on the projection of the corner points of the blocks onto the 3D terrain.
[0186] The dowel bar generation module is used to generate dowel bars by projecting the corner points of the blocks onto the 3D terrain and calculating them, thus completing the establishment of the 3D model of the airport pavement project.
[0187] In another embodiment of the present invention, a terminal device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that the processor executes the computer program to implement the steps of the above-described airport pavement engineering three-dimensional modeling method.
[0188] In another embodiment, the present invention also provides a computer-readable storage medium (Memory) storing a computer program, characterized in that the computer program, when executed by a processor, implements the steps of the above-described airport pavement engineering three-dimensional modeling method.
Claims
1. A method for modeling a three-dimensional model of an airport pavement project, characterized in that, The process includes the following: S1: Obtain elevation text, terrain grid, and geometric information of the flattening range boundary from the CAD 2D drawings of the airport pavement project, and create a 3D terrain based on Revit; S2, configures the pavement structure design parameters in three-dimensional terrain; S3: Obtain all areas filled in the CAD 2D drawings of the airport pavement project that conform to the naming rules of a specific layer, and generate the pavement structure by filling the areas in the 3D terrain based on Boolean operations. S3.1 Read the CAD 2D drawing, obtain all area fills that conform to the specific layer naming rules, exclude those with unclosed boundaries, and further filter and classify them; for area fills whose layer name is the same as the specified layer name, classify them as "solid domain fills", and classify other area fills as "cutting domain fills"; S3.2 Extract all the outer contours of "Solid Domain Fill" and "Clipping Domain Fill", determine whether the contour lines intersect, and skip the contour if they intersect. S3.3, filter all terrain surfaces in the 3D terrain, traverse all triangular meshes in the terrain surface, take each triangular mesh as the outer contour, and use the thickness of all different structural layers in the pavement structure design parameters as the distance to stretch downwards to generate a 3D solid, and put the 3D solids of different thicknesses into sets with corresponding names respectively. S3.4, offset the outer contour extracted by "entity domain filling", and the offset distance is obtained by accumulating the outward expansion distance in the pavement structure design parameters; S3.5, based on the generated "solid domain fill" outline before and after offset, stretch the entire outline vertically to generate a solid Boolean operation entity; based on the generated "shear domain fill" outer outline, without any offset, stretch the outline directly vertically to generate a hollow Boolean operation entity. S3.6, perform a difference operation between the generated solid Boolean operation entity and the hollow Boolean operation entity to generate a modified solid Boolean operation entity. The purpose is to ensure that the underlying structure of the selected pavement area does not intrude into other pavement areas. S3.7, find the intersection between the generated modified solid Boolean operation entity and the generated terrain 3D entity. When performing the intersection operation, first select the modified solid Boolean operation entity with the largest outer contour for the operation, and exclude the terrain 3D entity with no intersection result. S3.8, sum up the thickness of each structural layer of the pavement in S2 to obtain the downward movement distance of each structural layer, and perform position transformation on the structural layer; S3.9, Based on the pavement structure parameters in S2, assign corresponding materials to each pavement structure layer and write the corresponding parameters of the structure layer into the three-dimensional model; S4: Obtain pavement marking information from the CAD 2D drawings of the airport pavement project, and project it onto the 3D terrain to generate pavement markings. S5: Obtain the geometric information of the joint lines in the CAD two-dimensional drawings of the airport pavement project, and generate the closed outer contour of each pavement panel according to the pavement structure. Generate pavement blocks in the three-dimensional terrain and obtain the corner point positioning points of the blocks. S6, generate plate seams based on the projection of the block corner points into the three-dimensional terrain; S7: Based on the projection of the corner points of the blocks onto the three-dimensional terrain and the calculation of the force transmission rods, the three-dimensional model of the airport pavement project is established.
2. The method for modeling a three-dimensional airport pavement project according to claim 1, characterized in that, The specific process of S1 is as follows: S1.1 Reads CAD 2D drawing files and reads elevation text, terrain grid, and flat area boundary geometric information according to the specified layer; S1.2, convert the elevation text geometric information into elevation points, normalize the coordinates of the elevation points, and filter and delete duplicate elevation points based on the normalized coordinate values; S1.3, For the acquired terrain grid, calculate the intersection points between grid lines; S1.4, traverse the intersections and elevation points of the terrain grid, and move the elevation point to the nearest terrain grid intersection; S1.5, call the TopographySurface.Create method in Revit to generate the initial terrain; S1.6 Extract the triangular faces of the generated initial terrain, delete the triangular faces outside the flattened range boundary, and generate the final three-dimensional terrain.
3. The method for modeling a three-dimensional model of airport pavement engineering according to claim 1, characterized in that, The specific process of S4 is as follows: S4.1 Select the pavement marking category to be generated; S4.2 filters all terrain surfaces in the 3D terrain and extracts all triangles on the terrain surfaces; S4.3 reads CAD 2D drawings. During the reading process, the layer name and data type are automatically configured according to the pavement marking category selected in S4.
1. S4.4, Based on the geometric information and attributes obtained in step S4.3, generate the path or outer contour for pavement marking generation; S4.5: Loft the generated pavement sign path with the sign width as the loft section width to generate a 3D pavement sign solid; extrude the generated pavement sign outer contour vertically to generate a Boolean operation solid, and then find the intersection with the triangle extracted in S4.2 to generate a 3D pavement sign solid; S4.6, based on the pavement marking category selected in S4.1, assign relevant design parameters, codes, and corresponding materials to the generated results.
4. The method for modeling a three-dimensional model of airport pavement engineering according to claim 1, characterized in that, The specific process of S5 is as follows: S5.1 reads CAD 2D drawings and obtains the geometric information of all board seam lines based on the selected layer; S5.2 Based on the pavement structure generated in S3, select the pavement surface layer to be divided into blocks, and extract its outer contour lines and three-dimensional solids. Integrate the outer contour lines and slab joint lines into a set of pavement block boundary lines, and perform closed region analysis based on this set to generate the closed outer contour of each pavement panel. S5.3, based on the generated closed outer contour of the track panel, stretch it vertically to generate a Boolean operation entity; S5.4, intersect the generated Boolean operation entity with the 3D entity of the pavement surface layer extracted in S5.2 to generate a pavement block 3D entity, and store it in a lightweight format; S5.5, Based on the closed outer contour of the track panel generated in S5.2, extract its contour corner points, and project the corner points vertically to the top of the corresponding block as the block corner point positioning points; S5.6, based on the pavement surface layer information, pavement block naming and coding rules, assign relevant design parameters, codes and corresponding materials to the generated results.
5. The method for modeling a three-dimensional model of airport pavement engineering according to claim 1, characterized in that, The specific process of S6 is as follows: S6.1 uses external library files to read CAD 2D drawings and obtains the geometric information of all board joint lines according to the selected board joint type and its layer; S6.2, filter out the corner points that coincide with the plane of the board seam line, divide the board seam line into multiple short line segments, write the elevation of the corner points into the line segments, and generate a three-dimensional board seam line segment. S6.3, Based on the generated three-dimensional board seam line segments and corresponding board seam types, lay out and generate a three-dimensional model of the board seam; S6.4, based on the set board seam information, assign relevant design parameters, codes and corresponding materials to the generated results.
6. The method for modeling a three-dimensional model of airport pavement engineering according to claim 1, characterized in that, The specific process of S7 is as follows: S7.1, Configure the force transmission rod parameters; S7.2, reads the CAD 2D drawing and obtains the geometric information of all force transmission rod lines according to the selected force transmission rod type and its layer; S7.3, filter the corner points of the block that coincide with the plane of the force transmission rod line, connect the positioning points in sequence according to the plane distance between the positioning points and the starting point of the force transmission rod line, and project to generate the positioning line segment for the arrangement of the force transmission rod; S7.4, Arrange positioning line segments according to the generated force transmission rod, generate the center point of the force transmission rod according to the configuration parameters, generate the force transmission rod layout path according to the center point, and generate the three-dimensional solid of the force transmission rod through layout. S7.5, based on the configured force transmission rod parameters, assign relevant design parameters, codes, and corresponding materials to the generated results.
7. A three-dimensional modeling system for airport pavement engineering, characterized in that, include: The 3D terrain creation module is used to obtain elevation text, terrain grid and flat area boundary geometric information from the CAD 2D drawings of airport pavement engineering, and create 3D terrain based on Revit; The parameter configuration module is used to configure the pavement structure design parameters in three-dimensional terrain. The pavement structure generation module is used to obtain all areas that conform to specific layer naming rules in the CAD 2D drawings of airport pavement engineering, and generate pavement structures by filling areas in 3D terrain based on Boolean operations. The specific process is as follows: The system reads CAD 2D drawings, retrieves all area fills that conform to specific layer naming rules, excludes cases with unclosed boundaries, and further filters and categorizes them; area fills whose layer names are the same as the specified layer names are categorized as "solid domain fills", while other area fills are categorized as "cutting domain fills". Extract all the outer contours of "solid domain fill" and "cutting domain fill", determine whether the contour lines intersect, and skip the contour if they intersect. Filter all terrain surfaces in the 3D terrain, traverse all triangular meshes in the terrain surface, take each triangular mesh as the outer contour, and use the thickness of all different structural layers in the pavement structure design parameters as the distance to stretch downwards to generate 3D solids. Place the 3D solids of different thicknesses into sets with corresponding names. The outer contour extracted by "entity domain filling" is offset, and the offset distance is obtained by accumulating the outward expansion distance in the pavement structure design parameters; Based on the generated "solid domain fill" outline before and after offset, the entire outline is stretched vertically to generate a solid Boolean operation entity; based on the generated "shear domain fill" outer outline, without any offset, the outline is stretched vertically directly to generate a hollow Boolean operation entity. The generated solid Boolean operation entity is subjected to a difference operation with the hollow Boolean operation entity to generate a modified solid Boolean operation entity. The purpose is to ensure that the underlying structure of the selected pavement area does not intrude into other pavement areas. The intersection of the generated modified solid Boolean operation entity and the generated terrain 3D entity is calculated. When performing the intersection operation, the modified solid Boolean operation entity with the largest outer contour is selected first for the operation, and the terrain 3D entity with no intersection result is excluded. The thickness of each structural layer of the pavement in the parameter configuration module is accumulated to obtain the downward movement distance of each structural layer, and the position of the structural layer is transformed. Based on the pavement structure parameters in the parameter configuration module, assign corresponding materials to each pavement structure layer and write the corresponding parameters of the structure layer into the 3D model; The pavement marking generation module is used to obtain pavement marking information from the CAD two-dimensional drawings of airport pavement engineering and project it into the three-dimensional terrain to generate pavement markings. The pavement block generation module is used to obtain the geometric information of the joint lines in the CAD two-dimensional drawings of the airport pavement project, and generate the closed outer contour of each pavement panel according to the pavement structure. It generates pavement blocks in the three-dimensional terrain and obtains the corner point positioning points of the blocks. The board seam generation module is used to generate board seams based on the projection of the corner points of the blocks onto the 3D terrain. The dowel bar generation module is used to generate dowel bars by projecting the corner points of the blocks onto the 3D terrain and calculating them, thus completing the establishment of the 3D model of the airport pavement project.
8. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the airport pavement engineering three-dimensional modeling method as described in any one of claims 1 to 6.
9. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by the processor, it implements the steps of the three-dimensional modeling method for airport pavement engineering as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Road three-dimensional model modeling method based on lane-level high-precision map
CN108921943A
Airport pavement modeling method based on BIM technology
CN113468637A
Three-dimensional point cloud quantitative automatic identification method and system for surface flat steel deformation of earth and rockfill dam
CN115420209A