Functions | |
int | Compute_Points_On_Shell (int test_point_count, const HC_POINT *test_points, double tolerance, int point_count, const HC_POINT *points, int face_list_length, const int *face_list, int *results) |
Tests, within a certain tolerance, whether a given set of points reside on the surface of a shell. More... | |
int | DCompute_Points_On_Shell (int test_point_count, const HC_DPOINT *test_points, double tolerance, int point_count, const HC_DPOINT *points, int face_list_length, const int *face_list, int *results) |
Similar to Compute_Points_On_Shell, but operates on double-precision data. More... | |
Detailed Description
Function Documentation
◆ Compute_Points_On_Shell()
int Compute_Points_On_Shell | ( | int | test_point_count, |
const HC_POINT * | test_points, | ||
double | tolerance, | ||
int | point_count, | ||
const HC_POINT * | points, | ||
int | face_list_length, | ||
const int * | face_list, | ||
int * | results | ||
) |
Tests, within a certain tolerance, whether a given set of points reside on the surface of a shell.
- Parameters
-
test_point_count - Number of points in the point cloud. test_points - Vector of x-y-z triplets defining the points to be tested. tolerance - Distance from shell, in object space, inside which a point will be considered to be on the shell. point_count - Number of points in the shell that may enclose the points defined in test_points points - Vector of x-y-z triplets for the coordinates of the vertices to be used to build the shell. (A simple N x 3 array may also be used). Passed by reference always. face_list_length - Size of the array of integers which define the faces in face_list. face_list - Encoded description of how to connect the points to build the faces of the shell (see Insert_Shell() ). results - Array of size test_point_count that specifies whether the point contained at that index within test_points is within the given tolerance of the face of the shell. Passed by reference. Returned to user.
- Returns
- count - The number of points, within the given tolerance, that were on the surface of the shell.
DETAILS
Compute_Points_On_Shell can be used to determine which points within a point cloud are within a given tolerance of the surface of a defined Shell. The array returned to a user is a series of 1's and 0's. If the value is 1 at a given index then the location specified at the corresponding index in the point cloud is within the specified tolerance of the surface of the Shell.
NOTES
Models that use non-planar faces may also cause this function to generate incorrect results. Also, though the tolerance is provided as a double the tolerance is only calculated to within floating point accuracy.
◆ DCompute_Points_On_Shell()
int DCompute_Points_On_Shell | ( | int | test_point_count, |
const HC_DPOINT * | test_points, | ||
double | tolerance, | ||
int | point_count, | ||
const HC_DPOINT * | points, | ||
int | face_list_length, | ||
const int * | face_list, | ||
int * | results | ||
) |
Similar to Compute_Points_On_Shell, but operates on double-precision data.
- Parameters
-
test_point_count - Number of points in the point cloud. test_points - Vector of x-y-z triplets defining the points to be tested. tolerance - Distance from shell, in object space, inside which a point will be considered to be on the shell. point_count - Number of points in the shell that may enclose the points defined in test_points points - Vector of x-y-z triplets for the coordinates of the vertices to be used to build the shell. (A simple N x 3 array may also be used). Passed by reference always. face_list_length - Size of the array of integers which define the faces in face_list. face_list - Encoded description of how to connect the points to build the faces of the shell (see Insert_Shell() ). results - Array of size test_point_count that specifies whether the point contained at that index within test_points is within the given tolerance of the face of the shell. Passed by reference. Returned to user.
- Returns
- count - The number of points, within the given tolerance, that were on the surface of the shell.