Method and device for drawing plane display drawing of tunnel structural plane based on CAD (Computer Aided Design)

By guiding users to select tunnel axis and cross-section lines in CAD software, automatically constructing the tunnel structural surface and calculating intersection points, the problem that existing CAD software is difficult to quickly and accurately draw the tunnel structural surface plan display diagram, and efficient and accurate images are achieved generate.

CN119416304AActive Publication Date: 2025-02-11POWER CHINA KUNMING ENG CORP LTD +1
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
CN202411410518.2
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-10
Publication Date
2025-02-11
Estimated Expiration
2044-10-10

AI Technical Summary

Technical Problem

Existing CAD software is difficult to quickly and accurately draw the plane display of tunnel structural surfaces, especially when facing the complexity and diversity of tunnel structural surfaces.

Method used

By guiding users to select tunnel axis and cross-section lines in CAD software, automatically read and verify the validity of the data, use surface stretching operations to generate a tunnel tensile surface model, the user inputs structural surface production parameters, and automatically constructs the tunnel structural surface. And calculate the intersection points to form a plan display diagram.

Benefits of technology

It realizes efficient and accurate generation of tunnel structure plan display maps, improves drawing efficiency and accuracy, and meets the needs of tunnel design and geological condition analysis.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119416304A_ABST
    Figure CN119416304A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of computer aided design, in particular to a method and device for drawing a tunnel structural plane plane display drawing based on CAD, and relates to drawing of a tunnel structural plane plane display drawing in the geological exploration industry. The method comprises the following steps: sequentially selecting dew point positions of a tunnel axis, a tunnel cross section and a tunnel structural surface on the tunnel axis and the tunnel cross section in CAD software, and giving corresponding occurrence information; and a plane display graph of the tunnel structural plane can be rapidly drawn through a series of operations such as tunnel stretching plane creation, structural plane generation, tunnel and structural plane interaction analysis and model space result display. Compared with a traditional drawing method of the plane display diagram of the tunnel structural plane, the drawing method is more efficient and accurate, and an effective tool is provided for tunnel design and geological condition analysis.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of computer-aided design, and in particular to a method and device for drawing a plan display diagram of a tunnel structure surface based on CAD. Background Art

[0002] During the design and construction phase of a tunnel project, accurate depiction of the tunnel structure surface is a key task to ensure the safety and quality of the project. Traditional tunnel structure surface planar displays are highly dependent on manual labor, which is not only time-consuming and labor-intensive, but also prone to errors.

[0003] With the development of CAD technology, although the drawing efficiency has been improved to a certain extent, the functions of existing CAD software are still insufficient due to the complexity and diversity of tunnel structural surfaces, and it is difficult to meet the needs of quickly and accurately drawing plane display drawings of tunnel structural surfaces. Summary of the invention

[0004] The main purpose of this application is to provide a method and device for drawing a plan view of a tunnel structure surface based on CAD, which realizes the efficient and accurate generation of a plan view of a tunnel structure surface by integrating automated data processing, geometric calculation and graphics drawing functions.

[0005] To achieve the above objectives, this application provides the following technical solutions:

[0006] According to a first aspect of the present invention, the present invention claims a method and device for drawing a plan display diagram of a tunnel structure surface based on CAD, comprising:

[0007] The CAD software interface guides the user to select the tunnel axis line and the tunnel cross-section line in sequence, and automatically reads and verifies the data validity of the tunnel axis line and the tunnel cross-section line;

[0008] Based on the selected tunnel axis line and tunnel cross-section line, automatically generate a tunnel stretch surface model using a surface stretching operation;

[0009] The user inputs the structural surface occurrence parameters through the interactive interface, and the tunnel structural surface is automatically constructed according to the structural surface occurrence parameters;

[0010] Evenly dividing the tunnel axis line and the tunnel cross-section line according to a specified number of segments to generate a plurality of dividing lines, and calculating the intersection points between the dividing lines and the tunnel structural surface;

[0011] According to the calculated intersection points, lines are automatically connected to form a plane display diagram of the tunnel structure surface in the direction of the tunnel axis, and auxiliary information is drawn to present the distribution of the tunnel structure surface;

[0012] The generated plan display diagram is output to the CAD model space, and the user can edit, annotate or export the graphic file as needed to apply it to the required scene.

[0013] Furthermore, when guiding the user to select the tunnel axis line and the tunnel cross-section line in sequence through the CAD software interface, and automatically reading and verifying the data validity of the tunnel axis line and the tunnel cross-section line, it also includes:

