Triangle mesh generation method for point cloud of outer envelope surface of STEP format CAD model

CN120951586BActive Publication Date: 2026-06-26CHANGCHUN UNIV OF SCI & TECH

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHANGCHUN UNIV OF SCI & TECH
Filing Date
2025-08-08
Publication Date
2026-06-26

AI Technical Summary

Technical Problem

Existing technologies cannot effectively distinguish and separate the internal and external structures of STEP format CAD models, making it difficult to meet the perception requirements of the external surface in spraying tasks.

Method used

By identifying the consistency of NURBS surface parameters, overlapping surface patches are designed. Combining point domain parity determination and Delaunay subdivision algorithm, a triangular mesh of outer envelope surface point cloud is generated, and redundant internal structures are removed.

Benefits of technology

It achieves accurate extraction of the outer envelope region and generates structured, density-controllable triangular mesh point clouds, improving the model's adaptability to point cloud-driven tasks such as spraying simulation and path planning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120951586B_ABST
    Figure CN120951586B_ABST
Patent Text Reader

Abstract

The method for generating an outer envelope surface point cloud triangular mesh of a STEP format CAD model belongs to the technical field of CAD software, and aims to solve the problem that the prior art cannot distinguish and separate internal and external structures and is difficult to meet the sensing demand of the outer surface of a spraying task. The method comprises the following steps: obtaining parameter information of a STEP format file; obtaining boundary parameter discretization information; initializing a surface patch; judging whether the surface patch is overlapped; integrating the overlapped surface patches; generating surface point cloud information; and constructing an outer envelope surface point cloud triangular mesh of each surface patch. The present application designs a surface patch coincidence identification and boundary fusion mechanism based on the parameter consistency of a NURBS surface, combines a point domain parity judgment and a Delaunay subdivision algorithm, accurately extracts an outer envelope region of a STEP model, separates redundant internal structures, generates a structured and density-controllable triangular mesh point cloud result, and improves the adaptability of the model in point cloud driven tasks such as spraying simulation and path planning.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of CAD software technology, specifically relating to the operation of three-dimensional models or images used for computer-aided drafting, and in particular, a method for generating triangular meshes of point clouds on the outer envelope of STEP format CAD models. Background Technology

[0002] With the increasing precision requirements of industrial design and manufacturing, STEP format CAD models have become the mainstream standard for industrial component modeling and data exchange due to their high-precision parameterization, clear topological structure, and complete boundary representation. When these models are directly applied to point cloud-driven tasks such as spraying simulation and path planning, they often face challenges such as large data volumes, low processing efficiency, and rendering difficulties, necessitating a preprocessing method for lightweight representation. To address this, by converting the STEP model into a triangular mesh containing only the outer envelope surface point cloud, key geometric features can be preserved while effectively stripping away internal redundant structures. Furthermore, continuous surfaces can be discretized into regular triangular mesh data, significantly reducing computational complexity and improving the model's processing efficiency and adaptability in point cloud-driven scenarios.

[0003] Chinese patent publication number "CN105184868A" is titled "A Method for Generating Triangular Surface Mesh Based on a 3D Solid Model." This method generates triangular meshes by mapping NURBS surfaces to a 2D parameter space, performing regular discretization, and then mapping them back to 3D space. It is suitable for general surface mesh construction tasks. This method supports the STEP model format and has some local precision adjustment capabilities. However, this approach primarily focuses on face-by-face subdivision and single-piece mesh generation, lacking mechanisms for cross-face overlap recognition and boundary fusion, making it difficult to achieve overall extraction of the outer envelope region and effective stripping of internal structures. Taking a spraying scenario as an example, the spray gun path planning only needs to cover the visible area outside the model; the internal closed faces are not part of the spraying target. This technology cannot distinguish and strip the internal and external structures, making it difficult to meet the perception requirements of the external surface in spraying tasks. Summary of the Invention

[0004] To address the problem that existing technologies cannot distinguish and separate internal and external structures, thus failing to meet the perception requirements of coating tasks for external surfaces, this invention proposes a method for generating triangular meshes of point clouds on the outer envelope of a STEP format CAD model.

[0005] The technical solution of this invention to solve the technical problem is as follows:

[0006] A method for generating triangular meshes of point clouds on the outer envelope of a STEP format CAD model, comprising the following steps:

[0007] Step 1: Obtain parameter information from the STEP format file;

[0008] Given a STEP format CAD file Model, iterate through the set of outer surface patches in the Model, where each patch is defined by a NURBS surface; extract the control points, weights, order of the B-spline basis function, and corresponding basis function for each patch to construct a mapping from the two-dimensional parameter space to the three-dimensional space; extract the boundary B-spline basis function and control points from each patch to construct the surface boundary curve;

[0009] Step 2: Obtain the discretization information of the boundary parameters;

[0010] Traverse the set of boundary curves and sample each curve at equal steps within the parameter range to obtain three-dimensional discrete points on the boundary;

[0011] Step 3, initialize the facet;

[0012] Select an initial patch and its boundary point set; set this initial patch as the merged patch S. merged Let its boundary point set be B. merged ;

[0013] Step 4: Determine if the dough pieces overlap;

[0014] Take one of the remaining patches in sequence and compare it with the currently merged patch; if the two patches are found to be overlapping, they are determined to be overlapping if they have the same order of basis functions, a proportional relationship between weights, a proportional plus offset relationship between control points, and completely identical basis functions.

[0015] Step 5: Integrate overlapping panels;

[0016] When two faces overlap, the current face is compared with S. merged Merge the points; calculate the Euclidean distance between any two points in the two boundary point sets; if the distance is less than a set threshold, determine that they coincide and remove them from the set; update the merged boundary point set.

[0017] If there are no overlapping points in the two boundary point sets, and the current patch boundary is completely within the boundary of the merged patch, the patch is determined to be contained, the patch is deleted, and only its boundary is merged.

[0018] Continue traversing the remaining facets, repeating steps 4 and 5 until all overlapping facets are merged, resulting in a complete merged facet and boundary.

[0019] Step 6: Generate surface point cloud information;

[0020] The merged patch is discretized with equal steps in the u and v parameter directions to obtain a set of two-dimensional parameter points; these parameter points are mapped to three-dimensional space points, and a horizontal ray is emitted from each point to determine the number of intersections with the boundary.

[0021] If the number of intersection points is odd, the point is determined to be inside the boundary and is a valid point; if the number is even, the point is determined to be outside the boundary and is an invalid point; finally, all valid points are retained as the set of valid points for the outer envelope.

[0022] Step 7: Construct the triangular mesh of the point cloud of the outer envelope of each patch;

[0023] The Delaunay algorithm is used to triangulate the effective point set of the outer envelope surface obtained in step 6 to generate a triangular mesh of the outer envelope surface point cloud, which is then stored in the mesh set.

[0024] Repeat steps 3 to 7 until all facets are processed, ultimately generating the outer envelope point cloud triangular mesh of the entire model.

[0025] The beneficial effects of this invention are:

[0026] This invention designs a surface overlap recognition and boundary fusion mechanism based on NURBS surface parameter consistency, and combines point domain parity determination and Delaunay subdivision algorithm to accurately extract the outer envelope region of the STEP model, strip away redundant internal structures, and generate structured, density-controllable triangular mesh point cloud results, thereby improving the model's adaptability in point cloud-driven tasks such as spraying simulation and path planning. Attached Figure Description

[0027] Figure 1 Flowchart of the method for generating triangular meshes of point cloud on the outer envelope surface of a STEP format CAD model according to the present invention;

[0028] Figure 2 : Schematic diagram of effective point selection according to the present invention;

[0029] Figure 3 : A schematic diagram of the CAD model in this embodiment of the invention;

[0030] Figure 4 : Schematic diagram of the boundary discrete point S in the embodiment of the present invention;

[0031] Figure 5 : A schematic diagram of the integrated back panel in this embodiment of the invention;

[0032] Figure 6 In this embodiment of the invention, the three-dimensional point cloud S opt Schematic diagram;

[0033] Figure 7 In this embodiment of the invention, the outer envelope surface point cloud triangular mesh M r Schematic diagram;

[0034] Figure 8 : Schematic diagram of the transformation result of the point cloud triangular mesh of the outer envelope surface in this embodiment of the invention. Detailed Implementation

[0035] The present invention will now be described in further detail with reference to the accompanying drawings.

[0036] like Figure 1 As shown, the method for generating triangular meshes of point clouds on the outer envelope of a STEP format CAD model according to the present invention specifically includes the following steps:

