A method for generating signed distance fields of characteristic polyhedrons based on surface mesh features of objects

By constructing the parallelization of feature polyhedrons on the surface mesh of the object, the problem of low distance field generation efficiency in the prior art is solved, and efficient generation of directed distance fields is achieved, shortening calculation time and saving resources.

CN115272609BActive Publication Date: 2025-08-29SHANGHAI SUOCHEN INFORMATION TECHNOLOGY CO LTD
View PDF -1 Cites 0 Cited by

Patent Information

Application Number
CN202210853552.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-07-20
Publication Date
2025-08-29
Estimated Expiration
2042-07-20

Smart Images

  • Figure CN115272609B_ABST
    Figure CN115272609B_ABST
Patent Text Reader

Abstract

The technical solution of the present invention provides a method for generating a three-dimensional signed distance field based on a characteristic polyhedron of an object's surface mesh. The method comprises constructing a characteristic polyhedron from surface features derived from triangular elements in the object's STL surface mesh file; and generating a narrowband signed distance field from the characteristic polyhedron. The method provided by the present invention is not limited by the geometric complexity of the object or the resolution of the domain. The method can construct the characteristic polyhedron and its boundary volume for generating the signed distance field from the surface features of the triangular elements in the STL surface mesh file, directly using the modeling file, shortening the process. The characteristic polyhedron and its boundary volume data are processed by a specific algorithm to achieve accurate generation of the narrowband signed distance field in a method that efficiently saves computing resources, optimizes storage space and generation time, and reduces computational difficulty.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a method for generating a narrowband three-dimensional directed distance field of a characteristic polyhedron based on surface mesh features of an object, which can be applied to three-dimensional object deformation, texture mapping, collision detection, etc. in the fields of computer graphics and numerical modeling. Background Art

[0002] A distance field is a scalar field that represents the minimum distance to a given object from all points within a certain region of the object's surface. A signed distance field assigns positive or negative signs to distances, indicating the exterior or interior of an object. If a point is outside the object, the distance field value is positive; if it is inside the object, the distance field value is negative; and if it is on the surface, the distance field value is zero.

[0003] To generate a distance field on a discrete 3D mesh of a given object, a brute-force algorithm is often used to directly calculate the shortest distance from a point to a specific object. This algorithm progressively calculates all distances from each voxel in the mesh to the given object, compares all distances, and stores the smallest value. However, the drawbacks of brute-force algorithms are long computation times, high computational complexity, and low efficiency, especially when dealing with complex geometry and high-resolution domains. Summary of the Invention

[0004] The technical problem to be solved by the present invention is that the existing brute force algorithm for generating a distance field has too long a calculation time, too large a calculation amount, and low calculation efficiency.

[0005] In order to solve the above technical problems, the technical solution of the present invention is to provide a method for generating a three-dimensional signed distance field of a characteristic polyhedron based on the surface mesh of an object, characterized by comprising the following steps:

[0006] Step 1: Construct a feature polyhedron from the surface features derived from the triangle elements of the STL surface mesh file of the object, including the following steps:

[0007] Step 1: Read a structured STL surface mesh file, which lists the vertices of each triangular unit face and an outward normal vector in a counterclockwise direction;

[0008] Step 2: Based on the vertices and an outward normal vector of each triangular unit face, a face object, three edge objects, and three vertex objects are constructed. The face object, edge object, and vertex object are sets of spatial coordinates of the feature's vertices and normals.

[0009] Step 3: Further process the face objects, edge objects, and vertex objects to generate feature polyhedrons, where:

[0010] A prism-shaped characteristic polyhedron is generated by stretching a face along the normal vector direction, and a corresponding three-dimensional cubic axisymmetric boundary volume is obtained at the same time;

[0011] An edge object is stretched along the normal vector direction of two faces adjacent to two vertices of the edge object to generate a prism-shaped characteristic polyhedron, and a corresponding three-dimensional cubic axisymmetric boundary volume is obtained at the same time;