[0014] In the CAD software, the tunnel axis line and the tunnel cross-section line selected by the user are respectively received, and the direction vector of the tunnel axis is calculated;

[0015] According to the tunnel axis line and the tunnel cross-section line, performing two rotation operations on the tunnel cross-section line so that the direction of the tunnel cross-section line is consistent with that of the tunnel axis line;

[0016] Furthermore, based on the selected tunnel axis line and tunnel cross-section line, when the tunnel stretching surface model is automatically generated using the surface stretching operation, it also includes:

[0017] The direction vector of the tunnel axis and the tunnel cross section obtained after rotation are obtained, and a three-dimensional tunnel extruded surface is created using the CreateExtrudedSurface function.

[0018] Furthermore, when the user inputs the structural surface occurrence parameters through the interactive interface and automatically constructs the tunnel structural surface according to the structural surface occurrence parameters, it also includes:

[0019] Select the specific point positions of the structural surface exposure on the tunnel axis line and the tunnel cross section respectively, and input the strike, strike angle, dip and inclination information of the structural surface;

[0020] The tunnel structural surface is generated according to the specific location of the structural surface exposure point and its occurrence information.

[0021] Furthermore, when the tunnel axis line and the tunnel cross-section line are uniformly divided into a specified number of segments to generate a plurality of dividing lines, and the intersection points between the dividing lines and the tunnel structural surface are calculated, the method further includes:

[0022] Convert the generated tunnel structure surface into a surface domain, and calculate the normal vector of the surface domain;

[0023] Evenly divide the tunnel section line and the tunnel axis line according to the specified number of segments to generate a series of dividing lines;

[0024] For each segmentation line of the tunnel cross section, the intersection point between the segmentation line and the tunnel structural surface is calculated to determine the specific position and shape of the tunnel structural surface inside the tunnel.

[0025] Furthermore, according to the calculated intersection points, automatically connecting lines to form a plane display diagram of the tunnel structure surface in the tunnel axis direction, which is used to display the distribution of the tunnel structure surface on the plane diagram, also includes:

[0026] Check whether the intersection point is located on the dividing line of the tunnel section. If it is on the dividing line, calculate the corresponding point of the intersection point on the tunnel section expansion line according to the specific position of the intersection point on the tunnel section, combined with the tunnel axis direction and the tunnel geometry, and save it in the point set;

[0027] Use the point information in the point set to draw a 3D polyline to represent the unfolding line of the tunnel structure surface.

[0028] Furthermore, the method further comprises:

[0029] Add the point information in the 3D polyline and point set to the model space of the CAD software to achieve visual display and complete the drawing of the plane display diagram of the tunnel structure surface;

[0030] Users can edit, annotate or export graphic files as needed for use in engineering report preparation and construction guidance scenarios.

[0031] According to a second aspect of the present invention, the present invention claims a method and device for drawing a plan view of a tunnel structure surface based on CAD, comprising:

[0032] one or more processors;

[0033] A memory having one or more programs stored thereon, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the method and device for drawing a CAD-based tunnel structure surface plan display diagram.

[0034] The present application relates to the field of computer-aided design technology, and in particular to a method and device for drawing a plane display diagram of a tunnel structure surface based on CAD, and to drawing a plane display diagram of a tunnel structure surface in the geological survey industry. In the CAD software, the tunnel axis, tunnel section, and the exposed point positions of the tunnel structure surface on the tunnel axis and tunnel section are selected in sequence, and the corresponding occurrence information is given. Then, a plane display diagram of the tunnel structure surface can be quickly drawn through a series of operations such as creating a tunnel stretching surface, generating a structure surface, interactive analysis of the tunnel and the structure surface, and displaying the model space results. Compared with the traditional method for drawing a plane display diagram of a tunnel structure surface, the present invention provides a more efficient and accurate drawing method, which provides an effective tool for tunnel design and geological condition analysis. BRIEF DESCRIPTION OF THE DRAWINGS

[0035] Figure 1A workflow diagram of a method and device for drawing a plan view of a tunnel structure surface based on CAD as claimed in an embodiment of the present application;

[0036] Figure 2 A schematic diagram of tunnel axis and cross-sectional lines of a method and device for drawing a plan display diagram of a tunnel structure surface based on CAD as claimed in an embodiment of the present application;

[0037] Figure 3 A tunnel structure surface plan display diagram of a method and device for drawing a tunnel structure surface plan display diagram based on CAD as claimed in an embodiment of the present application. DETAILED DESCRIPTION