[0037] Step 1: Obtain parameter information from the STEP format file;

[0038] Given a STEP format CAD file Model, iterate through the set S of outer surface patches in Model. r ={S(u r v r )r|1≤r≤N}, where N is the number of faces contained in the Model.

[0039] Acquire control points Weight B-spline basis function order p r q r B-spline basis functions Get u r v r NURBS surface under parameters:

[0040]

[0041] In formula (1): the parameter range is and

[0042] S(u r v r ) r Defines a point (u) in two-dimensional parametric space. r v r (x) to a point on a three-dimensional curved surface r y r , z r The mapping relationship of ).

[0043] Extract S(u) r v r ) r Boundary B-spline basis function N i,p (t r ), control point P i ,get Surface boundary curve B(t) under parameters r ) r :

[0044]

[0045] After the traversal is complete, the set of boundary curves B is obtained.r ={B(t) r ) r |1≤r≤N}.

[0046] Step S2: Obtain the discretization information of the boundary parameters;

[0047] Iterate through B starting from r=1 r Select B(t) r Using formula (3), t is sampled at equal steps:

[0048]

[0049] In formula (3): M represents the number of discrete points.

[0050] Will Substituting into formula (2) yields The set of discrete boundary points in three-dimensional space B pr ={P j |1≤j≤M}.

[0051] The traversal ends when r = N, resulting in the set B of three-dimensional spatial boundary curves. tpr ={B pr |1≤pr≤N}.

[0052] Step S3, initialize the facet;

[0053] Select the initial patch S(u) r=1 v r=1 ) r=1 Its corresponding B p ={P i If |1≤i≤M}, then the subsequent set of facets {S(u r +u v r+u ) r+u |1≤u≤Nr and its corresponding B p(r+u) ={Q j |1≤j≤M},

[0054] Let the initial face be:

[0055] S merged =S(u r v r ) r (4)

[0056] Initial set of boundary points:

[0057] B merged =B pr (5)

[0058] Step S4: Determine whether the face pieces overlap;

[0059] Let the initial variable u = 1. If there exists a constant... The translation variable t satisfies the following within the same parameter domain:

[0060]

[0061] Then determine S(u) r ,v r ) r With S(u r+u ,v r+u ) r+u The planes they are on overlap.

[0062] Step S5: Integrate overlapping patches;

[0063] When S(u r v r ) r With S(u r+u ,v r+u ) r+u When the surfaces coincide: use formula (7) to merge S merged With S(u r+u ,v r +u ) r+u Get to S as a parameter merged (u m ,v m ).

[0064] S merged (u m ,v m ) = S merged ∪S(u r+u ,v r+u ) r+u (7)

[0065] Calculate B using formula (5) merged any point in the middle and B p(r+u) Euclidean distance from any point in the middle:

[0066] d(P i Q j )=||P i -Q j || (8)

[0067] Let d(P) i Q j The threshold is ε, when d(P) i Q j When ) < ε, determine P i Q j Overlap, use formula (6) to make Pi Q j From S merged (u m v m ) and S(u r+u v r+u ) r+u Delete, update B merged :

[0068] B merged = (B merged \P i )∪(B p(r+u) Q j (9)

[0069] If d(P) i Q j )>ε, and B p(r+u) All located in S merged (u m v m Within the boundary, determine S(u) r+u v r+u ) r+u S merged (u m v m The formula (10) is used to delete S(u). r+u v r+u ) r+u And B p(r+u) Merge into S merged (u m v m ):

[0070] B merged =B p(r+u) ∪B merged (10)

[0071] If u < Nr, let u = u + 1, and repeat steps 4 and 5 until u = Nr, to obtain the integrated patch S. merged (u m v m ) and boundary curve B merged .

[0072] Step S6: Generate surface point cloud information;