[0012] Stretching a vertex object along the normal vector direction of all faces adjacent to the vertex object to generate a pyramid, and simplifying the pyramid with a specified cone or hemisphere to obtain a characteristic polyhedron, and at the same time obtain the corresponding three-dimensional cubic axisymmetric boundary volume;

[0013] Step 2: Generate narrowband signed distance field from feature polyhedron

[0014] Generates a narrowband signed distance field using either of the following two methods, acting only on cells within the bounding volume, where a cell is each voxel of the mesh:

[0015] First method:

[0016] Each cell in the bounding volume is checked simultaneously. Threads are started based on the size of the bounding volume, and the domain coordinates of each thread are determined from the bounding volume's limits. All threads check in parallel whether they are within the bounding volume's extrusion range, and track whether the coordinates of each thread are on the same side of the extruded surface of the feature polyhedron. The distance between the thread on the inside of the extruded surface and the surface features of the extruded surface is calculated, and for threads with a smaller distance magnitude than the previous one, the result is written to memory.

[0017] The second method is to parallelize the surface features of the feature polyhedron

[0018] Each feature polyhedron has a thread that loops through the positions of each cell in the corresponding bounding volume to decide whether to write the distance value to the memory. When multiple threads are processing the same domain coordinates, serialization is introduced. If the record value of the current memory address has a larger magnitude value, the atomicCAS method is used to write a floating-point value to the memory. This continues until the local value is successfully written to the memory or a smaller magnitude value is written by another thread.

[0019] Preferably, all face objects, edge objects and vertex objects are listed as an array structure.

[0020] Preferably, in step 3, stretching a face along the normal vector direction to generate a prism-shaped characteristic polyhedron and simultaneously obtaining a corresponding three-dimensional cubic axisymmetric boundary volume further comprises the following steps:

[0021] Step 101: Stretch the vertices of the three corners of the triangle unit along the normal direction specified by the user to obtain a prism object;

[0022] Step 102: Find the side normal of the prism object. The side normal is defined by the cross product of the vertices in counterclockwise order when viewed from the inside of the prism object. The three side normals and the side points can be used to describe the plane of the side of the prism object.

[0023] Step 103: Use the two original vertices as points on the plane of the side of the prism object;

[0024] Step 104: Save the minimum coordinate value and the maximum coordinate value of the original vertex and the stretched vertex, thereby generating a three-dimensional cubic axisymmetric boundary volume, wherein the original vertex is the vertex described in step 1;

[0025] Step 105: Repeat steps 101 to 104 to negatively stretch the original vertex in the normal direction of the flipped surface;

[0026] Step 106: Obtain two prism objects and two three-dimensional cubic axisymmetric boundary volumes corresponding to the two prism objects.

[0027] Preferably, in step 3, stretching an edge object along the normal vector direction of two faces adjacent to two vertices of the edge object to generate a prism-shaped characteristic polyhedron, and simultaneously obtaining a corresponding three-dimensional cubic axisymmetric boundary volume includes the following steps:

[0028] Step 201: Determine whether the current edge object is convex, concave, or flat:

[0029] Assume that the edge pair between vertex a and vertex b in the current triangle unit is represented by ab and ba, and their normals are n1 and n2 respectively. Then define a discriminant d=(ab*n1)∙n2: when d>0, the current edge object is convex and is defined as a convex edge; when d<0, the current edge object is concave and is defined as a concave edge; when d=0, the current edge object is flat and is defined as a flat edge.

[0030] Step 202: For a convex edge or a flat edge, stretch the two endpoints of the convex edge or the flat edge by a specified distance along the original normal direction of the two adjacent faces, thereby generating a prism; the four faces of the prism are described by the endpoints and the inward normal, and a three-dimensional cubic axisymmetric bounding volume containing the prism is also constructed;

[0031] For concave edges, you first need to flip the original normal, which is the normal vector described in step 1. The two endpoints of the concave edge are stretched a specified distance in the direction of the flipped original normal to produce a prism. The four faces of the prism are described by the endpoints and the inward normal. At the same time, a three-dimensional cubic axisymmetric boundary volume containing the prism is also constructed.