[0038] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0039] The terms "first", "second" and "third" in this application are only used for descriptive purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of indicated technical features. Thus, the features defined as "first", "second" and "third" can explicitly or implicitly include at least one of the features. In the description of this application, the meaning of "multiple" is at least two, such as two, three, etc., unless otherwise clearly and specifically defined. All directional indications in the embodiments of the present application (such as up, down, left, right, front, back...) are only used to explain the relative position relationship, movement, etc. between the components under a certain specific posture (as shown in the accompanying drawings). If the specific posture changes, the directional indication also changes accordingly. In addition, the terms "including" and "having" and any of their variations are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device that includes a series of steps or units is not limited to the listed steps or units, but optionally also includes steps or units that are not listed, or optionally also includes other steps or units inherent to these processes, methods, products or devices.

[0040] Reference to "embodiments" herein means that a particular feature, structure, or characteristic described in conjunction with the embodiments may be included in at least one embodiment of the present application. The appearance of the phrase in various locations in the specification does not necessarily refer to the same embodiment, nor is it an independent or alternative embodiment that is mutually exclusive with other embodiments. It is explicitly and implicitly understood by those skilled in the art that the embodiments described herein may be combined with other embodiments.

[0041] According to the first embodiment of the present invention, the present invention claims a method and device for drawing a tunnel structure plane display diagram based on CAD, referring to Figure 1 ,include:

[0042] S101, guiding the user to select tunnel axis lines and tunnel cross-section lines in sequence through the CAD software interface, and automatically reading and verifying the data validity of the tunnel axis lines and tunnel cross-section lines;

[0043] S102, based on the selected tunnel axis line and tunnel cross-section line, automatically generate a tunnel stretching surface model using a surface stretching operation;

[0044] S103, the user inputs structural surface occurrence parameters through the interactive interface, and automatically constructs the tunnel structural surface according to the structural surface occurrence parameters;

[0045] S104, uniformly dividing the tunnel axis line and the tunnel cross-section line according to a specified number of segments to generate a plurality of dividing lines, and calculating intersection points between the dividing lines and the tunnel structural surface;

[0046] S105, automatically connecting lines according to the calculated intersection points to form a plane display diagram of the tunnel structure surface in the tunnel axis direction, so as to display the distribution of the tunnel structure surface on the plane diagram;

[0047] S106, outputting the generated plan display diagram to the CAD model space, and the user can edit, annotate or export the graphic file as needed to apply it to the required scene.

[0048] Furthermore, S101 also includes:

[0049] In the CAD software, the tunnel axis line and the tunnel cross-section line selected by the user are respectively received, and the direction vector of the tunnel axis is calculated;

[0050] According to the tunnel axis line and the tunnel cross-section line, performing two rotation operations on the tunnel cross-section line so that the direction of the tunnel cross-section line is consistent with that of the tunnel axis line;

[0051] In this embodiment, the PromptEntityOptions and PromptEntityResult classes are used to interact with the user, and the user is prompted to select a polyline as the tunnel axis and a tunnel section line without a bottom plate, and the above two objects are stored in the variables zhouxiangx and pl0 respectively;

[0052] Encapsulate the tunnel axis and tunnel section lines in the PromptEntityResult object, retrieve these objects from the database by calling the GetObject method, and ensure that they are of Polyline type through type checking. Then use the GetVectorTo method to calculate the vector xld1 between the starting point zhouxiangx.StartPoint and the end point zhouxiangx.EndPoint of the tunnel axis as the direction vector of the tunnel axis.

[0053] Calculate the average value of the starting and ending point coordinates of the tunnel section line pl0 to obtain the center point sdjmdbzd of the tunnel section, and use the GetVectorTo method to calculate the vector sdjmysxl from the center point sdjmdbzd of the tunnel section to the starting point zhouxiangx.StartPoint of the tunnel axis; use the GetAngleTo method to calculate the angle xlang0 between the vector sdjmysxl from the center point sdjmdbzd of the tunnel section to the starting point zhouxiangx.StartPoint of the axis and the tunnel axis direction vector xld1.