[0073] Using formula (11) to measure the surface plate S merged (u m v m Perform equal-step discretization:

[0074]

[0075] In formula (11), N u N v Δu and Δv are the number of sampling points in the u and v directions, respectively, and Δu and Δv are the given step sizes in the u and v directions, respectively.

[0076] Will Substituting into formula (1) yields the three-dimensional spatial point S. raw ={P i |1≤i≤n},S raw Each point P in i A ray l is emitted in a horizontal direction, and the relationship between l and B is statistically analyzed. merged The number of intersection points is m:

[0077] If m is odd, then P i Located in B merged Inside, is the valid point P. i ′;

[0078] If m is even, then P i Located in B merged Outside, there is an invalid point P. i ";

[0079] Place the valid points into the point set S inside the boundary. opt ={P i Let ′|1≤i≤n}, where n is the number of sampling points.

[0080] A diagram illustrating the selection of effective points is shown below. Figure 2 As shown, the intersections of the rays emanating from points P1 and P3 with the boundary of the figure are both odd, indicating that they are located inside the boundary. Therefore, these points are valid and saved as P1′ and P3′. On the other hand, the intersections of the ray emanating from point P2 with the boundary of the figure are both even, indicating that they are located outside the boundary. Therefore, these points are invalid and deleted.

[0081] Step S7: Construct the triangular mesh of the point cloud of the outer envelope of each patch;

[0082] Using the Delany algorithm to analyze S opt Triangulation is performed to obtain the triangular mesh M of the outer envelope surface point cloud. r Store it in the triangular mesh set M of the outer envelope surface point cloud. all middle.

[0083] When r < N, select the face S(u) r+1 v r+1 ) r+1 Repeat steps S3, S4, S5, S6, and S7 until r = N, to obtain the triangular mesh set M of the outer envelope surface point cloud. all ={M i |1≤i≤n}.

[0084] Example:

[0085] Step 1: Obtain parameter information from the STEP format file;

[0086] Read the Model.stp file from the STEP file. This Model contains 18 outer surfaces and consists of a large cube and two smaller cubes attached to the right side, as shown below. Figure 3 As shown, each surface is described as a NURBS surface.

[0087] For each face, extract its control points, weights, B-spline basis function order, and basis functions: taking the right face of the large cube as an example, its parameters are as follows:

[0088] Parameter domain: u∈[0,1], v∈[0,1];

[0089] Control points (using a 2×2 control grid):

[0090] P 0,0 =(2, 0, 0)

[0091] P 0,1 = (2, 2, 0)

[0092] P 1,0 = (2, 0, 2)

[0093] P 1,1 = (2, 2, 2);

[0094] Weights: all are 1; B-spline basis function order: p = q = 1.

[0095] Basis functions: For the u direction: N0(u) = 1 - u, N1(u) = u,

[0096] For the direction of v: M0(v) = 1 - v, M1(v) = v;

[0097] The surface expression is:

[0098] S(u,v)=(1–u)(1–v)·(2,0,0)+(1–u)v·(2,2,0)+u(1–v)·(2,0,2)+u·v·(2,2,2);

[0099] Extract the boundary curve for each face.

[0100] For the right side of the large cube: when v = 0: boundary curve B big_right (t), t∈[0,1], calculation formula:

[0101] B big_right (t)=(1-t)·(2,0,0)+t·(2,0,2)=(2,0,2t), t∈[0,1],

[0102] By sequentially extracting the boundary curves of the other surfaces, a boundary curve set B = {B1, B2, ..., B} is obtained. 18}

[0103] Step 2: Obtain the discretization information of the boundary parameters;

[0104] Set the number of sampling points M = 30 for each boundary curve. For the boundary B on the right side of the large cube... big_right (t): Parameter range t∈[0,1], step size Δt avg = (1-0) / 30≈0.03333, sampling points:

[0105]

[0106] For the other 17 surfaces, sampling with equal step sizes is also performed in their respective parameter domains to obtain the discrete boundary point set B. p (r)(r=1,...,18), a schematic diagram of the boundary discrete point S is shown below. Figure 4 As shown, Figure 4 The white discrete points in the middle represent the set of discrete points B. p (t).

[0107] Step 3, initialize the facet;

[0108] Select the right side B of the large cube big_right ,like Figure 4 In face A, let the right side of the large cube, S_big_right, be the initial merged face, S_merged. Let the set of boundary points obtained by discrete sampling of S_big_right be denoted as B_merged.

[0109] Step 4: Determine if the dough pieces overlap;

[0110] Starting from r=1, check each subsequent patch to see if it overlaps with the current S_merged.

[0111] Judgment conditions:

[0112] Check whether the order of the basis functions of the two B-splines is consistent (both are 1);

[0113] All weights are 1, satisfying the proportional relationship (proportional constant). );