[0032] Preferably, in step 3, when processing the vertex object to generate the feature polyhedron, an average pseudo normal N is generated based on the normal set of the current vertex v. α , for all adjacent vertices v of the current vertex v n Perform the test and define a discriminant d=vv n ∙N α , where vv n Indicates connecting adjacent vertices v n Line with the current vertex v: If for all adjacent vertices v n For d>0, the current vertex v is convex, that is, a convex vertex; if for all adjacent vertices v n For d<0, the current vertex v is concave, that is, a concave vertex; if for all adjacent vertices v n For d=0, the current vertex v is flat; in other cases, the current vertex v is a saddle vertex; for convex vertices, concave vertices and saddle vertices, the vertex coordinates, pseudo normals and the most divergent positive normals are stored.

[0033] Preferably, when constructing the cone, the cone height is a user-defined maximum distance.

[0034] Preferably, in step 3, when obtaining the three-dimensional cubic axisymmetric bounding volume of the characteristic polyhedron generated by stretching the vertex object, if the characteristic polyhedron is a cone, the bounding volume is generated by taking the intersection of the bounding volume of the cone and the sphere with the maximum distance radius centered on the vertex.

[0035] Preferably, in the first method described in the second step, one kernel is launched for each bounding volume, and each thread works with the same data except for the local coordinate data and the calculated distance data.

[0036] Preferably, in the second method described in the second step, a thread is started on each feature polyhedron to cyclically process the units, or a thread is started on each feature polyhedron and then the thread dynamically starts a thread for each unit.

[0037] The method provided by the present invention is not limited by the geometric complexity of the object or the resolution of the domain. It utilizes the object's STL surface mesh file to save computing resources, improve computing efficiency, and shorten computing time to achieve the generation of a signed distance field. Compared with the existing technology, the present invention has the following advantages:

[0038] (1) The characteristic polyhedron and its boundary volume used to generate the signed distance field can be constructed through the surface features of the triangle elements of the STL surface mesh file. The modeling file can be used directly to shorten the process;

[0039] (2) By processing the characteristic polyhedron and its boundary volume data through a specific algorithm, the accurate generation of narrowband directed distance fields can be achieved in an efficient and resource-saving way, thereby optimizing the storage space and generation time and reducing the computational difficulty. BRIEF DESCRIPTION OF THE DRAWINGS

[0040] Figure 1 This shows a prism extruded from a surface object;

[0041] Figure 2 It shows a prism extruded from an edge object;

[0042] Figure 3 It shows the pyramid stretched out from the vertex object;

[0043] Figure 4 Indicates the neck-shaped situation. DETAILED DESCRIPTION

[0044] The sizes and proportions shown in the drawings in this specification are for illustrative purposes only and are provided to facilitate the description. They are not intended to limit the conditions for implementation of the present invention and do not affect the efficacy of the present invention. The positional relationships of "upper," "lower," "inner," and "outer" in this specification are provided for convenience only and are not intended to limit the scope of implementation of the present invention. Any changes in these relative relationships without substantial changes in the technical content are considered to be within the scope of implementation of the present invention.

[0045] The present invention discloses a method for generating a three-dimensional directed distance field of a characteristic polyhedron based on a surface mesh of an object, comprising the following steps:

[0046] Step 1: Construct feature polyhedra from surface features derived from triangle elements of the object's STL surface mesh file.

[0047] Step 101: Read a structured STL surface mesh file. The STL surface mesh file lists the vertices of each triangular unit face and an outward normal vector in a counterclockwise direction. Each vertex is defined as an original vertex, and the normal vector is defined as an original normal line.

[0048] Step 102: Based on the vertices and an outward normal vector of each triangular unit face, a Face object, three Edge objects, and three Vertice objects are constructed. The Face object, Edge object, and Vertex object are collections of the spatial coordinates of the feature's vertices and normals.

[0049] Step 103: List all face objects, edge objects, and vertex objects as an array structure. In the array structure, all X coordinates are followed by all Y coordinates, and so on.

