Transition chain list generation method and device, equipment and storage medium
By obtaining the list of feature edges and transition surfaces of the CAE model, combined with topological sorting, an accurate transition chain list is generated, which solves the inaccuracy problem caused by manual selection in the existing technology, and achieves automation and accuracy improvement.
Patent Information
- Application Number
- CN202411116216.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-14
- Publication Date
- 2024-12-27
AI Technical Summary
In the prior art, the generation of transition chain lists of CAE models depends on manual selection by operators, which are susceptible to subjectivity and lead to inaccuracy.
By obtaining feature edges in the model, determining the transition face list, and generating a transition chain based on the connection relationship between transition faces, topologically sorting it with dependencies to generate a transition chain list.
Improves the accuracy of the transition chain list, provides an automated process, reduces human intervention, and ensures the reliability of subsequent processing steps.
Smart Images

Figure CN119203478A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer-aided engineering technology, and in particular to a method, device, equipment and storage medium for generating a transition chain list. Background Art
[0002] Computer Aided Engineering (CAE) models are usually represented using Boundary Representation (B-Rep). Since B-Rep does not contain the semantic information of fillets, before subsequent operations, it is necessary to identify all fillets in the model and generate a corresponding transition chain list for subsequent deletion.
[0003] In the related art, after the operator inputs the CAE model into the software, the software will check the shape of the boundary curve based on the geometric algorithm. If a sudden change in curvature is detected at the intersection of two edges, the software will infer that there is a fillet at that location. After this analysis process, the software can identify all the fillets. Then, the operator manually selects the fillets one by one and summarizes them to obtain a transition chain list.
[0004] Although the software can automatically identify the fillet, the subsequent transition chain list still relies on the operator's manual selection. In the manual selection process, there may be a certain degree of subjectivity due to differences in operator judgment, resulting in an inaccurate transition chain list. Summary of the invention
[0005] The main purpose of the present application is to provide a method, device, equipment and storage medium for generating a transition chain list, aiming to solve the technical problem of inaccurate transition chain list.
[0006] To achieve the above purpose, the present application proposes a method for generating a transition chain list, the method comprising:
[0007] Get the characteristic edges in the model;
[0008] Determine a transition surface list of the model according to the number of characteristic edges of each surface in the model; wherein the transition surface list includes all transition surfaces in the model, and the transition surfaces are surfaces that smoothly connect different areas;
[0009] Generate a transition chain according to the connectivity relationship of each transition surface in the transition surface list; the transition chain is a maximum set of transition surfaces connected by cross edges, and the cross edge is an edge formed by the intersection of two surfaces that are not on the same plane;
[0010] Dependencies of all the transition chains are determined, and topological sorting is performed according to the dependencies to obtain a transition chain list.
[0011] In one embodiment, the step of determining the transition surface list of the model according to the number of characteristic edges of each surface in the model comprises:
[0012] If there is a smooth edge on the current face, determine whether the smooth edge includes a supporting edge, wherein the smooth edge is an edge that smoothly connects the faces;
[0013] If the smooth edge includes the supporting edge, the current face is added to the transition face list.
[0014] In one embodiment, the step of determining the transition surface list of the model according to the number of characteristic edges of each surface in the model comprises:
[0015] If the number of crossing edges on the current face is greater than or equal to three, determining the smoothness of the current face;
[0016] If the smoothness meets the requirement, the current surface is added to the transition surface list.
[0017] In one embodiment, if the smoothness meets the requirement, the step of adding the current surface to the transition surface list comprises:
[0018] The smoothness is determined according to the ratio of the smooth edges to all edges on the current surface.
[0019] In one embodiment, the step of generating a transition chain according to the connectivity relationship of each transition surface in the transition surface list includes:
[0020] Selecting a target transition surface from the transition surface list, and determining the intersection edge of the target transition surface;
[0021] Determine other transition surfaces connected by the intersection edges from the transition surface list;
[0022] The transition chain is generated according to the target transition surface and the other transition surfaces.
[0023] In one embodiment, the step of determining the dependency relationship of all the transition chains comprises:
[0024] According to the generation time of the current transition chain and other transition chains, the dependency relationship of all the transition chains is determined.
[0025] In one embodiment, after the step of determining the dependency relationships of all the transition chains and performing topological sorting according to the dependency relationships to obtain a transition chain list, the step further includes:
[0026] Determine the reverse deletion order of the transition chain list according to the dependency relationship;
[0027] According to the reverse deletion order, splitting operations are performed on overlapping transitions and steep transitions in the transition chain list;
[0028] Reconstruct the disappeared support surface corresponding to the splitting operation;
[0029] The model is deleted according to the transition chain list.
[0030] In addition, to achieve the above purpose, the present application also proposes a device for generating a transition chain list, the device comprising:
[0031] A feature edge acquisition module is used to acquire feature edges in the model;
[0032] A transition surface list generating module, used to determine a transition surface list of the model according to the number of characteristic edges of each surface in the model; wherein the transition surface list includes all transition surfaces in the model, and the transition surfaces are surfaces that smoothly connect different regions;
[0033] A transition chain generation module, used to generate a transition chain according to the connectivity relationship of each transition surface in the transition surface list; the transition chain is a maximum set of transition surfaces connected by cross edges, and the cross edge is an edge formed by the intersection of two surfaces that are not on the same plane;
[0034] The transition chain list generation module is used to determine the dependency relationships of all the transition chains and perform topological sorting according to the dependency relationships to obtain a transition chain list.
[0035] In addition, to achieve the above-mentioned purpose, the present application also proposes a device for generating a transition chain list, the device comprising: a memory, a processor, and a computer program stored in the memory and executable on the processor, the computer program being configured to implement the steps of the method for generating a transition chain list as described above.
[0036] In addition, to achieve the above-mentioned purpose, the present application also proposes a storage medium, which is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by the processor, the steps of the method for generating a transition chain list as described above are implemented.
[0037] One or more technical solutions proposed in this application have at least the following technical effects:
[0038] The present application provides a method for generating a transition chain list, which determines a transition face list according to the number of characteristic edges of each face in a model, generates transition chains according to the connectivity relationship between the transition faces, and then performs topological sorting with reference to the dependency relationship between the transition chains to generate a transition chain list. This solution topologically sorts all transition chains according to the dependency relationship, so that the final transition chain list not only includes the transition chains themselves, but also includes the dependency relationship between them, which greatly improves the accuracy of the transition chain list and provides a solid foundation for subsequent processing steps. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the present application and, together with the description, serve to explain the principles of the present application.
[0040] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, for ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.
[0041] Figure 1 Schematic diagram of vertex transition and edge transition;
[0042] Figure 2 It is a schematic diagram of face-to-face transition and face-edge transition;
[0043] Figure 3 is a schematic diagram of feature edges;
[0044] Figure 4 A flowchart diagram of a method for generating a transition chain list according to an embodiment of the present invention;
[0045] Figure 5 A flow chart of the second embodiment of the method for generating a transition chain list of the present application;
[0046] Figure 6 A flowchart diagram of a third embodiment of the method for generating a transition chain list of the present application;
[0047] Figure 7 A flowchart diagram of a fourth embodiment of a method for generating a transition chain list of the present application is provided;
[0048] Figure 8 A schematic diagram of a transition stacking transition in Embodiment 4 of the method for generating a transition chain list of the present application;
[0049] Fig. 9 This is a schematic diagram of a steep transition in Embodiment 4 of the method for generating a transition chain list of the present application;
[0050] Fig.10 A schematic diagram of the disappearance of the support surface during the transition generation process in the fourth embodiment of the method for generating a transition chain list of the present application;
[0051] Fig.11 A schematic diagram of the module structure of a device for generating a transition chain list according to an embodiment of the present application;
[0052] Fig.12 A schematic diagram of the device structure of the hardware operating environment involved in the method for generating a transition chain list in an embodiment of the present application.
[0053] The purpose, features and advantages of this application will be further described in conjunction with the embodiments and with reference to the accompanying drawings. DETAILED DESCRIPTION
[0054] It should be understood that the specific embodiments described herein are only used to explain the technical solutions of the present application and are not used to limit the present application.
[0055] In order to better understand the technical solution of the present application, a detailed description will be given below in conjunction with the accompanying drawings and specific implementation methods.
[0056] CAE models are usually represented by B-Rep. Since B-Rep does not contain semantic information of fillets, before subsequent operations, it is necessary to identify all fillet features of the model and generate a corresponding transition chain list for subsequent deletion.
[0057] In traditional software, operators are required to manually select fillets and delete them. However, when the model and fillet network become complex, this process requires high operator experience. Therefore, the process of manually selecting fillets becomes difficult and time-consuming.
[0058] In current commercial software, after the operator inputs the CAE model into the software, the software will check the shape of the boundary curve based on the geometric algorithm. If a sudden change in curvature is detected at the intersection of two edges, the software will infer that there is a fillet at that location. After this analysis process, the software can identify all fillets. Then, the operator manually selects the fillets one by one and summarizes them to obtain a transition chain list.
[0059] The above process can automatically identify fillets, which is an improvement over previous traditional methods. However, the subsequent transition chain list still relies on manual selection by the operator. During the manual selection process, it is inevitably affected by subjective factors, resulting in an inaccurate transition chain list.
[0060] To solve the above problem, the present application provides a solution, which comprises obtaining characteristic edges in a model; determining a transition face list of the model according to the number of characteristic edges of each face in the model; wherein the transition face list contains all transition faces in the model, and the transition faces are faces that smoothly connect different areas; generating a transition chain according to the connectivity relationship of each transition face in the transition face list; the transition chain is a maximal set of transition faces connected by cross edges, and the cross edges are edges formed by the intersection of two faces that are not on the same plane; determining the dependency relationships of all the transition chains, and performing topological sorting according to the dependency relationships to obtain a transition chain list.
[0061] It should be noted that the execution subject of this solution can be a computing service device with data processing, network communication and program running functions, such as a tablet computer, a personal computer, a mobile phone, etc., or a device for generating a transition chain list capable of realizing the above functions, etc. The following embodiments are described below by taking a device for generating a transition chain list as an example.
[0062] For easier understanding, a brief introduction to the professional terms is given here.
[0063] Reference Figure 1 Vertex-blend face is a method of making a smooth transition around a vertex. Edge-blend face is a method of making a smooth transition between two vertices along their common edge.
[0064] Reference Figure 2 Edge blending can be divided into face-face blending and face-edge blending.
[0065] Reference Figure 3 .
[0066] Support face: the surface where the transition connection is to be generated;
[0067] Smooth edge: the edge between faces is smoothly connected;
[0068] The smooth edge includes the support edge (spring edge), which is the edge between the transition surface and the support surface;
[0069] Smooth edges also include cross edges, which are edges between transition surfaces in a transition chain.
[0070] Terminating edge: the edge between the transition surface and the non-transition surface;
[0071] Blend chain: a collection of maximal blend surfaces connected by cross edges;
[0072] Transition surface, a surface that smoothly connects different areas.
[0073] Based on this, the present application embodiment provides a method for generating a transition chain list, referring to Figure 4 , Figure 4 This is a flow chart of the first embodiment of the method for generating a transition chain list of the present application.
[0074] In this embodiment, the method for generating the transition chain list includes steps S10 to S40:
[0075] Step S10, obtaining characteristic edges in the model;
[0076] It should be noted that feature edges usually refer to those edges with special geometric properties, such as edges connecting different geometric shapes, or edges located at the location where the internal structure of the model changes.
[0077] Optionally, the edges in the model are traversed and characteristic edges are identified according to certain rules or algorithms. The rules or algorithms may consider geometric properties of the edges, such as length, direction, etc., or topological properties of the edges, such as the number and type of adjacent faces, etc.
[0078] Exemplarily, the characteristic edges include at least one of smooth edges, supporting edges, crossing edges, adjacent edges, tangent edges, and the like.
[0079] A smooth edge is an edge that connects two faces with similar or identical curvatures. The angle between the normal vectors of the two faces connected by each edge is calculated. If the angle is less than the corresponding threshold, it is determined to be a smooth edge. The threshold is an empirical value that can be in the range of 0-3 degrees, such as 0.1 degrees. It can be adjusted according to specific business needs and is not specifically limited here.
[0080] Smooth edges include supporting edges and crossing edges.
[0081] Supporting edges refer to edges that play a supporting role in the model. The length and normal vector difference of the edge are calculated. If the length is greater than the corresponding threshold and the normal vector difference is less than the corresponding threshold, it is a supporting edge.
[0082] A cross edge is an edge formed by the intersection of two faces that are not on the same plane. Use a geometric algorithm to check whether the two faces intersect. If there is an intersection point, it is a cross edge.
[0083] Adjacent edges are edges that share two adjacent faces. Traverse the edge set and check the vertices of each edge. If the vertices of two edges are the same and they share one of the same faces, they are determined to be adjacent edges.
[0084] A tangent edge is an edge that connects two surfaces tangentially. Calculate the direction vector of the edge and check if it is the same as the tangent direction of the surface. If so, it is a tangent edge.
[0085] Step S20, determining a transition surface list of the model according to the number of characteristic edges of each surface in the model; wherein the transition surface list includes all transition surfaces in the model, and the transition surfaces are surfaces that smoothly connect different regions;
[0086] It should be noted that the number of feature edges can be used as a basis for determining whether the surface is a transition surface. The transition surface list contains all transition surfaces in the current model. Transition surfaces are surfaces that smoothly connect different areas.
[0087] For each face, traverse its boundary and count the number of characteristic edges.
[0088] In a feasible implementation, if a face is adjacent to multiple faces, it means that it is located at the junction of different geometric regions, and it is likely to be a transition face. Then the number of adjacent edges of the current face can be counted, which indirectly reflects the number of other faces adjacent to the face.
[0089] Exemplarily, for edge transition, the number of supporting edges among adjacent edges is analyzed. If the number of supporting edges is 1 or 2, the edge transition is satisfied, so the current face is marked as a transition face and added to the transition face list; for vertex transition, the number of crossing edges among adjacent edges is analyzed. If the number of crossing edges is greater than or equal to 3, the vertex transition is satisfied, so the current face is marked as a transition face and added to the transition face list.
[0090] Step S30, generating a transition chain according to the connectivity relationship of each transition surface in the transition surface list; the transition chain is a maximum set of transition surfaces connected by cross edges, and the cross edge is an edge formed by the intersection of two surfaces that are not on the same plane;
[0091] In a feasible implementation, a graph theory method is used to determine the connectivity between transition surfaces. The specific steps are as follows:
[0092] Define the structure of the graph, consider transition surfaces as nodes in the graph, and consider the connection relationships between transition surfaces as edges in the graph; create a list or set to track the visited transition surfaces, and mark a transition surface as visited each time it is visited; traverse each transition surface, and if a transition surface is found to be unvisited, start a depth-first search or breadth-first search to explore all its reachable adjacent transition surfaces, where the depth-first search is to first go deep into the end of a path and then backtrack to the previous node, while the breadth-first search is to first visit all neighbors of the current node and then go deep into the neighbors of the next node layer by layer; record all reachable transition surfaces, obtain the connectivity relationship, and save them in the result set.
[0093] Further, for each transition surface in the transition surface list, the following operations are performed:
[0094] A new chain is constructed for the target transition surface. The connectivity relationship to which the target transition surface belongs is queried in the result set. If there are other transition surfaces in the connectivity relationship, the target transition surface and other transition surfaces are added to the new chain to obtain a transition chain.
[0095] By analogy, the transition chains corresponding to all transition surfaces can be obtained.
[0096] In another feasible implementation, the connectivity between transition surfaces is determined using cross edges, and the specific steps are as follows:
[0097] First, select the target transition surface from the transition surface list. This can be selected by user input, automatic selection by the algorithm, or the best choice. A new chain is constructed for the target transition surface.
[0098] Then, traverse all the edges connected by the target transition face and mark the cross edges. Select a cross edge and check whether the other faces it connects also exist in the transition face list. If so, mark these faces as other transition faces connected to the target transition face. Finally, add the target transition face and other transition faces to the chain to get a transition chain, and remove the target transition face and other transition faces from the transition face list to avoid repeated operations.
[0099] By analogy, the transition chains corresponding to all transition surfaces can be obtained.
[0100] Exemplarily, there are the following three transition surfaces in the transition surface list BL, taking a triangle as an example, represented by its vertices:
[0101] Transition surface A: (vertex 1, vertex 2, vertex 3)
[0102] Transition surface B: (vertex 2, vertex 3, vertex 4)
[0103] Transition surface C: (vertex 4, vertex 5, vertex 6)
[0104] First, transition surface A is selected as the target transition surface.
[0105] The edges of transition surface A are: (vertex 1 - vertex 2), (vertex 2 - vertex 3), (vertex 3 - vertex 1).
[0106] Among them, since (vertex 2-vertex 3) also belongs to transition surface B, (vertex 2-vertex 3) is a crossing edge.
[0107] Therefore, the transition surface A and the transition surface B connected by (vertex 2 - vertex 3) are added to the chain, and the transition chain is [A->B]. Finally, the transition surface A and the transition surface B are removed from the transition surface list BL.
[0108] It can be understood that this solution directly determines the connectivity based on the cross edges between transition faces, and only needs to focus on the target face and its directly connected faces without having to build a complete graph structure. The logic of this solution is simple, reducing the complexity of the data structure. Moreover, this solution avoids unnecessary traversal, making the search process more efficient.
[0109] Step S40: Determine the dependency relationships of all the transition chains, and perform topological sorting according to the dependency relationships to obtain a transition chain list.
[0110] It is important to note that a topological sort is a linear sort of a directed graph, where for each directed edge (u, v) in the graph, node u appears before node v in the sort.
[0111] First, clarify the dependencies between each transition chain. This dependency may be direct, that is, the output of one chain is the input of another chain, or it may be indirect, that is, a dependency chain formed by multiple chains.
[0112] Secondly, based on these dependencies, a topological graph is constructed, where each node represents a transition chain and each directed edge represents the dependency between chains.
[0113] Again, use a standard topological sorting algorithm, such as Kahn algorithm or DFS algorithm, to sort the topological graph, generate an execution order of the transition chains, and return a list of transition chains arranged in dependency order.
[0114] The dependency relationship may be determined based on generation time, or based on geometric features such as geometric shape, size and positional relationship between transition surfaces, or physical properties such as strength and elasticity of transition surfaces, or business rules.
[0115] Optionally, perform topological sorting based on generation time. The specific steps are as follows:
[0116] Get the current transition chain A from the transition chain list. Then use the properties of the current transition chain to determine other adjacent transition chains B.
[0117] It is known that each transition chain should record a timestamp or sequence number when it is generated to indicate the order in which it is generated.
[0118] Update the directed edges in the topology graph according to the generation time of the current transition chain A and other transition chains B. If the generation time of other transition chains B is earlier than the generation time of the current transition chain A, add the directed edge B->A in the topology graph.
[0119] It can be understood that generation time provides a simple and objective way to determine dependencies. Through the time sequence, the generation process of each transition chain and its relationship can be clearly understood, avoiding complex geometric or physical property analysis. Moreover, unlike business rules, generation time is an objective attribute that is not affected by human subjective factors. Therefore, this solution uses generation time as the basis for judgment, making the dependency very objective and accurate.
[0120] This embodiment provides a method for generating a transition chain list, which determines a transition face list according to the number of characteristic edges of each face in the model, generates transition chains according to the connectivity relationship between the transition faces, and then performs topological sorting with reference to the dependency relationship between the transition chains to generate a transition chain list. This solution topologically sorts all transition chains according to the dependency relationship, so that the final transition chain list includes not only the transition chains themselves, but also the dependency relationship between them, which greatly improves the accuracy of the transition chain list and provides a solid foundation for subsequent processing steps.
[0121] Based on the first embodiment of the present application, in the second embodiment of the present application, the same or similar contents as those in the above-mentioned embodiment 1 can refer to the above introduction, and will not be repeated later. Figure 5 , step S20 may include steps A10 to A20:
[0122] Step A10, if there is a smooth edge on the current face, determine whether the smooth edge includes a supporting edge; wherein the smooth edge is an edge that smoothly connects the faces;
[0123] Step A20: If the smooth edge includes the supporting edge, the current surface is added to the transition surface list.
[0124] This scheme is used to identify edge transitions.
[0125] For each face in the model, do the following:
[0126] Check whether there is a smooth edge on the current face. Calculate the angle between the normal vectors of the two faces connected by each edge. If the angle is less than the corresponding threshold, such as 10 degrees, it is determined to be a smooth edge.
[0127] If there are no smooth edges, it may be an isolated face or the connection with the surrounding faces is not smooth, so it cannot be a transition face.
[0128] If there is a smooth edge, it means that the face is at least connected to another face to some extent. At this point, further check whether there is a supporting edge in the current face, that is, calculate the difference between the length and the normal vector of the edge. If the length is greater than the corresponding threshold and the normal vector difference is less than the corresponding threshold, it is a supporting edge.
[0129] If there is no supporting edge on the current face, it may be an isolated face, or its connection is not achieved through supporting edges. Such a face does not directly participate in the transition connection between faces, or cannot meet the functional requirements of the transition face, so it cannot be called a valid transition face.
[0130] If there is a supporting edge on the current surface, it means that the current surface has a certain structural stability or support capacity. At this time, it can be added to the transition surface list.
[0131] Among them, Figure 2 As shown in the figure, if a face has two supporting edges, it usually means that it is connected to other faces in both directions, so it can be marked as a potential face-to-face transition; if a face has only one supporting edge, it may be connected to a face and an edge, so it can be marked as a potential edge-to-face transition. Through this subdivision, in the subsequent deletion operation, the impact of the removal of the transition surface on the overall model can be more clearly judged, especially in complex geometry, and the consequences of the deletion operation can be quickly evaluated.
[0132] It should be noted that since the calculation of smooth edges is relatively simple and fast, first judging the smooth edges can quickly filter out some non-transition surfaces, thereby reducing the subsequent support edge analysis. This can save calculation time and resources and improve overall efficiency.
[0133] In general, the existence of smooth edges makes it possible to avoid abrupt boundaries between adjacent faces, thus achieving a transition in appearance; while supporting edges ensure that this transition has sufficient structural stability, avoiding weaknesses or instability that may occur in actual use. Therefore, if the current face includes smooth edges and supporting edges, it means that there is an edge transition on the current face, so it can be added to the transition face list.
[0134] This embodiment provides a method for generating a transition chain list, which directly identifies typical features of edge transitions, namely, smooth edges and supporting edges. This method is more direct and targeted and can identify transition surfaces more accurately.
[0135] Based on the first embodiment of the present application, in the third embodiment of the present application, the same or similar contents as those in the first embodiment can be referred to the above description, and will not be described in detail later. Figure 6 , step S20 may include steps B10 to B20:
[0136] Step B10, if the number of cross edges on the current face is greater than or equal to three, determining the smoothness of the current face;
[0137] Step B20: If the smoothness meets the requirement, the current surface is added to the transition surface list.
[0138] This scheme is used to identify vertex transitions. Vertex transitions generally refer to a collection of faces in a model that exhibit smooth connections and soft transitions.
[0139] For each face in the model, do the following:
[0140] Check the number of crossing edges in the transition surface. Use geometric algorithms to check whether the two surfaces intersect. If there is an intersection point, it is a crossing edge.
[0141] Cross edges can be understood as the edges between transition surfaces in a transition chain. At least three cross edges are required to form a closed surface, which provides the necessary geometric structure for connection. Therefore, if the number of cross edges is greater than or equal to three, then the surface is more likely to be located at the junction of different geometric features, that is, it is more likely to be a transition surface. At this point, the smoothness of the transition surface is further checked. By checking the smoothness, it can be ensured that the surface is indeed smoothly transitioned in geometry to improve the accuracy of recognition.
[0142] Optionally, vertices in the transition surface are determined, and a local neighborhood is defined for each vertex. Within the local neighborhood of each vertex, the curvature can be calculated by methods such as Gaussian curvature, mean curvature change, etc., and the smoothness can be evaluated.
[0143] Alternatively, identify all edges adjacent to the current face. Then, count the number of edges judged to be smooth among these edges. Calculate the ratio of smooth edges to all edges, that is, smoothness = number of smooth edges / number of all edges. If the smoothness is close to 1, it means that most of the adjacent edges are smooth, indicating that the face is relatively smooth as a whole; if the smoothness is close to 0, it means that most of the adjacent edges are rough or irregular, indicating that the face may have a large transition or roughness. This scheme directly calculates the smoothness by counting the proportion of smooth edges in all edges. This method is simple to calculate, intuitive and easy to understand, and does not depend on the specific position of the vertex or the size of the local neighborhood, so it is more flexible and adaptable.
[0144] Furthermore, if the smoothness meets the requirement, such as the smoothness is close to 1, it can be determined that the transition surface is part of the vertex transition, and thus it is added to the transition surface list.
[0145] This embodiment provides a method for generating a transition chain list, which directly identifies typical features of vertex transitions, namely, cross edges and smooth edges. This method is more direct and targeted and can identify transition surfaces more accurately.
[0146] Based on the first embodiment of the present application, in the fourth embodiment of the present application, the same or similar contents as those in the first embodiment can refer to the above description, and will not be described in detail later. Figure 7 After step S40, steps C10 to C40 may also be included:
[0147] Step C10, determining the reverse deletion order of the transition chain list according to the dependency relationship;
[0148] Step C20, splitting overlapping transitions and steep transitions in the transition chain list according to the reverse deletion order;
[0149] It should be noted that blend on blends and cliff blends are complex superposition forms. Blend on blends means that a large transition process contains multiple small, overlapping transition stages, such as Figure 8 As shown in Figure 2, a steep transition refers to a sharp change from one state to another without any obvious intermediate stages or smooth transition processes, such as Fig. 9 shown.
[0150] In the process of generating the transition chain list, it is generated based on the forward order of the dependency relationship to ensure that the dependency of each link is built on a determined basis. However, when deleting these transition chains, the order of deletion needs to be determined based on the reverse logic of the dependency relationship. Therefore, the dependency relationship is inverted to obtain the corresponding reverse deletion order.
[0151] Then, in reverse deletion order, starting from the end of the transition chain list, the following operations are performed on the transition chains:
[0152] Optionally, the surface normals of the transition surfaces in the transition chain are calculated. If the angle between the adjacent surface normals is small, such as less than 30 degrees, that is, the normal direction changes gently, it is determined that there may be overlapping transitions between the surfaces; if the angle between the adjacent surface normals exceeds a specific threshold, such as 45 degrees, that is, the normal direction changes sharply, it is determined that there is a steep transition between the surfaces.
[0153] For overlapping transitions, the following splitting operations are performed: identifying overlapping edges, i.e. edges where multiple levels or stages touch; introducing new vertices at overlapping edges to create a smoother transition; re-establishing edges and faces based on the new vertices to ensure the integrity and connectivity of the model; and modifying the model structure to include new geometric elements.
[0154] For steep transitions, the following splitting operations are performed: identify steep edges, i.e., edges where states or parameters change sharply; introduce new vertices at the steep edges to more accurately represent state changes; re-divide the steep edges based on the newly introduced vertices to form new edges and faces; and modify the model structure to include new geometric elements.
[0155] Step C30, reconstructing the disappeared supporting surface corresponding to the splitting operation;
[0156] Support face deleted during blending, such as Fig.10 This process may affect the structural integrity and stability of the model. Therefore, a reconstruction operation is required.
[0157] First, the geometric morphology of the split model is analyzed to identify the missing support surfaces due to the split operation, and the key design parameters of the missing support surfaces are extracted, including but not limited to their shape characteristics, specific dimensions, etc. At the same time, detailed information on the faces and edges adjacent to these support surfaces is obtained to ensure that the reconstructed surfaces can be correctly connected. Then, based on the key design parameters of the missing support surfaces, the parametric modeling tool is used to redraw the support surfaces. Then, based on the previously obtained information on adjacent faces and edges, appropriate connection techniques and methods are used to connect the newly created support surfaces to the rest of the model.
[0158] Step C40: Deleting the model according to the transition chain list.
[0159] For the model, delete all transition faces in the transition chain list. The specific steps are as follows:
[0160] The crossing edges and terminal edges in these transition surfaces are identified, and the edge collapse algorithm is used for these edges, that is, the edges are eliminated by moving the two vertices of the edge so that they coincide.
[0161] The supporting edges in these transition surfaces are identified and eliminated using the collapse algorithm.
[0162] After collapsing the relevant edges, the transition face deletion operation is completed. At this time, the geometric information of the remaining edges and vertices in the model needs to be recalculated, including position, direction, length, angle, etc. The updated geometric information is associated with the model to ensure that subsequent operations are based on accurate geometric data.
[0163] This embodiment provides a method for generating a transition chain list. After the transition chain list is generated, the transition faces are deleted in reverse order according to the dependency relationship, which simplifies the model structure and improves the simplicity and readability of the model. Overall, by integrating the identification, sorting and deletion of transition chains into the automated algorithm, the entire process can be seamlessly connected, thereby reducing human intervention. This means that once the model is input, the algorithm can automatically complete the complex processing process, improving work efficiency and accuracy.
[0164] Exemplarily, the complete process of automatic identification and deletion of transition chains is as follows:
[0165] Transition chain identification algorithm:
[0166] Algorithm name: Transition chain identification
[0167] Input: Boundary representation model with transitions
[0168] Output: Transition chain in the order in which it was generated
[0169] Step 1: Find the transition surface
[0170] For each face, do the following
[0171] (1.1) Collect all smooth edges on the surface
[0172] If the face does not have smooth edges, skip this face and continue with the next face operation.
[0173] (1.2) Support edge on the collection surface
[0174] If there are 2 supporting edges, mark it as a potential face-to-face transition
[0175] If there is 1 supporting edge, mark it as a potential edge-face transition
[0176] If there is no supporting edge, skip this face and continue with the next face operation.
[0177] (1.3) Collect all the cross edges of the face
[0178] (1.4) Determine the transition surface parameter information
[0179] (1.5) Add the current surface to the transition surface list BL
[0180] The surface operation is completed;
[0181] Step 2: Detecting Vertex Transitions
[0182] For each face, do the following
[0183] (2.1) If the face has less than 3 cross edges, skip it and continue with the next face operation
[0184] (2.2) If not all edges are smooth, skip and proceed to the next face operation
[0185] (2.3) Add the current surface to the transition surface list BL
[0186] The surface operation is completed;
[0187] Step 3: Construction of transition chain and determination of its generation order
[0188] For each face in the transition face list do the following
[0189] (3.1) Build a new chain C and add it to the transition chain list CL
[0190] (3.2) Add the transition surface connected to the current surface through the crossing edge to C
[0191] (3.3) Remove the faces in C from the transition face list BL
[0192] End of surface operation
[0193] Construct a topological graph G with transition chains as vertices
[0194] For each transition chain, do the following
[0195] (3.4) The current transition chain is recorded as A. Take out another transition chain B adjacent to the current transition chain. If B is generated before A, then add a directed edge B->A in G.
[0196] (3.5) Topologically sort G to obtain the transition chain generation order
[0197] Returns a list of transition chains in the order they were generated.
[0198] Transition chain deletion algorithm:
[0199] Algorithm name: Transition chain deletion
[0200] Input: Boundary representation model with transition chain C
[0201] Output: Model after deleting transition chain C
[0202] (1) Handling overlapping transitions: split along the overlapping edges; handling steep transitions: split along the steep edges
[0203] (2) Reconstruction of the support surface
[0204] (2.1) Dealing with the disappearance of the support surface caused by transition overlap
[0205] (2.2) Dealing with the disappearance of the support surface caused by the steep transition
[0206] (3) Delete the transition surface
[0207] (3.1) Collapse of crossing edges and termination edges
[0208] (3.2) Collapse support edge
[0209] (3.3) Calculate the geometric information of edges and vertices
[0210] Handling some special cases caused by other features
[0211] It should be noted that the above examples are only used to understand the present application and do not constitute a limitation on the method for generating the transition chain list of the present application. More simple transformations based on this technical concept are all within the scope of protection of the present application.
[0212] This application also provides a device for generating a transition chain list, please refer to Fig.11 , the generation device of the transition chain list includes:
[0213] A feature edge acquisition module 10 is used to acquire feature edges in the model;
[0214] A transition surface list generating module 20 is used to determine a transition surface list of the model according to the number of characteristic edges of each surface in the model; wherein the transition surface list contains all transition surfaces in the model, and the transition surfaces are surfaces that smoothly connect different regions;
[0215] A transition chain generation module 30 is used to generate a transition chain according to the connectivity relationship of each transition surface in the transition surface list; the transition chain is a maximum set of transition surfaces connected by cross edges, and the cross edge is an edge formed by the intersection of two surfaces that are not on the same plane;
[0216] The transition chain list generating module 40 is used to determine the dependency relationships of all the transition chains, and to perform topological sorting according to the dependency relationships to obtain a transition chain list.
[0217] The device for generating a transition chain list provided by the present application adopts the method for generating a transition chain list in the above embodiment, and can solve the technical problem of inaccurate transition chain lists. Compared with the prior art, the beneficial effects of the device for generating a transition chain list provided by the present application are the same as the beneficial effects of the method for generating a transition chain list provided by the above embodiment, and other technical features in the device for generating a transition chain list are the same as the features disclosed in the above embodiment method, and are not described in detail here.
[0218] The present application provides a device for generating a transition chain list, and the device for generating a transition chain list includes: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the method for generating a transition chain list in the above-mentioned embodiment one.
[0219] Reference below Fig.12 , which shows a schematic diagram of the structure of a device for generating a transition chain list suitable for implementing an embodiment of the present application. The device for generating a transition chain list in the embodiment of the present application may include but is not limited to mobile terminals such as mobile phones, laptop computers, digital broadcast receivers, PDAs (Personal Digital Assistants), PADs (Portable Application Descriptions), PMPs (Portable Media Players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Fig.12 The transition chain list generation device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present application.
[0220] like Fig.12As shown, the device for generating a transition chain list may include a processing device 1001 (e.g., a central processing unit, a graphics processor, etc.), which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 1002 or a program loaded from a storage device 1003 to a random access memory (RAM) 1004. Various programs and data required for the operation of the device for generating a transition chain list are also stored in the RAM 1004. The processing device 1001, the ROM 1002, and the RAM 1004 are connected to each other via a bus 1005. An input / output (I / O) interface 1006 is also connected to the bus. Typically, the following systems may be connected to the I / O interface 1006: input devices 1007 including, for example, a touch screen, a touchpad, a keyboard, a mouse, an image sensor, a microphone, an accelerometer, a gyroscope, etc.; output devices 1008 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 1003 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 1009. The communication device 1009 may allow the generation device of the transition chain list to communicate wirelessly or wired with other devices to exchange data. Although the figure shows a generation device of the transition chain list with various systems, it should be understood that it is not required to implement or have all the systems shown. More or fewer systems may be implemented or have instead.
[0221] In particular, according to the embodiments disclosed in the present application, the process described above with reference to the flowchart can be implemented as a computer software program. For example, the embodiments disclosed in the present application include a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program includes a program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device, or installed from a storage device 1003, or installed from a ROM 1002. When the computer program is executed by the processing device 1001, the above-mentioned functions defined in the method of the embodiment disclosed in the present application are executed.
[0222] The device for generating a transition chain list provided by the present application adopts the method for generating a transition chain list in the above embodiment, which can solve the technical problem of inaccurate transition chain lists. Compared with the prior art, the beneficial effects of the device for generating a transition chain list provided by the present application are the same as the beneficial effects of the method for generating a transition chain list provided by the above embodiment, and other technical features in the device for generating a transition chain list are the same as the features disclosed in the method of the previous embodiment, which will not be described in detail here.
[0223] It should be understood that the various parts disclosed in this application can be implemented by hardware, software, firmware or a combination thereof. In the description of the above embodiments, specific features, structures, materials or characteristics can be combined in any one or more embodiments or examples in a suitable manner.
[0224] The above is only a specific implementation of the present application, but the protection scope of the present application is not limited thereto. Any person skilled in the art who is familiar with the present technical field can easily think of changes or substitutions within the technical scope disclosed in the present application, which should be included in the protection scope of the present application. Therefore, the protection scope of the present application should be based on the protection scope of the claims.
[0225] The present application provides a computer-readable storage medium having a computer program stored thereon, and the computer program is used to execute the method for generating a transition chain list in the above embodiment.
[0226] The computer-readable storage medium provided in the present application may be a non-volatile storage medium or a volatile storage medium. For example, it may be a USB flash drive, but is not limited to electrical, magnetic, optical, electromagnetic, infrared, or semiconductor systems, systems or devices, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM: Random Access Memory), a read-only memory (ROM: Read Only Memory), an erasable programmable read-only memory (EPROM: Erasable Programmable Read Only Memory or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM: CD-Read Only Memory), an optical storage device, a magnetic storage device, or any suitable combination of the above. In this embodiment, the computer-readable storage medium may be any tangible medium containing or storing a program, which may be used by or in combination with an instruction execution system, system or device. The program code contained on the computer-readable storage medium may be transmitted using any appropriate medium, including but not limited to: wires, optical cables, RF (Radio Frequency: Radio Frequency), etc., or any suitable combination of the above.
[0227] The computer-readable storage medium may be included in the device for generating the transition chain list; or may exist independently without being assembled into the device for generating the transition chain list.
[0228] The above-mentioned computer-readable storage medium carries one or more programs. When the above-mentioned one or more programs are executed by the device for generating the transition chain list, the device for generating the transition chain list: obtains the characteristic edges in the model; determines the transition face list of the model according to the number of characteristic edges of each face in the model; wherein the transition face list contains all the transition faces in the model, and the transition faces are faces that smoothly connect different areas; generates a transition chain according to the connectivity relationship of each transition face in the transition face list; the transition chain is a maximum set of transition faces connected by cross edges, and the cross edges are edges formed by the intersection of two faces that are not on the same plane; determines the dependency relationship of all the transition chains, and performs topological sorting according to the dependency relationship to obtain the transition chain list.
[0229] Computer program code for performing the operations of the present application may be written in one or more programming languages or a combination thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0230] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present application. In this regard, each box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a sequence different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flow chart, and the combination of the boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0231] The modules involved in the embodiments described in this application may be implemented by software or hardware, wherein the name of the module does not constitute a limitation on the unit itself in some cases.
[0232] The readable storage medium provided by the present application is a computer-readable storage medium, which stores a computer program for executing the above-mentioned method for generating a transition chain list, and can solve the technical problem of inaccurate transition chain lists. Compared with the prior art, the beneficial effects of the computer-readable storage medium provided by the present application are the same as the beneficial effects of the method for generating a transition chain list provided by the above-mentioned embodiment, and will not be described in detail here.
[0233] The present application also provides a computer program product, including a computer program, which implements the steps of the method for generating a transition chain list as described above when executed by a processor.
[0234] The computer program product provided by the present application can solve the technical problem of inaccurate transition chain list. Compared with the prior art, the beneficial effects of the computer program product provided by the present application are the same as the beneficial effects of the method for generating the transition chain list provided by the above embodiment, which will not be described in detail here.
[0235] The above descriptions are only some embodiments of the present application, and are not intended to limit the patent scope of the present application. All equivalent structural changes made using the contents of the present application specification and drawings under the technical concept of the present application, or direct / indirect applications in other related technical fields are included in the patent protection scope of the present application.
Claims
1. A method for generating a transition chain list, characterized in that: The method comprises: Get the characteristic edges in the model; Determine a transition surface list of the model according to the number of characteristic edges of each surface in the model; wherein the transition surface list includes all transition surfaces in the model, and the transition surfaces are surfaces that smoothly connect different areas; Generate a transition chain according to the connectivity relationship of each transition surface in the transition surface list; the transition chain is a maximum set of transition surfaces connected by cross edges, and the cross edge is an edge formed by the intersection of two surfaces that are not on the same plane; Dependencies of all the transition chains are determined, and topological sorting is performed according to the dependencies to obtain a transition chain list.
2. The method according to claim 1, characterized in that The step of determining the transition surface list of the model according to the number of characteristic edges of each surface in the model comprises: If there is a smooth edge on the current face, determine whether the smooth edge includes a supporting edge; wherein the smooth edge is an edge that smoothly connects the faces; If the smooth edge includes the supporting edge, the current face is added to the transition face list.
3. The method according to claim 1 or 2, characterized in that The step of determining the transition surface list of the model according to the number of characteristic edges of each surface in the model comprises: If the number of crossing edges on the current face is greater than or equal to three, determining the smoothness of the current face; If the smoothness meets the requirement, the current surface is added to the transition surface list.
4. The method according to claim 3, characterized in that If the smoothness meets the requirement, the step of adding the current surface to the transition surface list comprises: The smoothness is determined according to the ratio of the smooth edges to all edges on the current surface.
5. The method according to claim 1, characterized in that The step of generating a transition chain according to the connectivity relationship of each transition surface in the transition surface list comprises: Selecting a target transition surface from the transition surface list, and determining the intersection edge of the target transition surface; Determine other transition surfaces connected by the intersection edges from the transition surface list; The transition chain is generated according to the target transition surface and the other transition surfaces.
6. The method according to claim 1, characterized in that The step of determining the dependency relationship of all the transition chains comprises: According to the generation time of the current transition chain and other transition chains, the dependency relationship of all the transition chains is determined.
7. The method according to claim 1, characterized in that After the step of determining the dependency relationships of all the transition chains and performing topological sorting according to the dependency relationships to obtain a transition chain list, the method further includes: Determine the reverse deletion order of the transition chain list according to the dependency relationship; According to the reverse deletion order, splitting operations are performed on overlapping transitions and steep transitions in the transition chain list; Reconstruct the disappeared support surface corresponding to the splitting operation; The model is deleted according to the transition chain list.
8. A device for generating a transition chain list, characterized in that: The device comprises: A feature edge acquisition module is used to acquire feature edges in the model; A transition surface list generating module, used to determine a transition surface list of the model according to the number of characteristic edges of each surface in the model; wherein the transition surface list includes all transition surfaces in the model, and the transition surfaces are surfaces that smoothly connect different regions; A transition chain generation module, used to generate a transition chain according to the connectivity relationship of each transition surface in the transition surface list; the transition chain is a maximum set of transition surfaces connected by cross edges, and the cross edge is an edge formed by the intersection of two surfaces that are not on the same plane; The transition chain list generation module is used to determine the dependency relationships of all the transition chains and perform topological sorting according to the dependency relationships to obtain a transition chain list.
9. A device for generating a transition chain list, characterized in that: The device comprises: a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program is configured to implement the steps of the method for generating a transition chain list according to any one of claims 1 to 7.
10. A storage medium, characterized in that: The storage medium is a computer-readable storage medium, and a computer program is stored on the storage medium. When the computer program is executed by a processor, the steps of the method for generating a transition chain list according to any one of claims 1 to 7 are implemented.
