Feature recognition method for shaft parts
By optimizing the identification of seam edges and determining their concavity and convexity, and constructing an attribute adjacency graph, the problems of low accuracy and efficiency in feature recognition of shaft parts are solved, achieving a more efficient feature recognition effect.
Patent Information
- Application Number
- CN202411574194.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-06
- Publication Date
- 2025-10-28
- Estimated Expiration
- 2044-11-06
AI Technical Summary
Existing technologies suffer from low accuracy and efficiency in the geometric feature recognition of shaft parts, especially in the areas of seam edge recognition and surface-edge association determination.
The existence of stitching edges is determined by the normal vectors of the adjacent faces of the edges. The method for determining concavity and convexity is optimized. An attribute adjacency graph is constructed, and the search steps of the VF2 algorithm are optimized. Stitching edges are identified and removed. A feature matrix and an attribute adjacency graph are constructed to improve the accuracy of feature recognition.
It improves the accuracy and efficiency of feature recognition for shaft parts, reduces redundant calculations, enhances the speed and accuracy of feature recognition, and adapts to feature recognition of complex structures.
Smart Images

Figure CN119693653B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a technology in the field of computer-aided design, specifically a method for feature recognition of shaft-type parts applied in fields such as CAD / CAM, CNC machining, and 3D visualization. Background Technology
[0002] Shaft-type parts in mechanical manufacturing are characterized by complex structures and high precision requirements, posing challenges to the identification of their geometric features. Current methods mostly rely on 3D CAD models, which struggle to accurately identify complex features such as multi-steps and threads. While topological relationship analysis improves identification, it still presents problems when handling complex structures, particularly in identifying seam edges and determining the relationship between surfaces and edges.
[0003] Existing part feature recognition technologies mainly include: ① Deep learning algorithms, which analyze 3D models and identify feature types. Their advantages lie in their efficient learning and strong generalization capabilities. However, this method requires a large amount of sample data, and the implementation and optimization process are relatively complex, increasing the difficulty of application. ② Boundary matching and volume decomposition-based methods. However, for shaft-type part feature recognition, these methods still suffer from insufficient topological information in the attribute adjacency graph and incomplete feature decomposition, resulting in low accuracy in feature recognition. Summary of the Invention
[0004] This invention addresses the problems of low accuracy and efficiency in existing technologies when processing complex geometries. It proposes a feature recognition method for shaft-type parts. The method determines the presence of seam edges by analyzing the normal vectors of adjacent faces, and reduces interference from redundant edges on the attribute adjacency graph by removing these seam edges. The method for determining edge concavity / convexity is optimized by calculating the normal vectors based on the edge type and the types of adjacent faces, improving the accuracy of concavity / convexity determination. Furthermore, the method optimizes the VF2 algorithm's search steps by constructing an attribute adjacency graph using custom node and edge attributes, further enhancing feature recognition accuracy. By constructing topological relationships between geometric features, more precise feature recognition of shaft-type parts is achieved, expanding the application scope of feature recognition.
[0005] This invention is achieved through the following technical solution:
[0006] This invention relates to a feature recognition method for shaft-type parts. After parsing the part model and removing the seam edges, the method establishes the face-edge relationship, identifies and removes the thread lines, creates inner and outer ring sets and seed ring sets to determine the concavity and convexity of the edges, and finally constructs a feature matrix and attribute adjacency graph and extracts parameters from the identified features.
[0007] The aforementioned analysis refers to a comprehensive geometric and topological analysis of the part's 3D model, specifically including: traversing all model faces and all model edges on the 3D model one by one; recording the geometric properties of the model edges, mapping them, and recording their correspondence with their respective model faces.
[0008] The stitching edge refers to a line generated during the analysis of a part model where two opposite edges within the surface parameter range can be mapped to the same edge. When the surface containing this edge is a cylindrical or conical surface, and the edge exists only within one surface, the edge is determined to be a stitching edge.
[0009] The construction of face-edge relationships specifically includes:
[0010] Step 1: Traverse all faces of the 3D model and create a face list. At the same time, traverse all edges of the model and create an edge list. Traverse all vertices of the model and create a vertex list.
[0011] Step 2: Traverse the model face list. When an unvisited model face object is accessed, obtain all model edges contained in that face, find the corresponding position index of all edges contained in that face in the edge list, add it to the edge index list of the face object, and add the index of that face in the list to the face index list of that edge.
[0012] Step 3: Traverse the model edge list. When an unvisited model edge object is accessed, obtain the endpoint of the model edge, add it to the vertex list of the edge object, and add the index of the edge to the edge index list under the vertex object.
[0013] The seed ring, i.e. the boundary of the feature partition, includes a single-sided seed ring and a multi-sided seed ring, wherein: the single-sided seed ring is distributed inside a single face, and the multi-sided seed ring is distributed on the boundary of multiple faces and is adjacent to multiple faces.
[0014] The creation of the inner ring set specifically includes:
[0015] Step a: Traverse all topological faces in the part model. For each visited face, extract the outer ring on that face.
[0016] Step b: Add the outer ring extracted from each topological face to the outer ring set used to identify the external connection relationship between each face and its adjacent faces;
[0017] Step c: Further traverse all loops in the part: For each loop visited, first determine whether the loop belongs to the outer loop set. If the loop does not belong to the outer loop set, treat it as an inner loop and further determine whether it is a seed loop.
[0018] When the ring is located on a conical surface or other non-planar structure, analyze its geometry and positional relationship, and treat the small-diameter ring of the conical surface as a seed ring.
[0019] Preferably, for thread features, when extracting the seed ring, the start and end points of the thread are analyzed, and seed rings with specific pitch and thread direction are identified.
[0020] The concavity or convexity of an edge refers to determining whether an edge is convex or concave based on the geometric relationship between the two faces it connects to. Specifically, if the included angle formed when the two faces intersect at the edge is less than 180 degrees, then the edge is concave; otherwise, it is convex.
[0021] Preferably, the convexity / concavity determination of an arc edge needs to consider the curvature direction of the arc: the tangent vector is calculated at the midpoint of the arc, and the judgment is made in combination with the direction of the normal vector and the inner and outer loop properties of the edge. When the cross product of the normal vector is consistent with the tangent vector of the arc, it is a convex edge; otherwise, it is a concave edge.
[0022] Technical effect
[0023] This invention optimizes the edge concavity / convexity determination method by calculating the normal vector based on the edge type and the types of its neighboring faces. An attribute adjacency graph is constructed by customizing node and edge attributes. This graph structure effectively captures the complex relationships between edges and their neighbors, providing richer information for subsequent feature recognition. Simultaneously, the search steps of the VF2 algorithm are optimized to adapt to this new graph structure. This optimization is achieved by reducing redundant computation and improving matching speed. Compared to existing technologies, this invention can more effectively analyze the geometric features of edges, improving not only the accuracy of edge concavity / convexity determination but also enhancing the overall efficiency of feature recognition. The optimization significantly improves the accuracy and response time of feature recognition. Attached Figure Description
[0024] Figure 1 This is a flowchart of the present invention;
[0025] Figure 2 This is a schematic diagram of the seam edge in the embodiment;
[0026] Figure 3 A schematic diagram for calculating the concavity and convexity of an edge;
[0027] Figure 4 This is a schematic diagram of a seed ring;
[0028] Figure 5 To obtain the flowchart of the inner and outer loop sets;
[0029] Figure 6 Flowchart for determining edge concavity / convexity;
[0030] Figure 7This is a schematic diagram of the features of shaft-type parts;
[0031] In the figure: (a) is a straight rod, (b) is a first-level step, (c) is a second-level step, (d) is a third-level step, (e) is a chamfer, (f) is a relief groove, (g) is a thread, (h) is a V-groove, (i) is an internal hexagonal hole at the shaft end, (j) is a wrench groove, (k) is a keyway, (l) is a snap ring groove, and (m) is a hole at the shaft end;
[0032] Figure 8 It is an attribute adjacency graph;
[0033] In the figure: (a) is a straight rod, (b) is a first-level step, (c) is a second-level step, (d) is a third-level step, (e) is a chamfer, (f) is a relief groove, (g) is a thread, (h) is a V-groove, (i) is an internal hexagonal hole at the shaft end, (j) is a wrench groove, (k) is a keyway, (l) is a snap ring groove, and (m) is a hole at the shaft end;
[0034] Figure 9 This is a schematic diagram illustrating the effect of the example;
[0035] In the figure: (a) and (b) are feature illustrations of the 3D model of the embodiment, (c) is the attribute adjacency graph of the 3D model, and (d) is the bounding box of the recognition features; Detailed Implementation
[0036] like Figures 2 to 6 As shown, this embodiment illustrates a feature recognition method for shaft-type parts, including: establishing a set of face edges, identifying seam edges, determining concavity / convexity, extracting seed loops, feature recognition, and extracting feature parameters. The concavity / convexity determination is connected to the seed loop extraction and transmits the concavity / convexity of the edges to accurately identify feature boundaries. The seed loop extraction part transmits the results to the feature recognition part, helping to accurately locate feature boundaries and feature regions, ensuring the accuracy of feature recognition. The feature recognition unit is the core step of the method, further transmitting the identified features to the feature parameter extraction step for extracting the geometric parameters of the features.
[0037] like Figure 1 As shown, this embodiment is based on the above-mentioned feature recognition method for shaft-type parts. This embodiment is implemented using the Python language and the Python OCC interface of the open-source 3D CAD model Open Cascade, specifically including:
[0038] Step 1: Read the STEP format 3D model of the part, parse the data in the STEP file using Python OCC, and load the parsed file content containing geometric information into the TopoDS_Shape object.
[0039] Step 2: Identify the seam edges, specifically including:
[0040] 2.1 Create a seam_edge list to store the seam edges.
[0041] 2.2 During the traversal of the edges of the 3D model, when each model edge is visited, the included angle between the two faces connected by each edge is calculated. Specifically, the midpoint p0 of the model edge is obtained, and two normal vectors v1 and v2 belonging to the faces connected by the model edge at point p0 are constructed through this point. The included angle between the two faces is calculated through the normal vectors.
[0042] 2.3 When the included angle is equal to 180 degrees or 0 degrees and the two adjacent faces are of the same type, the edge is determined to be a seam edge and the edge is added to seam_edge.
[0043] Step 3: Establish the set of faces and edges and their relationships, specifically including:
[0044] 3.1 Create a dictionary to store the mappings from model edges to model faces;
[0045] 3.2 Traverse all model edges of the model and determine whether the edge is in the stitching edge geometry. Add unvisited model edges that are not in the stitching edge geometry to a list and add the index value of the edge in the list as the key to the dictionary.
[0046] 3.3 Traverse all model faces, add unvisited model faces to the model face list, obtain the index value of the face in the model face list, and obtain the edges contained in the face. Add the face index value to the value of the corresponding key.
[0047] The method described above iterates through all edges of the model and uses Python OCC's utility class to extract the topological elements of the 3D geometric model from the Topo DS_Shape object, specifically the faces, edges, and vertices. This class extracts various topological elements by traversing the internal structure of the Shape object, and each identified element is added to a result list, which typically contains all individual elements.
[0048] Step 4: Find the seed cycle: Perform a cycle traversal on the 3D model. When an unvisited cycle is encountered, add it to the cycle set. Traverse each model face in the face list and extract the outer cycle, adding it to the outer cycle set. Iterate through the cycle sets and check if each cycle in the outer cycle set is within the outer cycle set; if not, add it to the inner cycle set. Simultaneously, traverse the outer cycle set; if a cycle belongs to the minor diameter ring of a conical surface, add it to the seed cycle set. All cycles in the inner cycle set are added to the seed cycle set.
[0049] Step 5 involves determining the concavity or convexity of the edges, specifically including:
[0050] 5.1 Determining the Concavity / Concavity of a Straight Edge: When edge e, formed by the intersection of two adjacent faces F1 and F2, is a straight edge, the included angle α formed by the tangent planes of the two adjacent faces at the intersection line e is the concavity / convexity. When 0 < α < π, e is a concave edge; when π < α < 2π, e is a convex edge. When angle α = π, the concavity / convexity of the edge is determined by how α approaches π. - When the edge is convex, α→π. + When the concavity or convexity of a straight edge e is determined to be concave, the direction of the outward normal vector of the intersecting plane and the straight edge e are related.
[0051] like Figure 3 As shown in (a), let the outward normal vectors of adjacent surfaces F1 and F2 of line edge e be n1 and n2. According to the right-hand screw rule, a plane with the same direction as line edge e is taken as the reference plane. In the figure, F2 is taken as the reference plane. The edges in F2 form a closed loop, and the direction of the outer loop satisfies the condition of rotating counterclockwise around the normal vector of the surface.
[0052] The direction of the straight side vector ne is consistent with the direction of the F2 loop. Take vector n = ne × n1, and let the angle between n and n2 be θ. When |θ| < 90°, the side is a concave side, and when |θ| > 90°, the side is a convex side.
[0053] 5.2 Determination of the concavity / convexity of the arc edge: such as Figure 3 As shown in (b), let the cylindrical surface be F1 and the plane be F2, with the outward normal vectors of F1 and F2 being n1 and n2, respectively. When the arc edge e is an outer loop, take the midpoint p of the arc edge, and let ne be the tangent vector of the arc edge e at point p, with the direction consistent with the loop direction. Let the vector n = ne × n2, and the angle between n and n1 be θ. When |θ| < 90°, the edge is a concave edge; when |θ| > 90°, the edge is a convex edge. When the arc edge e is an inner loop, the tangent vector ne′ at point p is opposite in direction to ne, and n′ = ne′ × n2′. The subsequent judgment method is the same as before.
[0054] Step 6, feature recognition, specifically includes:
[0055] 6.1 Based on the extracted topology and defined attributes, construct the feature matrix and attribute adjacency graph of the 3D model, specifically including:
[0056] Construction of the feature matrix:
[0057] ① Construct an n-order 0 matrix, where n is the number of faces in the 3D model.
[0058] ② Determine whether there is a common edge between any two faces, and the attributes of that common edge. If so, add the corresponding attributes of the common edge to the matrix at positions (i,j) and (j,i). Here, i and j represent the indices of the two faces with a common edge in the face set.
[0059] Construction of the attribute adjacency graph:
[0060] ① Perform node construction: create a node for each face in the model, and attach the node's geometric and topological properties to the node.
[0061] ② Perform edge construction, creating an edge in the graph and its attributes for each edge connecting two faces in the model.
[0062] The properties of the edges include the topological relationship between the two faces, such as the concavity / convexity of the edges and the connection type.
[0063] ③ Connect adjacent face nodes in the diagram to represent their actual connection in the 3D model. Each pair of adjacent faces is connected by an edge.
[0064] 6.2 Constructing the Feature Library: A feature library is established, constructing attribute adjacency graphs for the shaft-type part features that need to be identified, and placing both the geometric features and their attribute adjacency graphs into the feature library. These features are typically abstracted and simplified standard geometric shapes used to match and identify similar features in actual part models.
[0065] 6.3 Using the VF2 algorithm for subgraph matching: Using the GraphMatcher method in networkx, the two input graphs are checked for matching in a topology-first manner, ensuring that the two graphs have the same structure. Once a possible identical structure is found, the node and edge attributes are checked to see if they meet the matching conditions.
[0066] The VF2 algorithm sets the adjacency graph of part attributes as the target graph G. p Let G be the attribute adjacency graph of the features to be identified. t Initialize mapping: M p and M t This is used to record the matched nodes in the current pattern graph and the target graph. The process begins by matching nodes in both graphs, while simultaneously checking the consistency of edges connecting nodes. If a matching node is found, it is added to the matching set, and the process continues for the next node. This continues until the pattern graph G is found. t All nodes are connected to G p If the nodes in the model match, then it is determined that the part has the feature.
[0067] Step 7: Parameter Extraction: Extract the identified features and construct bounding boxes for them. Complete the bounding boxes to enclose the features as tightly as possible, and extract parameters from the bounding boxes. The types of parameters extracted vary depending on the type of feature. In this embodiment, the width of the bounding box for the wrench groove will be extracted, while the length and width of the bounding box for the hole will be extracted for diameter measurement, and the height will be extracted for hole depth measurement.
[0068] Through specific practical experiments, the above method was used to identify a three-dimensional model of a cemented carbide punch with shaft end holes and keyways, and to identify its specific features and extract the parameters of each feature.
[0069] like Figure 7 As shown, the shaft-like parts involved in this embodiment include the following features: Straight rod shape: a basic shape of shaft-like parts, usually a simple cylinder, but may include specific surface treatments or geometric features to meet specific design requirements. Steps (first-order, second-order, third-order): transition areas between sections of different diameters in a shaft-like part, typically used for segmented installation or segmented transmission. These steps usually require precise machining and positioning. Chamfers: small-angle cutting treatments performed at the edges of the shaft or corners of steps to reduce stress concentration, facilitate installation, and improve the durability of the part. Chamfers usually have fixed angle requirements. Relief grooves, also known as chip relief grooves or recesses, are usually located at the end of threads or on cylindrical surfaces to provide space for tool retraction, preventing damage to the threads or surface when machining the end. Threads: parts used for connection or fixation, including external and internal threads. Threads usually have strict precision requirements. Keyways, groove-shaped features on shaft parts, are used to install keys to transmit torque. This feature requires high-precision machining and positioning. Center holes: Located at both ends of a shaft, they are typically used for positioning and support during manufacturing and assembly. The machining accuracy of the center hole directly affects the coaxiality of the shaft. Tapered steps. Hexagonal holes: Typically used to mate with hexagonal tools for easy assembly or disassembly. High-precision machining of hexagonal holes is required to ensure a tight fit with the tool. V-grooves: Typically used for positioning or guiding. In shaft parts, V-grooves can be used for specific assembly requirements or for accurate positioning during the process. Locking screw grooves: Grooves machined on the surface of a shaft for installing locking screws, ensuring the assembled parts are fixed on the shaft and preventing rotation. Wrench grooves: Flat surfaces or grooves typically machined at the ends or middle of a shaft for fixing or adjusting wrenches. This feature is common in shaft parts that require frequent disassembly and assembly. Snap ring grooves, similar to retaining ring grooves but used to install snap rings (elastic rings), typically have precise depth and width requirements to ensure proper installation and function. Cam clearance grooves are used to avoid or accommodate the movement path of a cam, preventing interference. This groove shape is very common in complex mechanical systems. Wrench grooves are typically flat surfaces or grooves machined at the end or middle of a shaft for fixing or adjusting a wrench. This feature is common in shaft parts that require frequent disassembly and assembly.
[0070] The bounding box, as described, refers to the smallest possible rectangular prism that contains the features to be extracted, regardless of the coordinate axis direction. The bounding box should enclose the object as tightly as possible to ensure more accurate measurement data.
[0071] The aforementioned subgraph matching involves finding a subset of a large target graph that is isomorphic to the pattern graph. Specifically, subgraph matching seeks a node-to-node mapping such that all nodes and edges in the pattern graph can be matched with a subset of nodes and edges in the target graph.
[0072] like Figure 7 As shown, this is the corresponding Figure 8 The attribute adjacency graph of the features in the middle, and the corresponding extracted parameter list includes: straight rod: length, diameter;
[0073] First step: diameter, length;
[0074] Second-level steps: diameter and length;
[0075] Three-tiered steps: diameter and length;
[0076] Chamfering: Major diameter, minor diameter;
[0077] Unsinking groove: arc diameter and axial distance;
[0078] Thread characteristics: major and minor diameters, direction of rotation, and pitch of the thread;
[0079] V-groove: Groove diameter;
[0080] Hexagonal hole at the shaft end: hole depth, hexagonal side length;
[0081] Wrench groove: groove width;
[0082] Keyway: Length, width, depth;
[0083] Snap ring groove: groove diameter, groove width;
[0084] Shaft end hole: hole diameter, hole depth;
[0085] All of the above features were successfully identified, and the parameters were successfully extracted. The following are two examples of the identification experiment results:
[0086] Identify the keyway-pore type punch, accurately identify its wrench groove and pore features, and obtain its parameter list. The results are shown in Table 1: Unit: mm
[0087]
[0088] The locating pin-step type was identified, its step and hole features were accurately determined, and its parameter list was obtained. The results are shown in Table 2: Unit: mm
[0089]
[0090]
[0091] like Figure 9 As shown, the specific technical information revealed is as follows: the part model has an attribute adjacency graph and a bounding box model of the features, and at the same time, the feature type and feature parameters are identified.
[0092] Compared with existing technologies, this method ensures the accuracy of feature recognition by identifying and removing seam edges. The algorithm effectively distinguishes between actual edges and seam edges, avoiding recognition errors caused by seam edges. By constructing the topological relationship between faces and edges, a precise description of the geometric features of the part is achieved. By defining new face, edge, and point classes and constructing their correspondences based on the actual part structure, the extraction of seed rings from the model ensures the accurate extraction and determination of complex structural features. Furthermore, based on traditional concavity / convexity determination methods, the concavity / convexity of edges in shaft-type parts is determined using adjacent face normal vector analysis, and the concavity / convexity of edges is discussed based on the type of edge and the type of adjacent faces, thereby improving the accuracy of feature recognition. Bounding boxes are constructed to obtain various parameters of the features, and subgraph matching is performed between the attribute adjacency graph of the identified part and the feature adjacency graph in the feature library to determine whether the part has the feature.
[0093] The above-described specific implementations can be partially adjusted by those skilled in the art in different ways without departing from the principles and purpose of the present invention. The scope of protection of the present invention is defined by the claims and is not limited to the above-described specific implementations. All implementation schemes within the scope of the claims are bound by the present invention.
Claims
1. A method for feature recognition of shaft-type parts, characterized in that, After analyzing the part model and removing the seam edges, the face-edge relationship is established, and the thread lines are identified and removed. Then, inner and outer ring sets and seed ring sets are created to determine the concavity and convexity of the edges. Finally, the feature matrix and attribute adjacency graph are constructed, and the parameters of the identified features are extracted. The stitching edge refers to a line generated during the analysis of a part model where two opposite edges within the surface parameter region are mapped to the same edge. When the surface containing this edge is a cylindrical or conical surface, and the edge exists only within one surface, the edge is determined to be a stitching edge. The seed ring, i.e. the boundary of the feature partition, includes a single-sided seed ring and a multi-sided seed ring, wherein: the single-sided seed ring is distributed inside a single face, and the multi-sided seed ring is distributed on the boundary of multiple faces and is adjacent to multiple faces; The creation of the inner ring set specifically includes: Step a: Traverse all topological faces in the part model. For each visited face, extract the outer ring on that face. Step b: Add the outer ring extracted from each topological face to the outer ring set used to identify the external connection relationship between each face and its adjacent faces; Step c: Further traverse all loops in the part: For each loop visited, first determine whether the loop belongs to the outer loop set. If the loop does not belong to the outer loop set, then treat it as an inner loop and further determine whether it is a seed loop. When the ring is located on a conical surface or other non-planar structure, analyze its geometry and positional relationship, and treat the small-diameter ring of the conical surface as a seed ring as well. For thread features, when extracting the seed ring, the start and end points of the thread are analyzed, and seed rings with specific pitch and thread direction are identified.
2. The feature recognition method for shaft-type parts according to claim 1, characterized in that, The aforementioned analysis refers to a comprehensive geometric and topological analysis of the part's 3D model, specifically including: traversing all model faces and all model edges on the 3D model one by one; recording the geometric properties of the model edges, mapping them, and recording their correspondence with their respective model faces.
3. The feature recognition method for shaft-type parts according to claim 1, characterized in that, Constructing face-edge relationships specifically includes: Step 1: Traverse all faces of the 3D model and create a face list. At the same time, traverse all edges of the model and create an edge list. Traverse all vertices of the model and create a vertex list. Step 2: Traverse the model face list. When an unvisited model face object is accessed, obtain all model edges contained in that face, find the corresponding position index of all edges contained in that face in the edge list, add it to the edge index list of the face object, and add the index of that face in the list to the face index list of that edge. Step 3: Traverse the model edge list. When an unvisited model edge object is accessed, obtain the endpoint of the model edge, add it to the vertex list of the edge object, and add the index of the edge to the edge index list under the vertex object.
4. The feature recognition method for shaft-type parts according to claim 1, characterized in that, The concavity or convexity of an edge refers to determining whether an edge is convex or concave based on the geometric relationship between the two faces it connects to. Specifically, if the included angle formed when the two faces intersect at the edge is less than 180 degrees, then the edge is concave; otherwise, it is convex.
5. The feature recognition method for shaft-type parts according to claim 4, characterized in that, To determine the convexity or concavity of an arc edge, the curvature direction of the arc must be considered: the tangent vector is calculated at the midpoint of the arc, and the direction of the normal vector and the inner and outer loop properties of the edge are used for judgment. When the cross product of the normal vector is consistent with the tangent vector of the arc, it is a convex edge; otherwise, it is a concave edge.
Citation Information
Patent Citations
Processing feature recognition and information extraction method for MBD model
CN110795797A
Three-dimensional plant cell flexible surface geometric modeling method and model
CN112185456A