[0050] Step 104: further process the face objects, edge objects, and vertex objects to generate feature polyhedrons.

[0051] Feature polyhedra are constructed by extrusion based on the position, limits, and normal vectors of the underlying geometry. Extruding a face along its normal vector produces a prism, such as Figure 1 The stretching of the edge is a prism formed by stretching the line between two vertices along the direction of two adjacent faces, as shown in Figure 2 A vertex extrusion is a pyramid defined by the normals of adjacent faces that intersect at the vertex, as shown in Figure 3 As shown in the figure. While prisms extruded from face and edge objects have a known number of faces, prisms formed by vertex extrusion can have arbitrary complexity, making implementation and workload estimation difficult. Therefore, the present invention simplifies vertex extrusion by specifying a cone or hemisphere.

[0052] A prism is defined by six points and five faces. However, to determine whether a point is within the desired region, only four side normals and two points (two vertices on a face or endpoints of an edge) are required. A cone requires a point, an axis vector, and the most deviating normal of its side. A hemisphere requires only a single point and a clipping plane.

[0053] The following describes in detail the characteristic polyhedron extrusion methods of the three objects:

[0054] When constructing a feature polyhedron extruded from a face object, the following method is used:

[0055] Step 1: Stretch the vertices of the three corners of the triangular unit in the normal direction specified by the user to obtain a prism object.

[0056] Step 2: Find the side normal of the prism object, which is defined by the cross product of the vertices in counterclockwise order when viewed from the inside of the prism object. The three side normals and the side points can be used to describe the plane of the side of the prism object.

[0057] Step 3. Use the two original vertices as points on the plane of the side of the prism object.

[0058] Step 4. Save the minimum and maximum coordinate values ​​of the original and extruded vertices. This creates a three-dimensional cubic axisymmetric bounding volume that contains the centers of the cells we want to test for inclusion in the prism.

[0059] Step 5. Repeat steps 1 to 4 to stretch the original vertex in the negative direction of the flipped face normal.

[0060] Step 6: Obtain two prism objects and two three-dimensional cubic axisymmetric boundary volumes corresponding to the two prism objects.

[0061] When constructing a feature polyhedron extruded from an edge object (a feature polyhedron extruded from an edge object is a prism extruded from a line), use the following method:

[0062] Step 1. Determine whether the current edge object is convex, concave or flat:

[0063] Suppose the edge pair between vertex a and vertex b in the current triangle unit is represented by ab and ba, and their normals are n1 and n2 respectively, then a discriminant d=(ab*n1)∙n2 is defined: when d>0, the current edge object is convex and is defined as a convex edge; when d<0, the current edge object is concave and is defined as a concave edge; when d=0, the current edge object is flat and is defined as a flat edge.

[0064] Step 2: For convex or flat edges, extrude the two endpoints of the convex or flat edge by a specified distance along the original normals of the two adjacent faces, creating a prism. The four faces of the prism are described by their endpoints and inward normals, similar to the construction of a prism extruded from a face object. An axisymmetric bounding volume containing the prism is also constructed.

[0065] For concave edges, the original normal is first flipped. The two endpoints of the concave edge are then extruded a specified distance in the direction of the flipped original normal, creating a prism. The four faces of the prism are described by their endpoints and inward normals, similar to the construction of a prism extruded from a face object. An axisymmetric bounding volume containing the prism is also constructed.

[0066] When constructing a feature polyhedron stretched by a vertex object, the following method is used

[0067] Step 1: Construct the normal of the vertex object according to its angle.

[0068] Step 2: Generate an average pseudo normal N based on the normal set of the same vertex α , find the maximum angle between the average pseudo normal and the original normal, and generate the bounding volume of the feature polyhedron based on the maximum angle.

[0069] Step 3: For all adjacent vertices v of the current vertex vn Test to see if they are between the current vertex v and the average pseudo normal N α The present invention defines a discriminant d=vv n ∙N α , where vv n Indicates connecting adjacent vertices v n Line with the current vertex v: If for all adjacent vertices v n For d>0, the current vertex v is convex, that is, a convex vertex; if for all adjacent vertices v n For d<0, the current vertex v is concave, that is, a concave vertex; if for all adjacent vertices v n For example, if d=0, the current vertex v is flat. Otherwise, the current vertex v is a saddle vertex.