[0114] Check whether the control points on both sides satisfy the fixed translation relationship.

[0115] Compare the control point data of the contact surface between the right side S_big_right of the large cube and the small cube: the control points of the small cube at the contact point and the control points of the right side of the large cube satisfy P. big =P small+t, where t is a fixed translation vector. The basis functions are the same, ensuring a consistent surface representation.

[0116] If a constant ratio and a fixed translation relationship exist, it is determined that the two surfaces coincide or contact in space, thus satisfying the merging condition.

[0117] Step 5: Integrate overlapping panels;

[0118] For the faces that are in contact with S_merged (initially the right face of the large cube), the following merging operation is performed:

[0119] When the upper small cube touches the right side of the large cube, it is determined that the control point of that face of the upper small cube has a fixed translational relationship with the control point of the right side of the large cube.

[0120] Once the conditions are met, update the merged surfaces:

[0121] S_merged=S_merged∪S_small1_contact

[0122] Similarly, when detecting the contact surface of the smaller cube below, if its control points also meet the same conditions, then...

[0123] S_merged=S_merged∪S_small25_contact

[0124] After merging, S_merged represents the composite surface formed by the right side of the large cube and its contact area with the small cube on the right side.

[0125] To prevent duplicate boundaries during the merging process, the Euclidean distance method is used for detection. A distance threshold ε = 0.001 is set. For any two boundary sampling points in S_merged, if the distance d(P, Q) < ε, they are considered to overlap, and one of them is deleted. The merged boundary point set B_merged is then updated.

[0126] The boundary sampling points at the contact point between the right side of the large cube and the small cube may be duplicated. After deduplication by distance detection, B_merged contains the unique outer contour points of the entire composite surface.

[0127] If a subsequent face is inside S_merged, it is determined that the face is completely contained by S_merged, and its boundary information is directly merged into the boundary of S_merged, without needing to store the face separately.

[0128] Traverse all remaining faces (18 in total), perform overlap detection and merging sequentially until all overlapping or contact faces have been processed, ultimately obtaining a unified composite face S_merged, and its corresponding outer boundary set B_merged. A schematic diagram of the merged composite face S_merged is shown below. Figure 5 As shown.

[0129] Step 6: Generate surface point cloud information;

[0130] The new two-dimensional parameter range is determined based on the parameter domain of the merged S_merged.

[0131] Let the number of discrete sampling points be:

[0132] N u (u direction) = 25, N v (v direction) = 25

[0133] Calculation parameter step size:

[0134]

[0135]

[0136] For each parameter (u) i ,v j ) Calculate the corresponding S_merged(u i ,v j This yields the three-dimensional point set S_raw.

[0137] For each point P in S_raw, emit a ray along a certain horizontal direction.

[0138] Count the number of intersection points m between the ray and the outer boundary B_merged of the merged surface S_merged.

[0139] If m is odd, then P is determined to be inside the boundary, and is validly denoted as P′;

[0140] If m is even, then P is located outside, and invalid is denoted as P″.

[0141] The effective point set S_opt is formed, and the points in S_opt constitute the point cloud information of the entire composite surface region. A schematic diagram of the generated 3D point cloud S_opt is shown below. Figure 6 As shown.

[0142] Step 7: Construct the triangular mesh of the point cloud of the outer envelope of each patch;

[0143] Using the Delany algorithm to analyze S opt Triangulation is performed to obtain the triangular mesh M of the outer envelope surface point cloud. r Store it in the triangular mesh set M of the outer envelope surface point cloud.all In the middle, the grid effect on the right side of the large cube is as follows: Figure 7 As shown.

[0144] When r < N, select the face S(u) r+1 v r+1 ) r+1 Repeat steps S3, S4, S5, S6, and S7 until r = N, to obtain the triangular mesh set M of the outer envelope surface point cloud. all The result of transforming the point cloud into a triangular mesh on the outer envelope surface is as follows: Figure 8 As shown.

Claims

