A method and device for rapid construction and linkage updating of three-dimensional railway lines
Through the method of multi-threaded parallel construction and customized solid model, the problem of low efficiency in railway line design in existing technology is solved, the rapid construction and linkage update of three-dimensional railway lines are realized, and the design accuracy and convenience of interactive operation are improved.
Patent Information
- Application Number
- CN202311799145.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-12-25
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2043-12-25
AI Technical Summary
The existing real-life 3D line selection method is inefficient in complex, large-scale railway design and has problems with full-line rendering. In addition, 2D and 3D line design software are insufficient in design accuracy, ease of interactive operation, and standard output results.
Multi-threaded parallel construction is used to process and construct class-level detail models. By obtaining the standard design information of the plane, longitudinal section and cross section of the railway line, spatial line position splitting and custom entity construction are carried out, and a communication channel is established to realize the linkage update between the two-dimensional and three-dimensional platforms.
It improves the construction efficiency of complex railway lines, realizes the collaborative work of two-dimensional and three-dimensional line design systems, and improves design accuracy and convenience of interactive operations.
Smart Images

Figure CN117910088B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of railway line design, and in particular to a method and device for rapid construction and linkage updating of a three-dimensional railway line. Background Art
[0002] With the rapid development of aerial surveying, remote sensing, and real-world 3D modeling technologies, railway route design is no longer limited to traditional 2D design models. Real-world 3D route selection has become a major trend. Real-world 3D route selection involves constructing a realistic, high-precision scene of the route selection area that replicates the real world. Within this scene, spatial alignments are designed and displayed, simulating actual elevations, enabling a more intelligent and intuitive approach to railway route design. However, current real-world 3D route selection methods still face a number of challenges when tackling complex, large-scale railway design. First, existing methods often employ an inefficient serial approach to constructing route entities, resulting in a gradual decline in efficiency as route length increases. Furthermore, interactive route design typically updates the entire route, rather than just specific sections, resulting in inefficient interactive design. Second, existing methods commonly render the entire route, rendering even sections not visible within the current viewport. This results in memory redundancy and limited performance. Furthermore, compared to traditional 2D route design software, existing 3D route design software still has limitations in terms of design accuracy, ease of interactive operation, and standardized output.
[0003] In view of the shortcomings of existing technologies, there is an urgent need for a method and device for rapid construction and linkage updating of three-dimensional railway lines. Summary of the Invention
[0004] The purpose of the present invention is to provide a method and device for rapid construction and linkage update of three-dimensional railway lines to improve the above-mentioned problems. To achieve the above-mentioned purpose, the technical solution adopted by the present invention is as follows:
[0005] On the one hand, the present application provides a method for rapid construction and linkage update of a three-dimensional railway line, comprising:
[0006] Acquiring first information, the first information including standard design information of the plane, longitudinal section, and cross section of the railway line;
[0007] Performing spatial line splitting processing according to the first information, and extending the interactive design function of the two-dimensional line design system to the three-dimensional line entity to obtain a custom entity;
[0008] Perform multi-threaded parallel construction processing according to the custom entity, and obtain a line entity model by constructing a class hierarchy detail model;
[0009] Performing minimum segment division processing according to the line entity model to obtain an update range, wherein the update range includes vector records that need to be partially updated for line adjustment;
[0010] Performing scene optimization processing according to the update range and the line entity model to obtain an optimized scene model;
[0011] A communication channel between the two-dimensional and three-dimensional platforms is established based on the optimized scene model, and the communication channel is used for the linkage update of the lines.
[0012] On the other hand, the present application also provides a three-dimensional railway line rapid construction and linkage update device, including:
[0013] An acquisition module, configured to acquire first information, wherein the first information includes standard design information of the plane, longitudinal section, and cross section of the railway line;
[0014] a splitting module, configured to perform spatial line position splitting processing according to the first information, and extend the interactive design function of the two-dimensional line design system to the three-dimensional line entity to obtain a custom entity;
[0015] A processing module, configured to perform multi-threaded parallel construction processing according to the custom entity, and obtain a line entity model by constructing a class-level detail model;
[0016] a division module, configured to divide the line entity model into minimum sections to obtain an update range, wherein the update range includes vector records that require local update for line adjustment;
[0017] an optimization module, performing scene optimization processing according to the update range and the line entity model to obtain an optimized scene model;
[0018] The updating module is used to establish a communication channel between the two-dimensional and three-dimensional platforms according to the optimized scene model, and the communication channel is used for the linkage update of the line.
[0019] The beneficial effects of the present invention are:
[0020] By adopting multi-threaded parallel construction processing and building a class-level detail model, the present invention can efficiently construct complex and long railway lines in a relatively short time, significantly improving construction efficiency. By establishing a communication channel, the present invention realizes information transmission and linkage updating between the two-dimensional line design system and the three-dimensional line design system, allowing the two to work together, give full play to their respective advantages, and improve the overall design level.
[0021] Other features and advantages of the present invention will be set forth in the following description, and in part will be apparent from the description, or may be learned by practicing embodiments of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0022] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the following briefly introduces the drawings required for use in the embodiments. It should be understood that the following drawings only illustrate certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other relevant drawings can be obtained based on these drawings without paying any creative work.
[0023] Figure 1 This is a flow chart of a method for rapid construction and linkage update of a three-dimensional railway line according to an embodiment of the present invention;
[0024] Figure 2 Schematic diagram of the structure of the device for rapid construction and linkage update of a three-dimensional railway line according to an embodiment of the present invention;
[0025] Figure 3 Flowchart of the minimum segment update method described in an embodiment of the present invention;
[0026] Figure 4 Schematic diagram a of the initial update segment in the minimum segment update method described in an embodiment of the present invention;
[0027] Figure 5 Schematic diagram b of the initial update segment in the minimum segment update method described in an embodiment of the present invention;
[0028] Figure 6 Schematic diagram c of the initial update segment in the minimum segment update method described in an embodiment of the present invention.
[0029] Markings in the figure: 1. Acquisition module; 2. Splitting module; 21. First splitting unit; 22. First extraction unit; 23. First encoding unit; 24. First adjustment unit; 3. Processing module; 31. First division unit; 32. First construction unit; 33. Second construction unit; 4. Division module; 41. First classification unit; 42. First calculation unit; 43. First judgment unit; 44. Second judgment unit; 45. Third construction unit; 5. Optimization module; 51. Fourth construction unit; 52. First detection unit; 53. Fifth construction unit; 54. Second calculation unit; 55. Sixth construction unit; 6. Update module; 61. Seventh construction unit; 62. First conversion unit; 63. Eighth construction unit; 64. First update unit. DETAILED DESCRIPTION
[0030] In order to make the purpose, technical solutions and advantages of the embodiments of the present invention clearer, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. The components of the embodiments of the present invention generally described and shown in the drawings herein can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present invention provided in the drawings is not intended to limit the scope of the claimed invention, but merely represents selected embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.
[0031] It should be noted that similar reference numerals and letters represent similar items in the following drawings. Therefore, once an item is defined in one drawing, it does not need to be further defined or explained in subsequent drawings. At the same time, in the description of the present invention, the terms "first", "second", etc. are used only to distinguish the description and should not be understood as indicating or implying relative importance.
[0032] Example 1:
[0033] This embodiment provides a method for rapid construction and linkage updating of a three-dimensional railway line.
[0034] See also Figure 1 , the figure shows that the method includes step S100, step S200, step S300, step S400, step S500 and step S600.
[0035] Step S100: Acquire first information, where the first information includes standard design information of the plane, longitudinal section and cross section of the railway line.
[0036] It is understandable that the plane design information includes the design of the railway line in the horizontal direction, covering key elements such as the line's geometry, track curves, intersections, etc. The purpose of obtaining plane design information is to ensure that the horizontal geometry of the actual design is consistent when constructing the three-dimensional line entity. The longitudinal section design information provides the design information of the railway line in the vertical direction, including the elevation changes of the terrain, the roadbed, the track, etc. This information is crucial for accurately simulating the layout of the railway under different terrain conditions. The cross-sectional design information describes the design of the railway line in the vertical section, including roads, intersections, bridges, etc. Obtaining this information helps to construct real-world scenarios and ensure the authenticity and accuracy of the line entity. By obtaining standard design information, the design intent of the railway line can be accurately restored to ensure that the subsequently constructed line entity is consistent with the original design.
[0037] Step S200: performing spatial line splitting processing according to the first information, and extending the interactive design function of the two-dimensional line design system to the three-dimensional line entity to obtain a custom entity.
[0038] It's understandable that this step splits the spatial line positions, adds vector unit records to each dataset, and binds the standard design information for the plan, longitudinal, and cross sections through the dataset's uniquely associated record set to create a customized 3D line entity. Human-computer interaction logic, such as picking and dragging, is also added, extending the interactive design capabilities of the 2D line design system to the 3D line entity, ensuring functional consistency between the two systems. It should be noted that step S200 includes steps S210, S220, S230, and S240.
[0039] Step S210: performing spatial line position splitting processing according to the first information to obtain a dataset set, the dataset set including a three-dimensional centerline dataset, an intersection dataset, a curved centerline dataset, a slope change point dataset, a bridge and tunnel dataset, a broken link dataset and a labeling dataset.
[0040] It is understandable that the spatial alignment needs to record the horizontal and vertical design information of the line. Depending on the different recorded information, the spatial alignment is split into multiple parts, and each part is used as an independent data set for subsequent processing. These include: a three-dimensional centerline data set that records the spatial direction of the line; an intersection data set that records the positions of the intersection points of the line plane; a midpoint data set that records the positions of the midpoints of the curve in the plane of the line; a slope change point data set that records the positions of the slope change points of the longitudinal section of the line; a bridge and tunnel data set that records the starting and ending points of the bridges and tunnels of the line; a broken link data set that records the broken link data of the line; and a labeling data set that records various annotation information of the line (including mileposts, intersection numbers, and slope change point design information).
[0041] Step S220: Perform vector element extraction processing on the data set set to obtain vector unit records, and construct a record set set based on the vector unit records.
[0042] It's understood that the vector unit records in this step specifically refer to the vector elements, such as points, lines, surfaces, and text, that constitute the spatial line positions in a 3D scene. For example, a 3D centerline is composed of sequentially connected 3D polylines, and the corresponding vector unit records in the 3D centerline dataset are multiple 3D polyline records. A broken link needs to include the prefix and mileage text before and after the break, as well as a leader line identifying the location of the broken link. The vector unit records in the broken link dataset contain multiple leader line records and multiple text records. These vector unit records are sequentially added to the corresponding record set. The record set is uniquely associated with the dataset, and the dataset can be rendered into the scene layer, thereby implementing the addition of vector unit records to the real-life 3D scene.
[0043] Step S230: Encoding is performed according to the record set set and the data set set, and line attribute information is added to the record set uniquely associated with each data set in the data set set to construct a preliminary custom entity.
[0044] It is understandable that this step assigns a unique and independent coding ID to the three-dimensional line custom entity, and binds the line plan, longitudinal section, and cross-section design information to facilitate the storage and management of the line plan. Furthermore, the construction process of the preliminary custom entity includes: drawing three-dimensional space polylines in sections according to the plane line element attributes, and connecting them in sequence to form a three-dimensional centerline; adding vector units such as plane intersections, longitudinal section slope change points, broken links, bridge and tunnel roadbeds to each data set, and rendering the vector units into the scene to complete the real-life display of the line plan; adding line attribute information to the uniquely associated record set of each data set, including intersection feature tables, slope tables, bridge and tunnel tables, broken link tables, etc., to realize the attribute connection of the line entity corresponding to the design information; binding the three-dimensional centerline and related data sets through a unique coding ID to complete the construction of the three-dimensional line custom entity.
[0045] Step S240: Dynamically adjust the preliminary customized entity based on preset interaction design rules to obtain a customized entity.
[0046] It is understandable that the interactive design function is used to dynamically adjust the three-dimensional line custom entity, including dragging key points in the line entity (such as dragging intersections), editing line design information (such as list editing intersections), and adding and deleting key elements in the line entity (such as adding and deleting intersections). When the interactive operation is completed, the system will update the line design parameters in the memory, recalculate and draw the line, so as to achieve the effect of dynamically updating the line. To realize the interactive design function, it is necessary to add human-computer interaction technology to the system, and lock the three-dimensional line custom entity that needs to be adjusted and the key points that need to be dragged through the picking technology, so as to perform subsequent list editing or direct dragging of key points. Preferably, the complete picking logic includes: the screen coordinates of the picking position are converted into standardized space homogeneous coordinates through the viewport transformation matrix; the homogeneous coordinates are converted into visual coordinates through the inverse operation of the projection change; the visual coordinates are converted into world coordinates according to the viewpoint change operation; the world coordinates and the scene camera position coordinates are connected into a ray, and the bounding box is intersected with the three-dimensional scene to obtain all intersecting vector units, and the line entity or key point to be selected is locked through an independent ID, and it is activated in the scene to complete the picking. Furthermore, dynamic dragging of vector elements is achieved through dragging technology, and the accurate position after dragging is fed back for updating line design information. Preferably, the complete dragging logic includes: binding vertical draggers and horizontal draggers to the vector elements, which can respectively change the vertical and horizontal position coordinates of the vector elements; recording the pixel coordinates after the dragging is completed; converting the pixel coordinates into world coordinates based on the scene coordinate system parameters, updating the line design parameters based on the adjusted position, and recalculating the line position.
[0047] Step S300: Perform multi-threaded parallel construction processing according to the custom entity, and obtain a line entity model by constructing a class hierarchy detail model.
[0048] It is understandable that this step realizes the rapid construction of the line entity through multi-threaded parallel construction processing, thereby shortening the line generation time. It should be noted that step S300 includes step S310, step S320 and step S330.
[0049] Step S310 : hierarchically divide the custom entity based on a preset display accuracy standard to obtain a class-level detail model, where the class-level detail model includes detail models at different camera heights.
[0050] As you can understand, the vector elements that make up the line entity are divided into display levels based on the varying accuracy of the line entity observed at different camera heights. Specifically, taking the line entity mileage markers as an example, the first level only contains five-kilometer markers, the second level adds kilometer markers, the third level adds five-hundred-meter markers, and the fourth level adds hundred-meter markers. The higher the level, the more line entity details are included, and the more refined the model.
[0051] Step S320: Perform modeling thread construction processing according to the class hierarchy detail model, trigger or block high-level threads through changes in camera height, and generate modeling thread on-off control rules.
[0052] As you can understand, when constructing line entities, the display level is determined based on the scene camera height. The thread corresponding to the level to be displayed is started to add vector unit records and begin modeling. Threads at other levels remain interrupted and blocked. This method tracks the camera height in real time, triggering or blocking higher-level modeling threads. This reduces the workload of line entity construction and improves the smoothness of modeling and rendering when the camera height is high and model accuracy requirements are low.
[0053] Step S330: Perform entity construction processing according to the modeling thread on-off control rule, add vector records to each data set in parallel in each modeling thread process, and render it into the three-dimensional scene to obtain the line entity model.
[0054] Understandably, during the modeling process within each thread, the multiple datasets that comprise the custom 3D line entity have no dependencies on each other, relying solely on the line calculation results in memory. Parallel technology is employed to simultaneously add vector records to the datasets and render them into the 3D scene, accelerating the construction of 3D line entities.
[0055] Step S400: performing minimum segment division processing according to the line entity model to obtain an update range, where the update range includes vector records that need to be partially updated for line adjustment.
[0056] It is understandable that if Figure 3 As shown, Figure 3 This is a flowchart for the minimum segment update method. A single interactive operation during the route adjustment process has a limited impact on the route. For example, adjusting the route design information for a particular intersection will only affect the line position within the adjacent intersections before and after that intersection, and will not affect the line position in the remaining sections. The minimum segment update method is used to determine the vector records that require local update after the route adjustment, ensuring that unchanged vector elements are retained in the scene as much as possible. It should be noted that step S400 includes steps S410, S420, S430, S440, and S450.
[0057] Step S410: Classify the line entity model and the line adjustment operations acquired in real time to obtain a classification result, where the classification result includes the plane element adjustment operations and the longitudinal section element adjustment operations.
[0058] It can be understood that the purpose of this step is to distinguish whether the route adjustment operation is performed on the plane element or the longitudinal section element.
[0059] Step S420: Calculate the updated interval calculation result based on the classification result and the preset minimum segment division mathematical model.
[0060] It is understandable that if Figure 4 、 Figure 5 and Figure 6 As shown, if the line adjustment operation is for plane elements, the calculation process is: if the intersection point (JD i ) position is adjusted, the update interval is the front intersection point (JD i-1 )ZH mileage to the next intersection point (JD i+1 )HZ mileage; if the intersection (JD i ) is deleted, the update interval is the nearest intersection point (JD i-1 ) to the nearest intersection point (JD) along the direction of increasing mileage i+1 ) of HZ mileage; if at the intersection (JD i-1 ) and the intersection point (JD i ), the update interval is to increase the position along the direction of decreasing mileage to the nearest intersection (JD i-1 ) to the nearest intersection point (JD) along the direction of increasing mileage i ) of HZ mileage; if the intersection (JD i ) to adjust the curve parameters of the transition curve and circular curve, the update interval is the intersection (JD i )ZH mileage to HZ mileage. Furthermore, considering the one-way transmission of the update range during the line design process, the longitudinal section slope change points falling within the plane adjustment range will also change. Therefore, the determined update interval is further expanded. The starting point of the update interval is along the direction of decreasing mileage to the nearest slope change point (BPD front ) of the ZY mileage, update the end point of the interval along the mileage increase direction to the nearest slope change point (BPD back )’s YZ mileage. The calculation formula involved is as follows:
[0061] Section min [min(HZ i-1 ,HZ′ i-1 ),max(HZ i+1 ,HZ′ i+1 )];
[0062] Section min [min(ZH i-1 ,HZ′ i-1 ),max(HZ i+1 ,HZ′ i )];
[0063] Section min [min(ZHi-1 ,ZH′ i-1 ),max(HZ i ,HZ′ i+1 )];
[0064] Section min [min(ZH i ,HZi′ i ),max(HZ i ,HZ′ i )];
[0065] Among them, Section min [a,b] indicates that the route update interval is the mileage range from a to b; ZH i 、HZ i They represent the ZH and HZ mileages of the intersection point i before the line adjustment; ZH′ i , HZ′ i They respectively represent the ZH and HZ mileages of the intersection point i after the line adjustment.
[0066] If the line adjustment operation is for the longitudinal section element, the calculation process is as follows: if the slope change point (BPD i ) position is adjusted, the update interval is the front slope change point (BPD i-1 )ZY mileage to the next slope change point (BPD i+1 )YZ mileage; if the slope change point (BPD i ) is deleted, the update interval is the nearest slope change point (BPD) along the direction of mileage reduction of the deleted position i-1 ) to the nearest slope change point (BPD) along the direction of mileage increase i+1 ) of YZ mileage; if at the slope change point (BPD i-1 ) and slope change point (BPD i ) between the increase of the slope change point, the update interval is the increase of the position along the direction of the mileage decrease of the nearest slope change point (BPD i-1 ) to the nearest slope change point (BPD) along the direction of mileage increase i ) YZ mileage; if the vertical curve radius at the slope change point is adjusted, the update interval is the slope change point (BPD i )ZY mileage to YZ mileage. The calculation formula involved is:
[0067]
[0068]
[0069] Among them, Section min [a,b] indicates that the route update interval is the mileage range from a to b; ZY i 、YZi They represent the ZY and YZ mileages of the slope change point i before the line adjustment; ZY′ i , YZ′ i They respectively represent the ZY and YZ mileages of the slope change point i after the line adjustment.
[0070] Step S430: determine the update range based on the update interval calculation result, wherein if a link break is added at the end of the update interval, the final update range is the update interval.
[0071] Step S440: Otherwise, the final update range is the update interval and the mileage mark from the end point of the update interval to the end point of the line.
[0072] It can be understood that the calculation result of the update interval (i.e., the preliminarily determined update interval) is the interval in which both the mileage mark vector records and the geometric line position vector records change. When a broken link is added at the end of the interval, the update interval is the final minimum update interval; when no broken link is added at the end of the interval, the final update range is the geometric line position, mileage mark of the update interval, and the mileage mark from the end of the update interval to the end of the line.
[0073] Step S450: Construct a line scene model according to the update range and the line entity model.
[0074] It is understandable that by calculating the update range, the system can refresh only the local section where changes have occurred, rather than refreshing the entire line, thereby improving the construction efficiency and design effect of the line entity.
[0075] Step S500: Optimize the scene according to the update range and the line entity model to obtain an optimized scene model.
[0076] Specifically, this step involves performing view frustum and viewpoint prediction on the line scene model. Both view frustum and viewpoint prediction are visual correlation technologies that simulate the human eye's observation range. Vector elements outside the observation range are not rendered into the scene to alleviate memory pressure, improve refresh rate, and enhance display smoothness. It should be noted that step S500 includes steps S510, S520, S530, S540, and S550.
[0077] Step S510: construct a viewing cone according to the viewpoint, horizontal angle, and vertical angle in the route scene model, and clip the viewing cone on the near and far planes to obtain a scene display range.
[0078] Step S520: Perform encirclement detection processing according to the scene display range, and filter the vector elements in the scene display range to obtain a rendering range.
[0079] It can be understood that this step performs encirclement detection on the vector elements and the clipped view frustum. Elements that are not within the range are not rendered into the scene, thereby reducing the volume of the rendered elements, reducing memory pressure, and improving the speed of entity construction.
[0080] Step S530: construct a viewpoint prediction basic path according to the increasing direction of the route mileage in the route scene model.
[0081] Step S540: Perform Hermite interpolation calculation according to the viewpoint prediction basic path, and calculate the vector elements displayed in the next frame by combining the scene display ranges of the previous frame and the current frame to obtain an advance loading strategy.
[0082] It can be understood that the viewpoint prediction process uses the increasing direction of the route mileage as the basic path for viewpoint prediction. Based on the scene display range of the previous frame and the current frame, the vector elements that may be displayed in the next frame are predicted and loaded into the memory in advance for direct retrieval and improved display smoothness. Among them, the viewpoint prediction adopts the Hermite interpolation method, and the calculation formula is as follows:
[0083] X=x2+L;
[0084]
[0085] Among them, (X, Y), (x2, y2), and (x1, y1) are the viewpoint coordinates for predicting the next frame, current frame, and previous frame respectively; L is the prediction step size.
[0086] Step S550: construct an optimized scene model according to the rendering range and the advance loading strategy.
[0087] It can be understood that the original line scene model is optimized and constructed by combining the rendering range and the pre-loading strategy. The vector elements within the rendering range will be filtered and added to the rendering range, and the vector elements determined by the pre-loading strategy will also be loaded into memory to meet the user's real-time observation needs.
[0088] Step S600: establishing a communication channel between the two-dimensional and three-dimensional platforms based on the optimized scene model. The communication channel is used for the linkage update of the lines.
[0089] It should be noted that step S600 includes step S610 , step S620 , step S630 , step S640 and step S650 .
[0090] Step S610: construct a two-dimensional circuit design instance according to the optimized scenario model, and establish a system connection rule based on the two-dimensional circuit design instance and the optimized scenario model.
[0091] Specifically, first, an instantiated 2D line design system is created, and the plug-in is loaded and run to complete the connection between the two systems. Then, a communication channel is established between windows, with the windows acting as either the transmitter or receiver of information. Messages are transmitted through attributes such as window handles, message types, and message content. Two types of message content are transmitted: one is complete line design information for line entity linkage, including intersection tables, slope change point tables, broken link tables, and bridge and tunnel tables; the other is viewport information for window linkage, including the viewport center parameters, camera position coordinates, and angles (pitch, roll, and azimuth) of the message transmitter system to ensure consistency in the display range of the dual-platform interface.
[0092] Step S620: Perform data conversion processing according to the system connection rules, and construct a message transmission mechanism by dividing the message content into complete line design information and viewport information and organizing them into standard character strings.
[0093] Step S630: construct a message interpretation mechanism based on the message transmission mechanism.
[0094] Step S640: Implement linkage updates of the two-dimensional and three-dimensional circuit design systems according to system connection rules, message transmission mechanism, message interpretation mechanism, and preset timing trigger-blocking rules.
[0095] It is understood that the message receiver accurately interprets the message content transmitted by the message sender according to the pre-set data format and feeds the content back to its own line entity to complete the line position linkage update. The complete message transmission and reception mechanism includes: First, the transmitted message is properly organized and processed into a standard string. When the message type is complete line design information, the data organization order is the number of intersections, the number of slope change points, the number of broken links, the number of bridges, the number of tunnels, the intersection design information, the slope change point design information, the broken link design information, the bridge design information, and the tunnel design information. When the message type is viewport information, the data organization order is the viewport center x-coordinate, y-coordinate, viewport height, and camera angle. The information to be transmitted is organized into a string in the above order, and a unified delimiter such as "," and ";" is set between each data to facilitate the use of information interpretation. Next, the window handle of the receiving message is determined, the message transmission type (WM_COPYDATA) is determined, and the message content (string) is determined. The above three are organized into a COPYDATASTRUCT structure. Subsequently, the sender completes the message sending through the window communication channel, and the designated receiving message window intercepts the message. Then, the message is interpreted after matching the message receiving type. The data is split and reintegrated through delimiters. Taking the intersection information in the line design information as an example, the first data received specifies the number of intersections. If the number of intersections is n, then the [6, 6+5n)th data together constitute the intersection design information. The number 5 is because the data of each intersection includes the x-coordinate, y-coordinate, curve radius, front transition curve length and rear transition curve length. The receiver then transmits all the interpreted information back to the line custom entity (or window) of its program to complete the update of the line entity (or viewport range).
[0096] It's understood that both 2D and 3D line design systems can serve as both message senders and receivers, meaning the linked update is bidirectional. The message content is organized into a valid, easily parsable string and integrated into the COPYDATASTRUCT message-passing structure. The SendMessage function is used to deliver the message to the receiver, which intercepts and interprets the message, updating the line entity or window range based on the interpretation. When the message sender and receiver's line entity update speeds differ, process read / write conflicts can occur. To address this, a process blocking mechanism has been implemented. Specifically, the sender checks whether its own process is blocked before sending a message. If not, it transmits the message to the receiver via the communication channel; otherwise, it remains in a waiting state. When the receiver receives the message and prepares to update its entity, it blocks the receiver's process. After the receiver's entity update is complete, it sends a completed message back to the sender's process, unblocking it and allowing it to continue sending messages. The sender is initially unblocked, ensuring its first message is successfully sent. Furthermore, a timer triggers the sender to send messages at fixed intervals, while the receiver continuously adjusts the line position based on the received line design information, achieving linked updates.
[0097] Example 2:
[0098] like Figure 2 As shown, this embodiment provides a device for rapid construction and linkage update of a three-dimensional railway line, the device comprising:
[0099] The acquisition module 1 is used to acquire first information, which includes standard design information of the plane, longitudinal section and cross section of the railway line.
[0100] The splitting module 2 is used to perform spatial line position splitting processing according to the first information, and extend the interactive design function of the two-dimensional line design system to the three-dimensional line entity to obtain a custom entity.
[0101] The processing module 3 is used to perform multi-threaded parallel construction processing according to the custom entity, and obtain the line entity model by constructing a class hierarchy detail model.
[0102] The division module 4 is used to perform minimum segment division processing according to the line entity model to obtain an update range, and the update range includes vector records that need to be partially updated for line adjustment.
[0103] The optimization module 5 performs scene optimization processing according to the update range and the line entity model to obtain an optimized scene model.
[0104] The updating module 6 is used to establish a communication channel between the two-dimensional and three-dimensional platforms according to the optimized scene model, and the communication channel is used for the linkage update of the line.
[0105] In a specific embodiment of the present disclosure, the splitting module 2 includes:
[0106] The first splitting unit 21 is used to perform spatial line position splitting processing according to the first information to obtain a dataset set, which includes a three-dimensional centerline dataset, an intersection dataset, a curved centerline dataset, a slope change point dataset, a bridge and tunnel dataset, a broken link dataset and a labeling dataset.
[0107] The first extraction unit 22 is configured to perform vector element extraction processing according to the data set set to obtain vector unit records, and construct a record set set according to the vector unit records.
[0108] The first encoding unit 23 is configured to perform encoding processing according to the record set set and the data set set, and add line attribute information to the record set uniquely associated with each data set in the data set set to construct a preliminary custom entity.
[0109] The first adjusting unit 24 dynamically adjusts the preliminary customized entity based on preset interaction design rules to obtain a customized entity.
[0110] In a specific embodiment of the present disclosure, the processing module 3 includes:
[0111] The first division unit 31 is configured to perform hierarchical division processing on the custom entity based on a preset display accuracy standard to obtain a class-level detail model, where the class-level detail model includes detail models at different camera heights.
[0112] The first construction unit 32 is used to perform modeling thread construction processing according to the class hierarchy detail model, trigger or block high-level threads through changes in camera height, and generate modeling thread on-off control rules.
[0113] The second construction unit 33 is used to perform entity construction processing according to the modeling thread on-off control rule, by adding vector records to each data set in parallel in each modeling thread process and rendering it into the three-dimensional scene to obtain the line entity model.
[0114] In a specific embodiment of the present disclosure, the division module 4 includes:
[0115] The first classification unit 41 is configured to perform classification processing based on the line entity model and the line adjustment operations acquired in real time to obtain classification results, where the classification results include plane element adjustment operations and longitudinal section element adjustment operations.
[0116] The first calculation unit 42 is configured to calculate an update interval calculation result based on the classification result and a preset minimum segment division mathematical model.
[0117] The first judgment unit 43 is configured to determine an update range based on the update interval calculation result. If a link break is added at the end of the update interval, the final update range is the update interval.
[0118] The second judgment unit 44: otherwise, the final update range is the update interval and the mileage mark from the end point of the update interval to the end point of the route.
[0119] The third constructing unit 45 is configured to construct a line scenario model according to the update range and the line entity model.
[0120] In a specific embodiment of the present disclosure, the optimization module 5 includes:
[0121] The fourth constructing unit 51 is configured to construct a viewing cone according to the viewpoint, horizontal angle, and vertical angle in the route scene model, and to clip the viewing cone on the near and far planes to obtain a scene display range.
[0122] The first detection unit 52 is configured to perform encirclement detection processing according to the scene display range, and filter the vector elements in the scene display range to obtain a rendering range.
[0123] The fifth constructing unit 53 is configured to construct a viewpoint prediction basic path according to the increasing direction of the route mileage in the route scene model.
[0124] The second calculation unit 54 is configured to perform Hermite interpolation calculation according to the viewpoint prediction basic path, and calculate the vector elements displayed in the next frame by combining the scene display ranges of the previous frame and the current frame to obtain an advance loading strategy.
[0125] The sixth construction unit 55 is configured to construct an optimized scene model according to the rendering range and the advance loading strategy.
[0126] In a specific embodiment of the present disclosure, the update module 6 includes:
[0127] The seventh constructing unit 61 is configured to construct a two-dimensional circuit design instance according to the optimized scenario model, and establish a system connection rule based on the two-dimensional circuit design instance and the optimized scenario model.
[0128] The first conversion unit 62 is used to perform data conversion processing according to the system connection rules, and to construct a message transmission mechanism by dividing the message content into complete line design information and viewport information and organizing them into a standard character string.
[0129] The eighth constructing unit 63 is configured to construct a message interpretation mechanism according to the message transmission mechanism.
[0130] The first updating unit 64 is used to realize the linkage update of the two-dimensional and three-dimensional circuit design systems according to the system connection rules, message transmission mechanism, message interpretation mechanism and preset timing trigger-blocking rules.
[0131] It should be noted that, regarding the apparatus in the above embodiment, the specific manner in which each module performs operations has been described in detail in the embodiment of the method, and will not be elaborated on here.
[0132] The foregoing description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Those skilled in the art will readily appreciate that various modifications and variations of the present invention are possible. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present invention are intended to be within the scope of protection of the present invention.
[0133] The above description is merely a specific embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any modifications or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present invention should be included within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be based on the scope of protection of the claims.
Claims
1. A method for rapid construction and linkage update of three-dimensional railway lines, characterized in that: include: Acquiring first information, the first information including standard design information of the plane, longitudinal section, and cross section of the railway line; Performing spatial line splitting processing according to the first information, and extending the interactive design function of the two-dimensional line design system to the three-dimensional line entity to obtain a custom entity; Perform multi-threaded parallel construction processing according to the custom entity, and obtain a line entity model by constructing a class hierarchy detail model; Performing minimum segment division processing according to the line entity model to obtain an update range, wherein the update range includes vector records that need to be partially updated for line adjustment; Performing scene optimization processing according to the update range and the line entity model to obtain an optimized scene model; Establishing a communication channel between the two-dimensional and three-dimensional platforms based on the optimized scenario model, wherein the communication channel is used for the linkage update of the lines; The spatial line position splitting process is performed according to the first information, and the interactive design function of the two-dimensional line design system is extended to the three-dimensional line entity to obtain a custom entity, including: Performing spatial line position splitting processing according to the first information to obtain a dataset set, the dataset set including a three-dimensional centerline dataset, an intersection dataset, a curved centerline dataset, a slope change point dataset, a bridge and tunnel dataset, a broken link dataset, and a labeling dataset; Performing vector element extraction processing on the data set to obtain vector unit records, and constructing a record set set based on the vector unit records; Performing encoding processing on the record set set and the data set set, and adding line attribute information to the record set uniquely associated with each data set in the data set set to construct a preliminary custom entity; Dynamically adjusting the preliminary customized entity based on preset interaction design rules to obtain a customized entity; The updating range is obtained by dividing the line entity model into minimum sections, including: Classification processing is performed based on the line entity model and the line adjustment operations acquired in real time to obtain classification results, wherein the classification results include plane element adjustment operations and longitudinal section element adjustment operations; Calculating based on the classification result and the preset minimum segment division mathematical model to obtain an update interval calculation result; An update range is determined based on the update interval calculation result, wherein if a broken link is added at the end of the update interval, the final update range is the update interval; Otherwise, the final update range is the update interval and the mileage mark from the end point of the update interval to the end point of the line; A line scenario model is constructed according to the update range and the line entity model.
2. The method for rapid construction and linkage update of a three-dimensional railway line according to claim 1 is characterized in that ,According to the custom entity, multi-threaded parallel construction processing is performed, and a line entity model is obtained by constructing a class hierarchical detail model, including: Performing hierarchical division processing on the custom entity based on a preset display accuracy standard to obtain a class hierarchical detail model, wherein the class hierarchical detail model includes detail models at different camera heights; Perform modeling thread construction processing according to the class hierarchy detail model, trigger or block high-level threads through changes in camera height, and generate modeling thread on-off control rules; The entity construction process is performed according to the on-off control rule of the modeling thread, and the line entity model is obtained by adding vector records to each data set in parallel in each modeling thread process and rendering it into a three-dimensional scene.
3. The method for rapid construction and linkage update of three-dimensional railway lines according to claim 1 is characterized in that ,establishing a communication channel between the two-dimensional and three-dimensional platforms according to the optimized scene model, and realizing the linkage update of the line based on the communication channel, including: Constructing a two-dimensional circuit design instance according to the optimization scenario model, and establishing a system connection rule based on the two-dimensional circuit design instance and the optimization scenario model; Performing data conversion processing according to the system connection rules, a message delivery mechanism is constructed by dividing the message content into complete line design information and viewport information and organizing them into a standard character string; A message interpretation mechanism is constructed according to the message transmission mechanism; The linkage update of the two-dimensional and three-dimensional circuit design systems is achieved according to the system connection rules, the message transmission mechanism, the message interpretation mechanism and the preset timing trigger-blocking rules.
4. A three-dimensional railway line rapid construction and linkage update device, characterized in that: include: An acquisition module, configured to acquire first information, wherein the first information includes standard design information of the plane, longitudinal section, and cross section of the railway line; a splitting module, configured to perform spatial line position splitting processing according to the first information, and extend the interactive design function of the two-dimensional line design system to the three-dimensional line entity to obtain a custom entity; A processing module, configured to perform multi-threaded parallel construction processing according to the custom entity, and obtain a line entity model by constructing a class-level detail model; a division module, configured to divide the line entity model into minimum sections to obtain an update range, wherein the update range includes vector records that require local update for line adjustment; an optimization module, performing scene optimization processing according to the update range and the line entity model to obtain an optimized scene model; An update module, configured to establish a communication channel between the two-dimensional and three-dimensional platforms based on the optimized scene model, wherein the communication channel is used for linkage update of the lines; Wherein, the splitting module includes: a first splitting unit, configured to perform spatial line position splitting processing according to the first information to obtain a dataset set, wherein the dataset set includes a three-dimensional centerline dataset, an intersection dataset, a curved centerline dataset, a slope change point dataset, a bridge and tunnel dataset, a broken link dataset, and a labeling dataset; a first extraction unit, configured to perform vector element extraction processing on the data set to obtain vector unit records, and construct a record set set based on the vector unit records; A first encoding unit is configured to perform encoding processing based on the record set set and the data set set, and add line attribute information to the record set uniquely associated with each data set in the data set set to construct a preliminary custom entity; A first adjustment unit dynamically adjusts the preliminary customized entity based on preset interaction design rules to obtain a customized entity; Wherein, the division module includes: A first classification unit is configured to perform classification processing based on the line entity model and the line adjustment operations acquired in real time to obtain classification results, wherein the classification results include plane element adjustment operations and longitudinal section element adjustment operations; A first calculation unit is configured to calculate an update interval calculation result based on the classification result and a preset minimum segment division mathematical model; A first judgment unit is configured to determine an update range based on the update interval calculation result, wherein if a link break is added at the end of the update interval, the final update range is the update interval; The second judgment unit: otherwise, the final update range is the update interval and the mileage mark from the end point of the update interval to the end point of the line; The third construction unit is configured to construct a line scenario model according to the update range and the line entity model.
5. The device for rapid construction and linkage updating of three-dimensional railway lines according to claim 4 is characterized in that , the processing module includes: A first division unit is configured to perform hierarchical division processing on the custom entity based on a preset display accuracy standard to obtain a class hierarchical detail model, wherein the class hierarchical detail model includes detail models at different camera heights; A first construction unit is configured to perform modeling thread construction processing according to the class hierarchy detail model, trigger or block high-level threads by changing the camera height, and generate a modeling thread on-off control rule; The second construction unit is used to perform entity construction processing according to the modeling thread on-off control rule, by adding vector records to each data set in parallel during each modeling thread process, and rendering it into a three-dimensional scene to obtain a line entity model.
6. The device for rapid construction and linkage updating of three-dimensional railway lines according to claim 4 is characterized in that , the update module includes: a seventh construction unit, configured to construct a two-dimensional circuit design instance according to the optimization scenario model, and establish a system connection rule based on the two-dimensional circuit design instance and the optimization scenario model; A first conversion unit is configured to perform data conversion processing according to the system connection rule, and to construct a message transmission mechanism by dividing the message content into complete line design information and viewport information and organizing them into a standard character string; An eighth construction unit, configured to construct a message interpretation mechanism according to the message transmission mechanism; The first updating unit is used to realize the linkage update of the two-dimensional and three-dimensional circuit design systems according to the system connection rules, the message transmission mechanism, the message interpretation mechanism and the preset timing trigger-blocking rules.
Citation Information
Patent Citations
Three-dimensional multi-track railway cross section graphic display method
CN102651146A
Overall reconstruction design method of plane line position of existing railway
CN107609300A