[0070] For convex, concave, and saddle vertices, the vertex coordinates, average pseudonormal, and most divergent positive normal are stored to construct the bounding volume of the characteristic polyhedron. When constructing the bounding volume of the characteristic polyhedron, the maximum angle between the most divergent positive normal and the average pseudonormal is obtained.

[0071] Simplify vertex extrusion by specifying a cone or hemisphere. When constructing a cone, the cone height is the user-defined maximum distance. Negative extrusion of vertices is constructed in the same way by flipping the average pseudo-normal, while negative extrusion for saddle vertices uses a reflected positive extrusion.

[0072] Similar to the case of extruding a prismatically shaped characteristic polyhedron, a bounding volume needs to be defined. Sharp corners may result in a very large cone with a rounded base. If positioned on a diagonal of the domain, a large bounding volume will be required that extends far beyond the area closest to the vertex. To avoid testing many unnecessary cells, the present invention generates an axisymmetric bounding volume containing the cone by taking the intersection of the cone's bounding volume and a sphere with the maximum distance radius centered at the vertex. This ensures the generation of a smaller bounding volume and the calculation of the signed distance field with fewer cells.

[0073] The vertex object is stretched such as Figure 4 The characteristic polyhedron of the neck shape shown is a valid orientable triangulated surface, where faces with nearly oppositely pointing normals meet at a vertex. Since all adjacent points end up on the same side of the pseudonormal plane, the vertex is classified as convex. However, the space enclosed by the sum of the face normals extends below the pseudonormal plane at the vertex. Similarly, saddle points often (but not always) have a set of normals that span more than half the space.

[0074] For these cases, a simple solution is to only consider normals pointing to the same side of the pseudo-normal plane as the average normal itself. The volume constrained by these positive normals will be strictly smaller than the half-space above the pseudo-normal plane, which can be covered by a cone that simplifies the characteristic polyhedron of the neck shape. For our test case, this strategy fills in the area of ​​rough shape and produces a signed distance field consistent with the input surface. However, a cone consisting only of positive normals may not be enough to cover the space between the face and the edge extrusion. In this case, a hemisphere can be constructed in the direction of the pseudo-normal to cover the entire half-space above the vertex, and the characteristic polyhedron of the neck shape can be simplified by this hemisphere.

[0075] Step 2: Generate narrowband signed distance field from feature polyhedron

[0076] After all the feature polyhedra are generated, the problem of how to generate the narrowband signed distance field needs to be solved. In order to obtain the best performance, the present invention limits the number of calculations and memory transactions and completes the calculations in parallel as much as possible. The main variables of the present invention are the resolution of the domain, the maximum bandwidth of the required narrowband signed distance field, and the number of surface features. No matter how large the scope of the calculation domain is, only the signed distance fields of the set of cells within all feature polyhedra are calculated. However, these stretched feature polyhedra often overlap. Therefore, in order to limit which cells are contained in which feature polyhedra, the present invention only works on the cells within the boundary body. Therefore, the present invention only works on the cells that are most likely to be within any feature polyhedron, and the tested cells and paired feature polyhedra are limited. The present invention proposes two achievable parallel methods, as described below:

[0077] The first approach checks each bounding volume cell simultaneously. The bounding volume's start and end x, y, and z coordinates, as well as the domain resolution, are stored in the feature polyhedron data. The number of bounding volume cells covered by the bounding volume is known, and threads are launched based on the size of the bounding volume. The domain coordinates of each thread can be determined from the bounding volume's limits. All threads check in parallel whether they are within the bounding volume's extrusion limits. A Boolean flag variable is declared to track whether a thread's coordinates are on the same side of the extruded face of all feature polyhedra. The distance between threads on the inside of the extruded face and surface features is calculated, and the result is written to memory for threads with smaller distance magnitudes than the previous thread. This introduces warp divergence, but there's no performance penalty because no action is taken in other cases. This implementation launches a kernel for each bounding volume, with each thread working with the same data except for their local coordinate data and the distances they compute. For narrowband directed distance field generators with uniform feature size, the bounding volume is likely to be small; kernel launches for high feature counts will dominate the runtime, resulting in poor scalability.