[0054] The custom "Rotate" method is used to realize the rotation of the tunnel section line. This method creates a rotation matrix mt based on the rotation angle, rotation axis and rotation base point parameters through Matrix3d.Rotation, and then uses TransformBy to apply the rotation matrix mt to the tunnel section line object to realize the rotation function, and then obtain the rotated tunnel section line pl. During the first rotation, the rotation angle xlang is set to 90° (Math.PI*90.0 / 180.0), the rotation axis is set to the X axis (newVector3d(1,0,0)), and the rotation base point is set to the center point of the tunnel section line (sdjmdbzd), placing the tunnel section line in a position that is convenient for subsequent rotation around the Z axis. During the second rotation, the rotation angle xlang is calculated based on the angle between the center point of the tunnel section line and the tunnel axis direction vector. This angle is adjusted according to the direction of the tunnel axis. When the tunnel axis direction is from left to right, the rotation angle xlang is xlang0, and when the tunnel axis direction is from right to left, the rotation angle xlang is -xlang0. The rotation axis is set to the Z axis (newVector3d(0,0,1)), and the rotation base point is set to the starting point of the tunnel axis, zhouxiangx.StartPoint. Ensure that the tunnel section lines after two rotations are consistent with the direction of the tunnel axis.

[0055] Furthermore, S102 also includes:

[0056] The direction vector of the tunnel axis and the tunnel cross section obtained after rotation are obtained, and a three-dimensional tunnel extruded surface is created using the CreateExtrudedSurface function.

[0057] In this embodiment, the creation of the three-dimensional tunnel extrusion surface is realized by calling the custom "NewExtrudedSurface" method. The method accepts two main parameters: the entity object of the extrusion profile (tunnel cross-section line) and the vector of the extrusion direction (xld1), and uses the CreateExtrudedSurface function to extrude the rotated tunnel cross-section line along the tunnel axis to generate a three-dimensional tunnel extrusion surface sdm.

[0058] Furthermore, S103 also includes:

[0059] Select the specific point positions of the structural surface exposure on the tunnel axis line and the tunnel cross section respectively, and input the strike, strike angle, dip and inclination information of the structural surface;

[0060] The tunnel structural surface is generated according to the specific location of the structural surface exposure point and its occurrence information.

[0061] In this embodiment, the PromptPointOptions class is used to create an option object that prompts the user to enter a point, the GetPoint method of the Editor object is used to prompt and wait for the user to enter point information, and the point entered by the user is returned through the PromptPointResult object and saved in the corresponding variable. Through this method, the exposed point position on the tunnel axis is saved in the variable chuludianwz, and the exposed point position on the tunnel section is saved in the variable jmcldzb.

[0062] The GetKeywords function is used to obtain the strike and dip information of the tunnel structure surface input by the user, and save them in the variables dianzoux and dianqingx respectively. In the process, the PromptKeywordOptions object is used to list all keywords ("NE", "NW", "SE", "SW"), and displayed to the user through the GetKeywords method of the Editor class, so that the user can select from the predefined keyword list. The GetAngle function is used to obtain the strike angle and dip angle input by the user, and save them in the variables zxjiao and dianqingj respectively.

[0063] The user-defined "jgmdianjimian" method is called to calculate and generate the structural surface according to the specific point position (chuludianwz), strike keyword (dianzoux), strike angle (zxjiao), dip keyword (dianqingx) and dip angle (dianqingj) information input by the user on the tunnel axis, which specifically includes the following steps:

[0064] (1) Define a point set: First, a point set jiegoupos of type Point3dCollection is created within the method to store the four vertices of the structural surface.

[0065] (2) Calculate the vertices of the structural surface: According to the specific point position chuludianwz of the structural surface exposed on the tunnel axis input by the user and the given structural surface length jgmchangdu and width jgmkuandu (both set to 100) parameters, calculate the half-length banchang and half-width bankuan of the structural surface (banchang = jgmchangdu / 2, bankuan = jgmkuandu / 2), and then obtain the coordinates of the four vertices of the structural surface as shown below, and add these vertex information to the jiegoupos set.

[0066] (chuludianwz.X-banchang,chuludianwz.Y+bankuan,chuludianwz.Z);

[0067] (chuludianwz.X-banchang,chuludianwz.X-bankuan,chuludianwz.Z);

[0068] (chuludianwz.X+banchang,chuludianwz.X+bankuan,chuludianwz.Z);

[0069] (chuludianwz.X+banchang,chuludianwz.X-bankuan,chuludianwz.Z).

[0070] (3) Create a three-dimensional polyline: Using the point information in the jiegoupos collection, a three-dimensional polyline jxjgbjx is created through the Polyline3d class to represent the boundary of the structural surface.

[0071] (4) Generate structural surface: Generate structural surface jgmian according to the three-dimensional polyline jxjgbjx by calling Surface.CreateFrom(jxjgbjx) method. Here, Surface.CreateFrom method is a static method used to create a surface object according to one or more curve objects.

