A method for simulating a variable motion trajectory of a kilometer cable
By controlling the cable movement at individual nodes and combining it with dynamic mesh loading, the problem of the cable simulation being unable to move flexibly was solved, achieving dynamic cable winding and unwinding effects and high-precision control.
Patent Information
- Application Number
- CN202410171153.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-02-06
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2044-02-06
AI Technical Summary
Existing technologies for cable simulation cannot be flexible, have limited motion effects, and easily expose connection points in free-roaming perspectives. Furthermore, the control of motion length and speed is complex, and the simulation effects have limited applications.
By controlling node movement through a sub-node approach and combining it with mesh movement to simulate cable winding and unwinding, the cable is dynamically loaded and generated by utilizing the connection between virtual nodes and the mesh, thus realizing the variable motion trajectory of the cable.
It achieves dynamic cable retraction and extension, adapts to realistic simulation from different perspectives, and improves the flexibility and control precision of cable movement.
Smart Images

Figure CN119445031B_ABST
Abstract
Description
Technical Field
[0001] This work relates to winch simulation in the field of 3D graphics, and in particular to a method for simulating a kilometer-long cable with a variable motion trajectory. Background Technology
[0002] Since the beginning of the 21st century, virtual simulation technology has developed rapidly and has been widely used in education, games, production, and other fields. A typical method for simulating cables involves building a model using 3D software, generating individual loops using auxiliary tools, replicating these loops to form a continuous cable loop, and repeating this process until the desired length is achieved. Finally, the model is exported from the 3D software in formats such as FBX for use. While this method can generate relatively realistic cables, the generated cables have a fixed shape once created and cannot be flexibly changed. Alternatively, the generated cables may repeat a specific movement to achieve the desired effect. This method is only suitable for viewing from a fixed perspective; during free-roaming observation, broken connection points are easily visible. Furthermore, controlling the simulated length, speed, and other parameters of the cable's movement is complex, resulting in a limited range of simulation applications. Summary of the Invention
[0003] This invention addresses the need for winch cable deployment and retrieval simulation in fields such as virtual simulation teaching. It provides a method for simulating a kilometer-long cable with a variable trajectory. Using a node-based approach, the method simulates the deployment and retrieval of a winch cable formed by a combination of circular, arc, and straight-line winding patterns by controlling the movement of nodes to drive the movement of the grid. By establishing a series of nodes to represent the cable and establishing a connection between virtual nodes and the grid, the method generates and controls the kilometer-long cable through segmentation, transformation, and dynamic loading, resulting in a superior representation of the dynamic effects of cable deployment and retrieval.
[0004] The technical solution of the present invention is as follows: a simulation method for a kilometer-long cable with a variable motion trajectory, comprising the following steps:
[0005] Step 1: Read the parent node's queue;
[0006] Step 2: Generate child nodes or reset child node positions based on cable length and parent node position;
[0007] Step 3: Create a skinned mesh by establishing cables from child nodes;
[0008] Step 4: Establish input control points based on the display type (spool cable, curved cable, and straight cable);
[0009] Step 5: Calculate the number and position of child nodes based on the input control points;
[0010] Step 6: In the program loop, check whether the position of the input control point has changed; if the position of the input control point has changed, repeat step 2; otherwise, proceed to the next program loop.
[0011] Furthermore, in step 1, the parent node determines the arrangement of the child nodes. There can be multiple parent nodes, typically one reel cable parent node, one curved cable parent node, and one straight cable parent node.
[0012] Furthermore, in step 4, the display types are reel cable, curved cable, and straight cable. The reel cable is generated by using the current parent node's coordinates as the starting coordinate A, with the minimum radius as the initial radius L. Each pair of nodes represents a cable length of L0, and the rotation angle a1 is calculated based on the minimum length of each node segment. A vector L1 of length L is rotated perpendicularly to the Y-direction from A to the X-direction, with each rotation angle being a1, and each rotation also involves a vertical upward translation of R1. The translation is calculated as R0 / n, where R0 is the cable radius and n is the number of nodes required for one rotation. When the rotation reaches a specified width, the rotation radius is incremented by R0, and the translation is multiplied by -1. This calculation is repeated until all child nodes under all reel cable parent nodes have their initial positions set. Curved cables are calculated using Bézier curves, with points taken from the curve at a step size L0. Straight cables use average interpolation to take points.
[0013] Furthermore, in step 5, the input control point of the drum cable controls the position of the last point on the drum's parent node. Its position is determined by the X and Z values of the last point, while the Y value is based on the control point. For curved cables, the control point is the endpoint of the Bézier curve; when the control point position changes, a new point is taken from the curve. For straight cables, the control points are the two endpoints.
[0014] Furthermore, in step 6, each program loop is a program frame rate refresh cycle. In each frame, it is determined whether the position of the input control point has changed. If the position of the input control point has changed, step 2 is repeated; otherwise, the next program loop is entered.
[0015] Compared with the prior art, the present invention has the following advantages:
[0016] Traditionally, cables are manually drawn according to the size of the reel, and each cable can only be used in the current scene. Long sections of cable are segmented, and the resulting cables either cannot move or use moving UVs to create a visual movement effect. This invention represents the cable by establishing a series of nodes. By establishing a connection between virtual nodes and the mesh, and through segmentation, transformation, and dynamic loading, it generates and controls kilometer-long cables, resulting in a superior dynamic effect of cable deployment and retraction. Attached Figure Description
[0017] Appendix Figure 1 This is a flowchart of the process for generating a kilometer-long cable;
[0018] Appendix Figure 2 This is a demonstration of the generation effect of a kilometer-long cable. Figure 1 ;
[0019] Appendix Figure 3 This is a demonstration of the generation effect of a kilometer-long cable. Figure 2 ; Detailed Implementation
[0020] The present invention will now be described in further detail with reference to the accompanying drawings, but this is not intended to limit the scope of protection of the present invention.
[0021] like Figure 1 As shown, a simulation method for a kilometer-long cable with a variable motion trajectory is presented. This method utilizes virtual nodes to store data, establishes connections between virtual nodes and the mesh, and generates and controls the kilometer-long cable through processing methods such as segmentation, transformation, and dynamic loading. The specific steps are as follows:
[0022] Create parent nodes in different locations: a reel cable parent node, an arc cable parent node, and a straight cable parent node;
[0023] Child nodes are generated based on cable length and parent node position. For the reel cable, the generation method is as follows: the current parent node coordinates are used as the starting coordinate A, the minimum radius is used as the initial radius L, and the cable length between each pair of nodes is L0. The rotation angle a1 is calculated based on the minimum length of each node segment. A vector L1 of length L is rotated perpendicularly to the Y direction from A to the X direction, with each rotation angle being a1. Each rotation also involves a vertical upward translation R1. The translation is calculated as R0 / n, where R0 is the cable radius and n is the number of nodes required for one rotation. When the rotation reaches a specified width, the rotation radius is incremented by R0, and the translation is multiplied by -1. This calculation is repeated until all child nodes under all reel cable parent nodes have their initial positions set. Curved cables are calculated using Bézier curves, with points taken from the curve at a step size L0. Straight cables are selected using average interpolation.
[0024] Create a cable skin mesh using child nodes;
[0025] Input control points are established based on the display type (spool cable, curved cable, and straight cable). For spool cables, the input control point controls the position of the last point on the parent node of the spool, taking the X and Z values of the last point, with the Y value based on the control point. For curved cables, the control point is the endpoint of the Bézier curve; when the control point position changes, a new point is taken from the curve. For straight cables, the control points are the two endpoints.
[0026] Calculate the number and position of child nodes from the input control points;
[0027] In the program loop, it checks whether the position of the input control point has changed; if the position of the input control point has changed, it recalculates the number of child nodes under the parent node and generates the mesh; otherwise, it proceeds to the next program loop.
[0028] The final effect of the invention is as follows Figure 2 and 3 As shown.
Claims
1. A simulation method for a kilometer-long cable with a variable motion trajectory, characterized in that, Includes the following steps: Step 1: Read the parent node's queue; Step 2: Generate child nodes or reset child node positions based on cable length and parent node position; Step 3: Create a cable skin mesh using child nodes; Step 4: Establish input control points according to the display type; Step 5: Calculate the number and position of child nodes based on the input control points; Step 6: In the program loop, check whether the position of the input control point has changed; if the position of the input control point has changed, repeat step 2; otherwise, proceed to the next program loop. The display types are reel cable, curved cable, and straight cable. Child nodes are generated based on the cable length and the position of the parent node. The reel cable is generated by taking the current parent node coordinates as the starting coordinates of the circle center O1, taking the minimum radius of the reel cable as the initial radius L, and representing the cable length as L0 between every two nodes. The rotation angle a1 is calculated based on the minimum length of each node segment. A vector L1 of length L, which rotates perpendicularly to the Y direction from O1 to the X direction, rotates by an angle a1 each time, and translates vertically upwards by R1 each time. The translation amount is calculated as R0 / n, where R0 is the radius of the cable and n is the number of nodes required for one rotation. When the rotation amount reaches the specified width, the rotation radius is added to R0, and the translation amount is multiplied by -1. This calculation is repeated until all child nodes under the parent node of all reel cables are set to their initial positions.
2. The simulation method for a kilometer cable with a variable motion trajectory according to claim 1, characterized in that, In step 1, the parent node determines the arrangement of the child nodes. There are multiple parent nodes, namely a reel cable parent node, an arc cable parent node, and a straight cable parent node.
3. The simulation method for a kilometer cable with a variable motion trajectory according to claim 1, characterized in that, Child nodes are generated based on the cable length and the position of the parent node. For curved cables, the calculation is performed using a Bézier curve, and points are taken from the curve using a step size. For straight cables, points are taken using an average interpolation method.
4. The simulation method for a kilometer cable with a variable motion trajectory according to claim 1, characterized in that, In step 5, the input control point of the drum cable controls the position of the last point on the parent node of the drum. Its position is determined by the X and Z values of the last point, and the Y value of the last point is based on the control point.
5. The simulation method for a kilometer cable with a variable motion trajectory according to claim 4, characterized in that, In step 5, the control point of the curved cable is the endpoint of the Bézier curve. When the position of the control point changes, the point is re-selected from the curve; the control point of the straight cable is the two endpoints.
6. The simulation method for a kilometer cable with a variable motion trajectory according to claim 1, characterized in that, In step 6, each program loop is a program frame rate refresh cycle. In each frame, it is determined whether the position of the input control point has changed. If the position of the input control point has changed, step 2 is repeated; otherwise, the next program loop is entered.
Citation Information
Patent Citations
Flexible rope simulation method
CN102495752A
Simulation method for 3D (three-dimensional) rope
CN104572088A