[0078] The second approach is to parallelize the processing of surface features. Each extruded feature polyhedron has a thread that loops through the positions of each bounding cell within the bounding volume and decides whether to write the distance value to memory. For narrow bands and high feature counts, serial traversal of the bounding cells is relatively lightweight and fast. However, because many of the extruded feature polyhedrons overlap, the implementation must ensure that the minimum amplitude value is found. For parallel computation, writes must be atomic, which will introduce some serialization when multiple threads are processing the same domain coordinates. If the record value at the address has a larger amplitude value, the present invention uses the atomicCAS method to write a floating point value to memory. This attempt continues until the local value is successfully written to memory or a smaller value is written by another thread. The effect of serialization depends on the input geometry and thread scheduling, but the impact on runtime is small compared to the overall workload.

[0079] However, consider the case of geometries with few features in the high-resolution domain. When the number of cells within the extrusion is significantly higher than the number of features, looping over the cells within the bounding volume can impact runtime. We propose a dynamic parallelization approach that improves performance by using a hybrid of the two approaches described above, with two options: launching a thread per feature polyhedron to loop over the cells, or launching a thread per feature polyhedron that itself dynamically launches a thread for each cell.

Claims

1. A method for generating a three-dimensional signed distance field of a characteristic polyhedron based on a surface mesh of an object, characterized in that: The following steps are involved: Step 1: Construct a feature polyhedron from the surface features derived from the triangle elements of the STL surface mesh file of the object, including the following steps: Step 1: Read a structured STL surface mesh file, which lists the vertices of each triangular unit face and an outward normal vector in a counterclockwise direction; Step 2: Based on the vertices and an outward normal vector of each triangular unit face, a face object, three edge objects, and three vertex objects are constructed. The face object, edge object, and vertex object are sets of spatial coordinates of the feature's vertices and normals. Step 3: Further process the face objects, edge objects, and vertex objects to generate feature polyhedrons, where: A prism-shaped characteristic polyhedron is generated by stretching a face along the normal vector direction, and a corresponding three-dimensional cubic axisymmetric boundary volume is obtained at the same time; An edge object is stretched along the normal vector direction of two faces adjacent to two vertices of the edge object to generate a prism-shaped characteristic polyhedron, and a corresponding three-dimensional cubic axisymmetric boundary volume is obtained at the same time; Stretching a vertex object along the normal vector direction of all faces adjacent to the vertex object to generate a pyramid, and simplifying the pyramid with a specified cone or hemisphere to obtain a characteristic polyhedron, and at the same time obtain the corresponding three-dimensional cubic axisymmetric boundary volume; Step 2: Generate narrowband signed distance field from feature polyhedron Generates a narrowband signed distance field using either of the following two methods, acting only on cells within the bounding volume, where a cell is each voxel of the mesh: First method: Each cell in the bounding volume is checked simultaneously. Threads are started based on the size of the bounding volume, and the domain coordinates of each thread are determined from the bounding volume's limits. All threads check in parallel whether they are within the bounding volume's extrusion range, and track whether the coordinates of each thread are on the same side of the extruded surface of the feature polyhedron. The distance between the thread on the inside of the extruded surface and the surface features of the extruded surface is calculated, and for threads with a smaller distance magnitude than the previous one, the result is written to memory. The second method is to parallelize the surface features of the feature polyhedron Each feature polyhedron has a thread that loops through the positions of each cell in the corresponding bounding volume to decide whether to write the distance value to the memory. When multiple threads are processing the same domain coordinates, serialization is introduced. If the record value of the current memory address has a larger magnitude value, the atomicCAS method is used to write a floating-point value to the memory. This continues until the local value is successfully written to the memory or a smaller magnitude value is written by another thread.