[0072] (5) Rotate the structural surface: According to the occurrence information input by the user, call the custom "Rotate" method to rotate the generated structural surface. This method receives the entity object, rotation base point, rotation angle and rotation axis as parameters, and realizes the rotation of the structural surface by constructing a rotation matrix and applying it to the entity. The entity object in the rotation matrix is ​​the structural surface jgmian, the rotation base point is the outcrop chuludianwz, and the rotation angle and rotation axis parameters are related to the occurrence information of the structural surface, as shown in Table 1:

[0073] Table 1 Relationship between rotation angle and rotation axis parameters and occurrence information of structural surface

[0074]

[0075] (6) Returning the structural surface: Finally, the function returns the structural surface object jgmian obtained after two rotations, which is the generated structural surface;

[0076] Figure 2 It is the plane position of the tunnel axis and the cross-sectional line of the tunnel in the CAD software. The specific position of the structural surface exposed on the tunnel axis and the cross-sectional line of the tunnel is also marked in the figure.

[0077] Furthermore, S104 also includes:

[0078] Convert the generated tunnel structure surface into a surface domain, and calculate the normal vector of the surface domain;

[0079] Evenly divide the tunnel section line and the tunnel axis line according to the specified number of segments to generate a series of dividing lines;

[0080] For each segmentation line of the tunnel cross section, the intersection point between the segmentation line and the tunnel structural surface is calculated to determine the specific position and shape of the tunnel structural surface inside the tunnel.

[0081] In this embodiment, the generated structural surface object jgmian is converted into a surface region object array by calling the Surface.ConvertToRegion method, which returns a DBObjectCollection array named mianyu, which contains all surface region objects. Then, the normal vector mianxl of the surface region is obtained by traversing the mianyu array and accessing the Normal property of each surface region object.

[0082] The tunnel section line and tunnel axis are divided by calculating the starting and ending parameters of the line and dividing it equally according to the specified number of segments fenduans (set to 100). The tunnel section line pl0 is divided by calculating the starting parameter pl0.StartParam of the section line and the increment of each length parameter zdcanshuf=(pl0.EndParam-pl0.StartParam) / fenduans, and using pl0.GetPointAtParameter(pl0.StartParam+zdcanshuf*j) to obtain each division point; the tunnel axis is divided similarly, by calculating the starting parameter zhouxiangx.StartParam of the axis and the increment of the length parameter sdqdxf=(zhouxiangx.EndParam-zhouxiangx.StartParam) / fenduans, and using zhouxiangx.GetPointAtParameter(zhouxiangx.StartParam+sdqdxf*j) to obtain each division point.

[0083] The calculation of the intersection between the tunnel section dividing line and the tunnel structural surface is realized by calling the custom IntersectWithLineAndPlane method. In the loop body, for each segment of the tunnel section dividing line pl, a straight line jiaoxianxt is constructed from the starting point of the segment to the point obtained by translating the vector xld1, and then the IntersectWithLineAndPlane method is called to calculate the intersection between this straight line and the tunnel structural surface and return the calculation result, where the tunnel structural surface is defined by a point chuludianwz on the structural surface and its normal vector mianxl. The specific process of finding the intersection is as follows:

[0084] (1) First, calculate the dot product of the direction vector dianxl of the line and the normal vector mianxl of the plane. If the result is 0, that is, denominator = dianxl.X*mianxl.X+dianxl.Y*mianxl.Y+dianxl.Z*mianxl.Z = 0, it means that the line is parallel to the plane, and the return value is false, indicating that the intersection does not exist. The process of obtaining the direction vector dianxl of the line is as follows: 1) Calculate the starting point of the segmented line Point3d diyidian = pl.GetPointAtParameter(pl.StartParam+zdcanshuf*j); 2) Calculate the point obtained by translating the starting point of the segmented line through the vector xld1 Point3d dierdian = diyidian.Add(xld1); 3) Calculate the direction vector Vector3ddianxl of the segmented line Vector3ddianxl = diyidian.GetVectorTo(dierdian).

[0085] (2) If the line and the plane are not parallel, the intersection of the line and the plane is calculated through the following process: 1) First calculate the distance d = ((chuludianwz.X-diyidian.X)*mianxl.X+(chuludianwz.Y-diyidian.Y)*mianxl.Y+(chuludianwz.Z-diyidian.Z)*mianxl.Z) / denominator from the starting point diyidian of the line pl along the direction vector dianxl of the line; 2) Calculate the X, Y, and Z values ​​of the intersection coordinates: intjdx = diyidian.X+dianxl.X*d, intjdy = diyidian.Y+dianxl.Y*d, intjdz = diyidian.Z+dianxl.Z*d; 3) Return the intersection information: intersection = newPoint3d(intjdx, intjdy, intjdz) to complete the calculation of the intersection of the line and the plane.