1. A method for generating triangular meshes of point clouds on the outer envelope of STEP format CAD models, characterized by: The method includes the following steps: Step 1: Obtain parameter information from the STEP format file; Given a STEP format CAD file Model, iterate through the set of outer surface patches in the Model, where each patch is defined by a NURBS surface; extract the control points, weights, order of the B-spline basis function, and corresponding basis function for each patch to construct a mapping from the two-dimensional parameter space to the three-dimensional space; extract the boundary B-spline basis function and control points from each patch to construct the surface boundary curve; Step 2: Obtain the discretization information of the boundary parameters; Traverse the set of boundary curves and sample each curve at equal steps within the parameter range to obtain three-dimensional discrete points on the boundary; Step 3, initialize the facet; Select an initial patch and its boundary point set; set the initial patch as the merged patch. Its boundary point set is set as ; Step 4: Determine if the dough pieces overlap; Take one of the remaining patches in sequence and compare it with the currently merged patch; if the two patches are considered to overlap, they satisfy the following conditions: the order of the basis functions are the same, there is a proportional relationship between the weights, there is a proportional plus offset relationship between the control points, and the basis functions are completely identical. Step 5: Integrate overlapping panels; When two facets overlap, the current facet will be joined with... Merge the points; calculate the Euclidean distance between any two points in the two boundary point sets; if the distance is less than a set threshold, they are considered to overlap and removed from the set; update the merged boundary point set. If there are no overlapping points in the two sets of boundary points, and the current patch boundary is completely within the boundary of the merged patch, the patch is considered to be contained, the patch is deleted, and only its boundary is merged. Continue traversing the remaining facets, repeating steps 4 and 5 until all overlapping facets are merged, resulting in a complete merged facet and boundary. Step 6: Generate surface point cloud information; For the merged pieces and Discretize the parameter directions at equal steps to obtain a set of two-dimensional parameter points; map these parameter points to three-dimensional spatial points, and emit a horizontal ray for each point, then determine the number of intersections with the boundary. If the number of intersection points is odd, the point is determined to be inside the boundary and is a valid point; if the number is even, the point is determined to be outside the boundary and is an invalid point; finally, all valid points are retained as the set of valid points for the outer envelope. Step 7: Construct the triangular mesh of the point cloud of the outer envelope of each patch; The Delaunay algorithm is used to triangulate the effective point set of the outer envelope surface obtained in step 6 to generate the triangular mesh point cloud structure of the outer envelope surface, and store it in the mesh set. Repeat steps 3 through 7 until all facets are processed, ultimately generating the outer envelope point cloud triangular mesh of the entire model.

2. The method for generating triangular meshes of point clouds on the outer envelope surface of a STEP format CAD model according to claim 1, characterized in that, Step 4 specifically involves: Set initial variables If a constant exists The translation variable t satisfies the following within the same parameter domain: (6); Then determine the first Each piece of dough With the Each piece of dough Overlap, among which, As control points, As weight, Let the order of the B-spline basis functions be denoted by . For B-spline basis functions, Number the face pieces.

3. The method for generating triangular meshes of point clouds on the outer envelope surface of a STEP format CAD model according to claim 1, characterized in that, Step 5 specifically involves: Let the merged composite NURBS patch be ,when and When the surfaces coincide: use formula (7) to merge. and Get to , For parameters ; (7); in, for Composite sheet Direction parameter field variable; Calculate the set of boundary points after merging the patches Euclidean distance: (8); in, for The first in A boundary point, for The first in One boundary point; set up Threshold is ,when At that time, it was believed Overlap, will from and Delete, update : (9); like ,and All located in Within the boundary, it is considered quilt The contents are deleted using formula (10). And merge into : ; (10); Let the total number of outer surface patches in the model be . The noodle sheet number is The face traversal count variable is ,like ,make Repeat steps 4 and 5 until... The resulting integrated sheet and boundary curves .

4. The method for generating triangular meshes of point cloud on the outer envelope surface of a STEP format CAD model according to claim 1, characterized in that, Step 6 specifically involves: Using formula (11) to analyze the face plate Perform equal-step discretization: , (11); in, , These represent the number of sampling points in the u and v directions, respectively. for and Given the direction and step size, , These are the composite surfaces after merging. The minimum value of the parameter domain in the u and v directions corresponds to the maximum value of the parameter domain. , ; Will Substituting into the NURBS surface yields three-dimensional spatial points. , Each point in Emit a ray in a horizontal direction ,statistics and The number of intersection points is m: If m is odd, then lie in Inside, is the valid point. ; If m is even, then lie in Outside, it is an invalid point. ; Place the valid points into the point set inside the boundary. , where n is the number of sampling points.