2. The method for generating a three-dimensional signed distance field of a characteristic polyhedron based on a surface mesh of an object according to claim 1, wherein: List all face objects, edge objects, and vertex objects as an array structure.

3. The method for generating a three-dimensional signed distance field of a characteristic polyhedron based on a surface mesh of an object according to claim 1, wherein: In step 3, stretching a face along the normal vector direction to generate a prism-shaped characteristic polyhedron and simultaneously obtaining a corresponding three-dimensional cubic axisymmetric boundary volume further includes the following steps: Step 101: Stretch the vertices of the three corners of the triangle unit along the normal direction specified by the user to obtain a prism object; Step 102: Find the side normal of the prism object. The side normal is defined by the cross product of the vertices in counterclockwise order when viewed from the inside of the prism object. The three side normals and the side points can be used to describe the plane of the side of the prism object. Step 103: Use the two original vertices as points on the plane of the side of the prism object; Step 104: Save the minimum coordinate value and the maximum coordinate value of the original vertex and the stretched vertex, thereby generating a three-dimensional cubic axisymmetric boundary volume, wherein the original vertex is the vertex described in step 1; Step 105: Repeat steps 101 to 104 to negatively stretch the original vertex in the normal direction of the flipped surface; Step 106: Obtain two prism objects and two three-dimensional cubic axisymmetric boundary volumes corresponding to the two prism objects.

4. The method for generating a three-dimensional signed distance field of a characteristic polyhedron based on a surface mesh of an object according to claim 1, wherein: In step 3, stretching an edge object along the normal vector direction of two faces adjacent to two vertices of the edge object to generate a prism-shaped characteristic polyhedron, and simultaneously obtaining a corresponding three-dimensional cubic axisymmetric boundary volume includes the following steps: Step 201: Determine whether the current edge object is convex, concave, or flat: Assume that the edge pair between vertex a and vertex b in the current triangle unit is represented by ab and ba, and their normals are n1 and n2 respectively. Then define a discriminant d=(ab*n1)∙n2: when d>0, the current edge object is convex and is defined as a convex edge; when d<0, the current edge object is concave and is defined as a concave edge; when d=0, the current edge object is flat and is defined as a flat edge. Step 202: For a convex edge or a flat edge, stretch the two endpoints of the convex edge or the flat edge by a specified distance along the original normal direction of the two adjacent faces, thereby generating a prism; the four faces of the prism are described by the endpoints and the inward normal, and a three-dimensional cubic axisymmetric bounding volume containing the prism is also constructed; For concave edges, you first need to flip the original normal, which is the normal vector described in step 1. The two endpoints of the concave edge are stretched a specified distance in the direction of the flipped original normal to produce a prism. The four faces of the prism are described by the endpoints and the inward normal. At the same time, a three-dimensional cubic axisymmetric boundary volume containing the prism is also constructed.

5. The method for generating a three-dimensional signed distance field of a characteristic polyhedron based on a surface mesh of an object according to claim 1, wherein: When constructing a cone, the cone height is the user-defined maximum distance.

6. The method for generating a three-dimensional signed distance field of a characteristic polyhedron based on a surface mesh of an object according to claim 1, wherein: In step 3, when obtaining the three-dimensional cubic axisymmetric bounding volume of the characteristic polyhedron generated by stretching the vertex object, if the characteristic polyhedron is a cone, the bounding volume is generated by taking the intersection of the bounding volume of the cone and the sphere with the maximum distance radius centered on the vertex.

7. The method for generating a three-dimensional signed distance field of a characteristic polyhedron based on a surface mesh of an object according to claim 1, wherein: In the first approach described in step 2, one kernel is launched for each bounding volume, and each thread works with the same data except for the local coordinate data and the calculated distance data.

8. The method for generating a three-dimensional signed distance field of a characteristic polyhedron based on a surface mesh of an object according to claim 1, wherein: In the second method described in the second step, a thread is started on each feature polyhedron to process the cells in a loop, or a thread is started on each feature polyhedron and then dynamically started by the thread for each cell.