[0086] The specific position and shape of the structural surface inside the tunnel are indirectly represented by the intersection of the structural surface inside the tunnel with the tunnel section decomposition line. After the intersection calculation is completed, the intersection information is saved to the collection p3ddc through the p3ddc.Add(xiantjd) method, and the distribution of the structural surface in the tunnel is visualized by drawing a polyline connected by the intersection.

[0087] Furthermore, S105 also includes:

[0088] Check whether the intersection point is located on the dividing line of the tunnel section. If it is on the dividing line, calculate the corresponding point of the intersection point on the tunnel section expansion line according to the specific position of the intersection point on the tunnel section, combined with the tunnel axis direction and the tunnel geometry, and save it in the point set;

[0089] Use the point information in the point set to draw a 3D polyline to represent the unfolding line of the tunnel structure surface.

[0090] Among them, in this embodiment, the loop body calculates the distance between the midpoint of the current tunnel section splitting line and the intersection point double jdzhizdjg = GetDistance(xiantjd,jiaoxianxt.GetPointAtDist(jiaoxianxt.Length / 2)), and compares the distance with half the length of the splitting line of this section of the tunnel. If the distance is less than half the length of the splitting line, it is considered that the intersection point is above the splitting line, otherwise the intersection point is located on the extension line of the splitting line. This is because the distance from the midpoint of the line segment to any point on the line segment will not exceed half the length of the line segment.

[0091] If the intersection is determined to be on the tunnel section dividing line in the loop body, the closest point sdjmtyd of the intersection on the tunnel section line pl is found through the pl.GetClosestPointTo(xiantjd,false) method. Then the distance ldjg from the intersection to the closest point sdjmtyd is calculated, and the corresponding point is found on the tunnel section expansion line sdzhansxt through the sdzhansxt.GetPointAtDist(ldjg) method, which is the projection point of the intersection on the tunnel section expansion line. Among them, the tunnel section expansion line sdzhansxt is obtained based on the rotated tunnel section line pl and the tunnel axis vector xld1, as follows:

[0092] (1) First, calculate the scaling factor sfbl, which is the ratio of the length of the tunnel section line to the length of the bottom plate line, that is, pl.Length / pl.StartPoint.DistanceTo(pl.EndPoint). Then scale the starting point and end point of the tunnel section line according to this ratio and connect them into new lines to construct the line in the direction of the tunnel axis, that is, szzxqsxt=newLine(pl.StartPoint.ScaleBy(sfbl,zhouxiangx.StartPoint),pl.EndPoint.ScaleBy(sfbl,zhouxiangx.StartPoint)).

[0093] (2) Calculate the segmentation parameters of the tunnel axis direction line sddiyidiancs = szzxqsxt.StartParam + sdqdxf*j, and use the sddiyidian = szzxqsxt.GetPointAtParameter(sddiyidiancs) method to calculate the starting coordinates of the tunnel expansion line (when the current segment is the position at both ends of the tunnel direction line, the starting coordinates of the tunnel expansion line sddiyidian = szzxqsxt.GetPointAtParameter(sddiyidiancs-0.00000001)), and apply the tunnel axis direction vector xld1 based on the starting point of the tunnel display line to obtain the end point of the tunnel display line Point3dsddierdian = sddiyidian.Add(xld1).

[0094] (3) According to the starting and ending coordinates of the tunnel expansion line, create the expansion line Linesdzhansxt=newLine(sddiyidian,sddierdian) of the tunnel section in the direction of the tunnel axis.

[0095] When ldjg is greater than the length of the tunnel section expansion line (sdzhansxt.Length), it means that the intersection point is on the extension line of the expansion line. At this time, an extension factor yanshencs (doubleyanshencs=sdzhansxt.Length / ldjg) is calculated, and the sddierdian.ScaleBy(yanshencs,diyidian) method is used to take diyidian as the base point and scale it according to the yanshencs ratio to obtain the extended point zhanshid. Finally, the p3dc.Add(zhanshid) method is used to add the corresponding points found to the collection p3dc, and a Polyline3d object is created using the points in the collection to represent the expansion line of the tunnel section.

