An anisotropic triangular mesh generation method based on voronoi diagram and heat method
Anisotropic triangular meshes are generated by using Voronoi diagrams and thermal methods, which solves the problems of manual intervention and insufficient computational efficiency in the existing technology. It realizes efficient and automatic mesh generation, adapts to complex geometric features, and improves analysis accuracy and computational efficiency.
Patent Information
- Application Number
- CN202411734295.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-29
- Publication Date
- 2025-10-21
- Estimated Expiration
- 2044-11-29
AI Technical Summary
Existing anisotropic triangular mesh generation methods cannot accurately adapt to the local features of complex geometries on highly complex parts. The generation process relies heavily on manual intervention, has insufficient computational efficiency, and is unable to meet the needs of large-scale industrial simulation.
A generation method based on Voronoi diagram and thermal method is adopted to realize automatic triangular mesh remeshing and generate anisotropic mesh by generating sampling source points, screening contributing source points, constructing Voronoi diagram segments, calculating Euclidean distance and curvature, clustering heat sources, and calculating signed distance field and gradient.
It improves computing efficiency, avoids manual intervention, reduces labor costs, optimizes topological structure while maintaining mesh shape characteristics, adapts to complex geometric features, and improves analysis accuracy and computing efficiency.
Smart Images

Figure CN119672251B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of computer graphics geometry processing, and in particular relates to a method for generating anisotropic triangle meshes based on a Voronoi diagram and a thermal method. Background Art
[0002] With the rapid development of computer-aided design (CAD), finite element analysis (FEA), and 3D modeling technologies, mesh generation and optimization techniques have been widely used in engineering design, mechanical analysis, fluid simulation, and other fields. The triangular mesh of an object model, as the foundation of finite element analysis, is a crucial factor in computational accuracy and efficiency, and its quality directly impacts the accuracy and reliability of the analysis results. In industrial manufacturing, mechanical design, aerospace, and other fields, the complex geometric features and diverse application requirements of components place higher demands on triangular mesh generation technology.
[0003] Traditional triangular mesh generation methods are mostly based on isotropic distribution. Although this method is computationally simple, it has obvious limitations when dealing with complex geometries and high curvature areas. For example, for characteristic areas such as thin-walled structures, curved corners, and hole edges, uniformly distributed triangular meshes are difficult to accurately describe geometric details, resulting in large errors in finite element calculation results. In addition, in flat or low-stress areas, the overly dense distribution of uniform meshes results in a waste of computing resources. Faced with increasingly complex geometric designs and performance optimization requirements, how to generate high-quality adaptive meshes has become a difficult problem that needs to be solved urgently in the industrial field.
[0004] Anisotropic triangular mesh optimization technology provides an effective solution to these problems. Unlike traditional isotropic meshes, anisotropic meshes can dynamically adjust mesh directionality and density based on geometric characteristics, generating a finer mesh in key feature areas while maintaining a coarser mesh distribution in less important areas. This optimization method can both improve analysis accuracy and significantly reduce computational costs. Therefore, anisotropic mesh optimization technology has important applications in areas such as stress analysis of aviation components, structural optimization of complex mechanical parts, and 3D printing slicing.
[0005] Existing anisotropic mesh generation methods, when applied to highly complex parts, face challenges: they cannot accurately adapt to local features of complex geometries, resulting in mesh distortion or poor quality. The generation process relies heavily on manual intervention, making automation difficult. Furthermore, their computational efficiency is insufficient, making them inefficient for large-scale industrial simulations. Therefore, developing an efficient and automated anisotropic triangular mesh optimization method is crucial, particularly for the accurate modeling and analysis of industrial components. Summary of the Invention
[0006] In order to solve the problems existing in the background technology, the present invention provides an anisotropic triangular mesh generation method based on Voronoi diagram and thermal method, comprising:
[0007] S1: Read the triangle mesh data of the object model;
[0008] S2: Generate sampling source points close to the vertices of each triangle face according to the centroid and three vertices of each triangle face in the triangle mesh data;
[0009] S3: Use the Surface Voronoi method to filter out the contributing source points of the triangle surface from all the sampling source points;
[0010] S4: Project the common edges of the half-planes corresponding to all contributing source points of the triangle face, where they intersect each other, onto the current triangle face to form the Voronoi diagram line segments of the triangle face;
[0011] S5: For each vertex in the triangular mesh data, calculate the Euclidean distance from the vertex to the two end points of all Voronoi diagram segments of the triangular face containing the vertex, and obtain the region point of the vertex based on the calculated Euclidean distance; and determine the Voronoi unit area of the vertex using the signed heat method based on the normal vectors of all region points of the vertex;
[0012] S6: Calculate the curvature of each vertex in the triangular mesh data, and select vertices with curvature greater than a set threshold as candidate heat sources. Cluster the candidate heat sources using the DBSCAN clustering algorithm, and use the center of each cluster as the heat source. Calculate the signed distance field of the heat source using the signed heat method based on the normal vector of the heat source.
[0013] S7: Calculate the anisotropy metric of the triangular mesh according to the gradient of the signed distance field of the heat source, perform ACVT remeshing on the triangular mesh data according to the anisotropy metric of the triangular mesh and the Voronoi unit area corresponding to each vertex, and obtain an anisotropic triangular mesh.
[0014] The present invention has at least the following beneficial effects
[0015] This paper provides a method for generating anisotropic triangular meshes based on Voronoi diagrams and thermal methods. This method uses the distance between sampled source points and vertices to generate a half-plane to cut out the Voronoi diagram. This method eliminates the traditional Delaunay triangulation process required for the triangular mesh, improving computational efficiency. Furthermore, a thermal method is used to automatically set the anisotropy of the triangular mesh, eliminating manual intervention and reducing labor costs. While maintaining the original triangular mesh shape characteristics as much as possible, the topology structure is optimized without causing shape distortion. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] Figure 1 is a flow chart of the method of the present invention;
[0017] Figure 2 Schematic diagram of sampling source points obtained by interpolating the centroid and vertices of the triangular surface of the present invention;
[0018] Figure 3 A schematic diagram of a Voronoi cell region for determining vertices using a thermal method according to the present invention;
[0019] Figure 4 Schematic diagram of the triangular mesh formed after re-meshing using ACVT in the present invention. DETAILED DESCRIPTION
[0020] The following describes the embodiments of the present invention by means of specific examples, and those skilled in the art can easily understand other advantages and effects of the present invention from the contents disclosed in this specification. The present invention can also be implemented or applied through other different specific embodiments, and the details in this specification can also be modified or changed in various ways based on different viewpoints and applications without departing from the spirit of the present invention. It should be noted that the illustrations provided in the following embodiments are only schematic illustrations of the basic concept of the present invention, and the following embodiments and features in the embodiments can be combined with each other without conflict.
[0021] See also Figures 1 to 4 The present invention provides an anisotropic triangular mesh generation method based on a Voronoi diagram and a thermal method, comprising:
[0022] S1: Read the triangle mesh data of the object model;
[0023] In this embodiment, step S1 is the data input stage, the purpose of which is to obtain the triangle mesh data of the object model. Such data generally includes information such as the vertex coordinates and vertex indexes of the triangle.
[0024] S2: Generate sampling source points close to the vertices of each triangle face according to the centroid and three vertices of each triangle face in the triangle mesh data;
[0025] In this embodiment, step S2 generates sampling source points based on the centroid and three vertices of each triangle in the triangle mesh data. These sampling source points are close to the vertices of the triangle and are used for subsequent surface Voronoi diagram construction.
[0026] S3: Use the Surface Voronoi method to filter out the contributing source points of the triangle surface from all the sampling source points;
[0027] S4: Project the common edges of the half-planes corresponding to all contributing source points of the triangle face, where they intersect each other, onto the current triangle face to form the Voronoi diagram line segments of the triangle face;
[0028] S5: For each vertex in the triangular mesh data, calculate the Euclidean distance from the vertex to the two end points of all Voronoi diagram segments of the triangular face containing the vertex, and obtain the region point of the vertex based on the calculated Euclidean distance; and determine the Voronoi unit area of the vertex using the signed heat method based on the normal vectors of all region points of the vertex;
[0029] S6: Calculate the curvature of each vertex in the triangular mesh data, and select vertices with curvature greater than a set threshold as candidate heat sources. Cluster the candidate heat sources using the DBSCAN clustering algorithm, and use the center of each cluster as the heat source. Calculate the signed distance field of the heat source using the signed heat method based on the normal vector of the heat source.
[0030] S7: Calculate the anisotropy metric of the triangular mesh according to the gradient of the signed distance field of the heat source, perform ACVT remeshing on the triangular mesh data according to the anisotropy metric of the triangular mesh and the Voronoi unit area corresponding to each vertex, and obtain an anisotropic triangular mesh.
[0031] In this embodiment, through the above steps S1-S7, the surface Voronoi diagram, the symbolic heat method, the DBSCAN clustering algorithm and the ACVT remeshing technology are combined to generate a triangular mesh with anisotropic characteristics to adapt to complex object models and surface features.
[0032] See also Figure 2 Preferably, step S2 includes:
[0033] Calculate the coordinates of the center of gravity of each triangle, perform interpolation based on the coordinates of the center of gravity of the triangle and the coordinates of the three vertices of the triangle, and insert the sampling source point on the direction vector from the center of gravity to the vertex, which is expressed as:
[0034]
[0035] Where t represents the interpolation parameter, x, y, and z represent coordinates, a represents the vertex of the triangle, b represents the centroid of the triangle, and p represents the coordinate of the sampling source point after interpolation.
[0036] In this embodiment, the coordinates of the centroid of the triangle are first calculated, a vertex (for example, A) is selected, and the value of the interpolation parameter t is determined (usually between 0 and a positive number less than 1); the coordinates of the interpolation point p are calculated using the above interpolation formula; if multiple sampling source points need to be inserted in the direction from the centroid to each vertex, a different t value can be selected for each direction and the interpolation process is repeated. In this solution, the difference of one point for each vertex is described as an example, but those skilled in the art should understand that the difference of multiple points is also applicable to this solution.
[0037] Figure 2 The distribution of sampling source points obtained by interpolation on the triangular mesh surface is shown in red. The coordinates of the barycenter of the triangle are calculated and interpolated with the coordinates of the three vertices of the triangle. The sampling source points are inserted along the direction vectors between the barycenter and the vertex. The geometric significance of selecting a location close to the vertex for generating the source point is that generating the source point at the vertex will affect the vertex's other 1-neighboring triangles, introducing unnecessary noise. Therefore, the sampling source points need to be confined to the current triangle. Generating the sampling source point close to the vertex as much as possible ensures that the vertex has the smallest possible impact on the sampling source point. The boundaries of the Voronoi cell area are determined based on the affected sampling source points. Three sampling source points are generated for each triangle.
[0038] Preferably, the step 3 of selecting contributing source points of the triangular surface from all sampling source points includes:
[0039] S31: When traversing each triangle, the current triangle is used as the target triangle;
[0040] S32: For each target triangle V t Each vertex v i , i∈{1, 2, 3}; traverse all sampling source points on the triangular mesh;
[0041] S33: For each vertex v i Define a distance d i , d i The initial value of is defined as infinity;
[0042] S34: Traverse the sampling source points of the triangle surface V, the initial value of V is defined as V t , if vertex v i and the sampling source point x of the triangle V j The distance d ij Less than d i , then let d i =d ij , and the sampling source point x j As V tThe contributing source point continues to traverse the next sampling source point of the triangle surface V until all the sampling source points of the triangle surface V are traversed;
[0043] S35: Traverse V's 1-neighborhood triangle V -1 , let V = V -1 , execute step S34 until all triangular faces on the triangular mesh are traversed.
[0044] See also Figure 3 Preferably, step S4 includes: obtaining the coordinates of three points on the half plane according to the square distances d1, d2 and d3 from each contributing source point to the three vertices of the triangle, which are respectively and v1, v2, and v3 represent the three vertices of the triangle, and x and y represent the coordinates. The half-plane corresponding to the contributing source point is determined based on the three points. The half-planes of all contributing source points of the triangle intersect with each other to form a common edge. The common edge is projected onto the triangle to form multiple Voronoi diagram segments of the triangle. The Voronoi diagram segments passing through the vertices are filtered.
[0045] In this embodiment Figure 3Schematic diagram of the Voronoi diagram for the initial triangular mesh and the Voronoi diagram after denoising using the heat method. The red lines represent the Voronoi diagram segments. Based on the interpolated source points, the Surface Voronoi method based on Euclidean distance is used to traverse each triangle. The mark-and-sweep method is then used to progressively select the source point with the shortest distance to the current triangle as the contributing source point. The mark-and-sweep method calculates the Euclidean distance between each sampled source point on the mesh surface and the three vertices of the current triangle. The calculation begins with the three sampled source points of the triangle itself, then the sampled source points of its 1-neighboring triangles, and then progressively traverses the sampled source points of all triangles on the mesh surface in a diffuse manner. For each sampled source point, the three vertex distances are calculated. If the calculated distance to any vertex is less than the minimum distance recorded for each vertex (each vertex in a triangle has a minimum distance, initially set to infinity), the sampled source point is considered a contributing source point, and the minimum distance recorded is updated. This process is repeated to obtain the set of contributing source points for the current triangle. The half-plane of the contributing source point is obtained based on the Euclidean distance from the contributing source point to the vertex of the triangle. Each contributing source point must calculate the square distance of the three vertices. This distance is used as the z-axis coordinate, and the x-axis and y-axis coordinates are taken as the coordinates of the vertex. Each contributing source point calculates three vertices to form three new coordinates. The three new coordinates will determine a face, which is a half-plane. The half-planes of multiple contributing source points intersect with each other to form a common edge, and then the common edge is projected onto the triangular mesh surface to obtain the Voronoi diagram segment of the triangle. The boundary of the Voronoi unit area will be formed around each vertex, and there will be a Voronoi diagram segment passing through the vertex. This is because each triangle has three source points. In addition to the vertex source point itself, there are two other vertex source points on the triangle that will affect the generation of the boundary of the Voronoi unit area. For a specific example, please refer to Figure 3 In the left figure, redundant Voronoi diagram segments connect vertices, so the Voronoi diagram segments passing through vertices need to be filtered.
[0046] Preferably, step S5 of obtaining the region point of the vertex based on the calculated Euclidean distance includes: for each vertex, if the Euclidean distance from the vertex to one of the endpoints of the Voronoi diagram segment is less than a set threshold, then selecting the endpoint of the Voronoi diagram segment farther from the vertex as the region point of the vertex, and traversing all Voronoi diagram segments of all triangular faces containing the vertex to obtain a set of region points of the vertex.
[0047] Preferably, the step S5 of determining the Voronoi unit area of the vertex using the signed heat method according to the normal vectors of all points in the region of the vertex comprises:
[0048] Step S51: Calculate the heat diffusion equation using the symbolic heat method based on the normal vectors of all points in the vertex area:
[0049]
[0050] Among them, N represents the normal vector of all regional points, X0 is the initial vector field of heat diffusion, μ Ω is the area indicator function of all area points, 1 is within the area, 0 is outside the area; X t is the vector field that changes with time t, Δ is the Laplace operator, which is used as the direction of heat diffusion;
[0051] Step S52: Normalize the vector field to obtain the vector field X t Gradient approximation of :
[0052]
[0053] Among them, Y t Represents the vector field X t Gradient approximation, ‖.‖ means taking the vector field X t length;
[0054] Step S53: Obtain the signed distance field by solving the Poisson equation:
[0055]
[0056] in, is the signed distance field, is the gradient, It means that the query point q is within the Voronoi cell area of the vertex;
[0057] Step S54: define the set of all Voronoi diagram segments of all triangular faces containing the vertex as U, where U = {U q , U o},U q is the Voronoi diagram segment set containing the regional points obtained in step S5, U o is a Voronoi diagram segment set that does not contain regional points; traverse the set U o The endpoints of all Voronoi diagram segments in the , if one of the endpoints of the Voronoi diagram segment passes through the signed distance field If the obtained value is less than or equal to 0, then the two endpoints of the Voronoi diagram segment are within the Voronoi unit area of the vertex, and these two endpoints are used as the boundary points of the Voronoi unit area to constitute the Voronoi unit area of the vertex.
[0058] Preferably, the step S6 of calculating the signed distance field of the heat source using a signed heat method based on the normal vector of the heat source comprises:
[0059] Step S61: Calculate the heat diffusion equation using the symbolic thermal method according to the normal vector of the heat source:
[0060]
[0061] Among them, N represents the normal vector of the heat source, X 0s represents the initial vector field of heat diffusion, μ Ωs Represents the heat source area indicator function, 1 is within the area, 0 is outside the area; X ts represents the vector field that changes with time t, Δ represents the Laplace operator, which is used as the direction of heat diffusion;
[0062] Step S62: Normalize the vector field to obtain the vector field X ts Gradient approximation of :
[0063]
[0064] Among them, Y ts Represents the vector field X ts Gradient approximation, ‖.‖ means taking the vector field X ts length;
[0065] Step S63: Obtain the signed distance field of the heat source by solving the Poisson equation:
[0066]
[0067] in, is the signed distance field of the heat source, is the gradient.
[0068] Preferably, the step S7 is based on the signed distance field of the heat source The gradient calculation of the anisotropy metric M of the triangle mesh includes:
[0069]
[0070] Where M(x) represents the anisotropy metric of the triangular mesh, I is the identity matrix, and α is the tuning parameter. is the gradient, x is the query point, is the signed distance field of the heat source.
[0071] See also Figure 4 Preferably, the step S7 of performing ACVT remeshing on the triangular mesh data according to the anisotropy metric of the triangular mesh and the Voronoi unit area corresponding to each vertex includes:
[0072] Step S71: traverse all sampling source points of the triangle containing the vertex, find the sampling source point closest to the vertex as the sampling point, and calculate the sum of the anisotropic distances d from the sampling point to the Voronoi unit area of the vertex M :
[0073]
[0074] Among them, d M (x, p) represents the sum of the anisotropic distances from the sampling point x to all boundary points of the Voronoi unit area, h is the number of boundary points in the Voronoi unit area of the vertex, p represents the boundary point set of the Voronoi unit area of the vertex, and p j The jth boundary point of the Voronoi cell region representing the vertex;
[0075] Step S72: Calculate the energy function E of ACVT:
[0076]
[0077] Among them, Ω i is the Voronoi unit area of the i-th vertex, k represents the number of Voronoi unit areas, p i is the boundary point set of the Voronoi unit area of the i-th vertex, x i is the sampling point of the i-th vertex, ρ is the probability density function;
[0078] ρ(p)=1+β·|σ(p)|
[0079] Where β is the adjustment parameter, σ is the local curvature of the boundary point ρ of the Voronoi unit area;
[0080] Step S73: Minimize the energy function E to solve the gradient of the sampling point:
[0081]
[0082] Among them, c i represents the target centroid of the Voronoi cell area of the i-th vertex, p i,j represents the jth boundary point of the Voronoi cell area of the i-th vertex, and h represents the number of boundary points in the Voronoi cell area;
[0083] Step S74: Update the sampling point coordinates according to the gradient of the sampling point: Where ω is the gradient descent rate;
[0084] Step S75: Move each vertex to the updated coordinate position of its corresponding sampling point, and repeat the process from step S2 to step S7 until the energy function E is less than a given threshold, and the optimized triangle mesh is an anisotropic triangle mesh.
[0085] In this embodiment, the optimization process adjusts the triangular mesh to an anisotropic mesh, meaning that the mesh has different resolutions in different directions. This property enables the mesh to better adapt to complex geometries and physical phenomena, thereby improving the accuracy and efficiency of simulations and renderings. Anisotropic meshes can provide higher resolution in areas requiring more detail, while maintaining lower resolution in other areas. This helps enhance the expressiveness of details while keeping the overall mesh size manageable. By minimizing the energy function E, the optimization process aims to find a mesh configuration that minimizes computational costs (such as rendering time, physical simulation time, etc.) for a given accuracy. This helps improve computational efficiency in practical applications. The optimization process can adapt to different adjustment parameters (such as β and ω) and initial conditions, allowing users to adjust the degree of mesh optimization and level of detail according to specific needs. In addition, this process can be combined with other mesh optimization techniques to further improve mesh quality and performance. By adjusting the anisotropic properties of the triangular mesh, this optimization process improves mesh quality, detail expressiveness, computational efficiency, flexibility, and scalability. These beneficial effects make this optimization process promising for broad application in graphics processing, physical simulation, and other related fields.
[0086] In summary, the present invention provides an anisotropic triangular mesh generation method based on a Voronoi diagram and thermal methods. This method uses the distance between sampled source points and vertices to generate a half-plane to cut out the Voronoi diagram. This eliminates the traditional Delaunay triangulation process required for the triangular mesh, improving computational efficiency. Furthermore, a thermal method is used to automatically set the anisotropy of the triangular mesh, eliminating manual intervention and reducing labor costs. While minimizing the shape characteristics of the original triangular mesh, the topology is optimized without causing shape distortion.
[0087] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not limiting. Although the present invention has been described in detail with reference to the preferred embodiments, those skilled in the art should understand that the technical solutions of the present invention can be modified or replaced by equivalents without departing from the purpose and scope of the technical solutions, which should all be included in the scope of the claims of the present invention.
Claims
1. A method for generating anisotropic triangular meshes based on Voronoi diagram and thermal method, characterized in that: include: S1: Read the triangle mesh data of the object model; S2: Generate sampling source points close to the vertices of each triangle face according to the centroid and three vertices of each triangle face in the triangle mesh data; S3: Use the Surface Voronoi method to filter out the contributing source points of the triangle surface from all the sampling source points; S4: Project the common edges of the half-planes corresponding to all contributing source points of the triangle face, where they intersect each other, onto the current triangle face to form the Voronoi diagram line segments of the triangle face; S5: For each vertex in the triangular mesh data, calculate the Euclidean distance from the vertex to the two end points of all Voronoi diagram segments of the triangular face containing the vertex, and obtain the region point of the vertex based on the calculated Euclidean distance; And the Voronoi unit area of the vertex is determined by using the sign heat method according to the normal vectors of all points in the area of the vertex; S6: Calculate the curvature of each vertex in the triangular mesh data, and select vertices with curvature greater than a set threshold as candidate heat sources. Cluster the candidate heat sources using the DBSCAN clustering algorithm, and use the center of each cluster as the heat source. Calculate the signed distance field of the heat source using the signed heat method based on the normal vector of the heat source. S7: Calculate the anisotropy metric of the triangular mesh according to the gradient of the signed distance field of the heat source, perform ACVT remeshing on the triangular mesh data according to the anisotropy metric of the triangular mesh and the Voronoi unit area corresponding to each vertex, and obtain an anisotropic triangular mesh.
2. The method for generating anisotropic triangular meshes based on Voronoi diagram and thermal method according to claim 1, characterized in that: The step S2 comprises: Calculate the coordinates of the center of gravity of each triangle, perform interpolation based on the coordinates of the center of gravity of the triangle and the coordinates of the three vertices of the triangle, and insert the sampling source point on the direction vector from the center of gravity to the vertex, which is expressed as: Where t represents the interpolation parameter, x, y, and z represent coordinates, a represents the vertex of the triangle, b represents the centroid of the triangle, and p represents the coordinate of the sampling source point after interpolation.
3. The method for generating anisotropic triangular meshes based on Voronoi diagram and thermal method according to claim 1, characterized in that: The contributing source points of the triangular surface are selected from all the sampling source points in step 3, including: S31: When traversing each triangle, the current triangle is used as the target triangle; S32: For each target triangle V t Each vertex v i , i∈{1, 2, 3}; traverse all sampling source points on the triangular mesh; S33: For each vertex v i Define a distance d i , d i The initial value of is defined as infinity; S34: Traverse the sampling source points of the triangle surface V, the initial value of V is defined as V t , if vertex v i and the sampling source point x of the triangle V j The distance d ij Less than d i , then let d i =d ij , and the sampling source point x j As V t The contributing source point continues to traverse the next sampling source point of the triangle surface V until all the sampling source points of the triangle surface V are traversed; S35: Traverse V's 1-neighborhood triangle V -1 , let V = V -1 , execute step S34 until all triangular faces on the triangular mesh are traversed.
4. The method for generating anisotropic triangular meshes based on Voronoi diagram and thermal method according to claim 1, characterized in that: The step S4 comprises: The coordinates of the three points on the half plane are obtained according to the square distances d1, d2 and d3 from each contributing source point to the three vertices of the triangle, which are and v1, v2, and v3 represent the three vertices of the triangle, and x and y represent the coordinates. The half-plane corresponding to the contributing source point is determined based on the three points. The half-planes of all contributing source points of the triangle intersect with each other to form a common edge. The common edge is projected onto the triangle to form multiple Voronoi diagram segments of the triangle. The Voronoi diagram segments passing through the vertices are filtered.
5. The method for generating anisotropic triangular meshes based on Voronoi diagram and thermal method according to claim 1, characterized in that: The step S5 of obtaining the region point of the vertex based on the calculated Euclidean distance includes: for each vertex, if the Euclidean distance from the vertex to one of the endpoints of the Voronoi diagram segment is less than a set threshold, then selecting the endpoint of the Voronoi diagram segment farther from the vertex as the region point of the vertex, and traversing all Voronoi diagram segments of all triangular faces containing the vertex to obtain a set of region points of the vertex.
6. The method for generating anisotropic triangular meshes based on Voronoi diagram and thermal method according to claim 1, characterized in that: The step S5 of determining the Voronoi unit area of the vertex using the signed heat method according to the normal vectors of all points in the region of the vertex includes: Step S51: Calculate the heat diffusion equation using the symbolic heat method based on the normal vectors of all points in the vertex area: Among them, N represents the normal vector of all regional points, X0 is the initial vector field of heat diffusion, μ Ω is the area indicator function of all area points, 1 is within the area, 0 is outside the area; X t is the vector field that changes with time t, Δ is the Laplace operator, which is used as the direction of heat diffusion; Step S52: Normalize the vector field to obtain the vector field X t Gradient approximation of : Among them, Y t Represents the vector field X t Gradient approximation, ||·|| means taking the vector field X t length; Step S53: Obtain the signed distance field by solving the Poisson equation: in, is the signed distance field, is the gradient, It means that the query point q is within the Voronoi cell area of the vertex; Step S54: define the set of all Voronoi diagram segments of all triangular faces containing the vertex as U, where U = {U q , U o },U q is the Voronoi diagram segment set containing the regional points obtained in step S5, U o is a Voronoi diagram segment set that does not contain regional points; traverse the set U o The endpoints of all Voronoi diagram segments in the , if one of the endpoints of the Voronoi diagram segment passes through the signed distance field If the obtained value is less than or equal to 0, then the two endpoints of the Voronoi diagram segment are within the Voronoi unit area of the vertex, and these two endpoints are used as the boundary points of the Voronoi unit area to constitute the Voronoi unit area of the vertex.
7. The method for generating anisotropic triangular meshes based on Voronoi diagram and thermal method according to claim 1, characterized in that: The step S6 of calculating the signed distance field of the heat source using the signed heat method based on the normal vector of the heat source includes: Step S61: Calculate the heat diffusion equation using the symbolic thermal method according to the normal vector of the heat source: Among them, N represents the normal vector of the heat source, X 0s represents the initial vector field of heat diffusion, μ ΩS Represents the heat source area indicator function, 1 is within the area, 0 is outside the area; X ts represents the vector field that changes with time t, Δ represents the Laplace operator, which is used as the direction of heat diffusion; Step S62: Normalize the vector field to obtain the vector field X ts Gradient approximation of : Among them, Y ts Represents the vector field X ts Gradient approximation, ||·|| means taking the vector field X ts length; Step S63: Obtain the signed distance field of the heat source by solving the Poisson equation: in, is the signed distance field of the heat source, is the gradient.
8. The method for generating anisotropic triangular meshes based on Voronoi diagram and thermal method according to claim 1, characterized in that: Step S7 is based on the signed distance field of the heat source The gradient calculation of the anisotropy metric M of the triangle mesh includes: Where M(x) represents the anisotropy metric of the triangular mesh, I is the identity matrix, and α is the tuning parameter. is the gradient, x is the query point, is the signed distance field of the heat source.
9. The method for generating anisotropic triangular meshes based on Voronoi diagram and thermal method according to claim 1, characterized in that: The step S7 of performing ACVT re-meshing on the triangular mesh data according to the anisotropy metric of the triangular mesh and the Voronoi unit area corresponding to each vertex includes: Step S71: traverse all sampling source points of the triangle containing the vertex, find the sampling source point closest to the vertex as the sampling point, and calculate the sum of the anisotropic distances d from the sampling point to the Voronoi unit area of the vertex M : Among them, d M (x, p) represents the sum of the anisotropic distances from the sampling point x to all boundary points of the Voronoi unit area, h is the number of boundary points in the Voronoi unit area of the vertex, p represents the boundary point set of the Voronoi unit area of the vertex, and p j The jth boundary point of the Voronoi cell region representing the vertex; Step S72: Calculate the energy function E of ACVT: Among them, Ω i is the Voronoi unit area of the i-th vertex, k represents the number of Voronoi unit areas, p i is the boundary point set of the Voronoi unit area of the i-th vertex, x i is the sampling point of the i-th vertex, ρ is the probability density function; ρ(p)=1+β·|σ(p)| Where β is the adjustment parameter, σ is the local curvature of the boundary point p of the Voronoi unit area; Step S73: Minimize the energy function E to solve the gradient of the sampling point: Among them, c i represents the target centroid of the Voronoi cell area of the i-th vertex, p i,j represents the jth boundary point of the Voronoi cell area of the i-th vertex, and h represents the number of boundary points in the Voronoi cell area; Step S74: Update the sampling point coordinates according to the gradient of the sampling point: Where ω is the gradient descent rate; Step S75: Move each vertex to the updated coordinate position of its corresponding sampling point, and repeat the process from step S2 to step S7 until the energy function E is less than a given threshold, and the optimized triangle mesh is an anisotropic triangle mesh.
Citation Information
Patent Citations
User controlled method for generating highly structured triangular meshes
CN101908234A
Non-obtuse remeshing method based on centroidal Voronoi tessellation
CN105243688A