[0096] Furthermore, S106 also includes:

[0097] Add the point information in the 3D polyline and point set to the model space of the CAD software to achieve visual display and complete the drawing of the plane display diagram of the tunnel structure surface;

[0098] Reference Figure 3 , is the drawing result of the tunnel structure plane display diagram, where the red lines are the drawn tunnel structure plane display lines. Users can edit, annotate or export graphic files as needed for engineering report preparation and construction guidance scenarios.

[0099] Among them, in this embodiment, by calling the custom ToModelSpace method, the three-dimensional polyline entity and the point information in the point set are added to the model space of the current active CAD document respectively, so as to realize the visual display, thereby completing the drawing of the plane display diagram of the tunnel structure surface. The ToModelSpace method receives an entity object as a parameter and adds it to the model space of the current document. This is done by starting a transaction (Transaction), obtaining a reference to the model space (BlockTableRecord) in the transaction, and then calling the AppendEntity method to add the entity to the model space, and submitting the transaction.

[0100] The specific method used in this embodiment is summarized as follows:

[0101] 1. Data input and preprocessing:

[0102] 1) Use the PromptEntityOptions and PromptEntityResult classes to create a user interface to guide the user to select the tunnel section line (pl0) and the axis line (zhouxiangx) respectively.

[0103] 2) Check whether the selected line is of Polyline type and calculate the axis vector (xld1).

[0104] 2. Tunnel extrusion surface generation:

[0105] 1) In the Addsdqm() function, rotate the tunnel section lines to align with the axis direction.

[0106] 2) Use the NewExtrudedSurface() function to stretch the rotated cross-section lines along the axial direction to generate the tunnel extrusion surface (sjdx).

[0107] 3. Structural surface parameter input and model construction:

[0108] 1) Get the structural surface direction, dip keywords, strike angle and dip angle information input by the user through the GetKeywords() and GetAngle() functions.

[0109] 2) In the jiegoumian() function, the jgmdianjimian() function is called according to the user input parameters to generate the structural surface model (chulm).

[0110] 4. Tunnel sectioning and intersection calculation:

[0111] 1) According to the preset section spacing fenduans, the tunnel section line is sectioned along the axis direction to obtain each section point.

[0112] 2) For each section line, use the IntersectWithLineAndPlane() function to calculate the intersection of the section line and the structural surface.

[0113] 5. Drawing of plane display diagram:

[0114] 1) Connect the calculated intersection points in sequence to form a plane display line of the structural surface in the direction of the tunnel axis.

[0115] 2) Use the ToModelSpace() function to output the plane display lines and related auxiliary information to the CAD model space for display.

[0116] 6. Result output and post-processing:

[0117] Users can directly view the generated tunnel structure surface plan display in the CAD software and can further edit, annotate or export the graphic file as needed.

[0118] According to a second embodiment of the present invention, the present invention claims a method and device for drawing a plan display diagram of a tunnel structure surface based on CAD, comprising:

[0119] one or more processors;

[0120] A memory having one or more programs stored thereon, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement the method and device for drawing a CAD-based tunnel structure surface plan display diagram.

[0121] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.

[0122] In addition, each functional unit in each embodiment of the present application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of software functional units. The above is only an implementation method of the present application, and does not limit the patent scope of the present application. Any equivalent structure or equivalent process transformation made using the contents of the specification and drawings of this application, or directly or indirectly used in other related technical fields, is also included in the patent protection scope of the present application.

[0123] The specific implementation methods of the invention are described in detail above, but they are only examples, and the present application is not limited to the specific implementation methods described above. For those skilled in the art, any equivalent modification or substitution of the invention is also within the scope of the present application, and therefore, the equalization, modification, and improvement made without departing from the spirit and principle of the present application should be included in the scope of the present application.

Claims

1. A method and device for drawing a plan view of a tunnel structure surface based on CAD, characterized in that: include: The CAD software interface guides the user to select the tunnel axis line and the tunnel cross-section line in sequence, and automatically reads and verifies the data validity of the tunnel axis line and the tunnel cross-section line; Based on the selected tunnel axis line and tunnel cross-section line, automatically generate a tunnel stretch surface model using a surface stretching operation; The user inputs the structural surface occurrence parameters through the interactive interface, and the tunnel structural surface is automatically constructed according to the structural surface occurrence parameters; Evenly dividing the tunnel axis line and the tunnel cross-section line according to a specified number of segments to generate a plurality of dividing lines, and calculating the intersection points between the dividing lines and the tunnel structural surface; According to the calculated intersection points, automatically connecting lines to form a plane display diagram of the tunnel structure surface in the direction of the tunnel axis, which is used to display the distribution of the tunnel structure surface on the plane diagram; The generated plan display diagram is output to the CAD model space, and the user can edit, annotate or export the graphic file as needed to apply it to the required scene.

2. A method and device for drawing a CAD-based tunnel structure plane display diagram according to claim 1, characterized in that: When guiding the user to select the tunnel axis line and the tunnel cross-section line in sequence through the CAD software interface, and automatically reading and verifying the data validity of the tunnel axis line and the tunnel cross-section line, it also includes: In the CAD software, the tunnel axis line and the tunnel cross-section line selected by the user are respectively received, and the direction vector of the tunnel axis is calculated; According to the tunnel axis line and the tunnel cross-section line, two rotation operations are performed on the tunnel cross-section line, so that the direction of the tunnel cross-section line is consistent with that of the tunnel axis line.

3. A method and device for drawing a CAD-based tunnel structure plane display diagram according to claim 2, characterized in that: When the tunnel extrusion surface model is automatically generated using the surface extrusion operation based on the selected tunnel axis line and tunnel cross-section line, it also includes: The direction vector of the tunnel axis and the tunnel cross section obtained after rotation are obtained, and a three-dimensional tunnel extruded surface is created using the CreateExtrudedSurface function.

4. A method and device for drawing a CAD-based tunnel structure plane display diagram according to claim 3, characterized in that: When the user inputs the structural surface occurrence parameters through the interactive interface and automatically constructs the tunnel structural surface according to the structural surface occurrence parameters, it also includes: Select the specific point positions of the structural surface exposure on the tunnel axis line and the tunnel cross section respectively, and input the strike, strike angle, dip and inclination information of the structural surface; The tunnel structural surface is generated according to the specific location of the structural surface exposure point and its occurrence information.

5. The method and device for drawing a CAD-based tunnel structure plane display diagram according to claim 1, characterized in that: The method further includes: evenly dividing the tunnel axis line and the tunnel cross-section line according to the specified number of segments to generate a plurality of dividing lines, and calculating the intersection points between the dividing lines and the tunnel structure surface: Convert the generated tunnel structure surface into a surface domain, and calculate the normal vector of the surface domain; Evenly divide the tunnel section line and the tunnel axis line according to the specified number of segments to generate a series of dividing lines; For each segmentation line of the tunnel cross section, the intersection point between the segmentation line and the tunnel structural surface is calculated to determine the specific position and shape of the tunnel structural surface inside the tunnel.

6. A method and device for drawing a CAD-based tunnel structure plane display diagram according to claim 1, characterized in that: According to the calculated intersection points, automatically connecting lines to form a plane display diagram of the tunnel structure surface in the direction of the tunnel axis, which is used to display the distribution of the tunnel structure surface on the plane diagram, also includes: Check whether the intersection point is located on the dividing line of the tunnel section. If it is on the dividing line, calculate the corresponding point of the intersection point on the tunnel section expansion line according to the specific position of the intersection point on the tunnel section, combined with the tunnel axis direction and the tunnel geometry, and save it in the point set; Use the point information in the point set to draw a 3D polyline to represent the unfolding line of the tunnel structure surface.

7. The method and device for drawing a CAD-based tunnel structure plane display diagram according to claim 1, characterized in that: Also includes: Add the point information in the 3D polyline and point set to the model space of the CAD software to achieve visual display and complete the drawing of the plane display diagram of the tunnel structure surface; Users can edit, annotate or export graphic files as needed for use in scenarios such as engineering report preparation and construction guidance.

8. A method and device for drawing a plan view of a tunnel structure surface based on CAD, characterized in that: include: one or more processors; A memory having one or more programs stored thereon, wherein when the one or more programs are executed by the one or more processors, the one or more processors implement a method and device for drawing a CAD-based tunnel structure surface plan display diagram according to any one of claims 1 to 7.

Citation Information

Patent Citations

  • Method for determining attitude of rock mass structural plane based on measurement coordinates

    CN104280013A

  • Geologic plane graph drawing method based on structural plane attitude and geologic observation spot coordinate

    CN104408755A

  • A coupling modeling method for numerical model of complex geological body

    CN109102564A

  • Online sectioning and mapping method for three-dimensional geological model

    CN117409157A

  • Automatic drawing method for two-dimensional geological sketch map of tunnel surrounding rock mass

    CN118089585A