Name
select_points_object_model_3dT_select_points_object_model_3dSelectPointsObjectModel3dSelectPointsObjectModel3d — Apply a threshold to an attribute of 3D object models.
void SelectPointsObjectModel3d(const HTuple& ObjectModel3D, const HTuple& Attrib, const HTuple& MinValue, const HTuple& MaxValue, HTuple* ObjectModel3DThresholded)
static HObjectModel3DArray HObjectModel3D::SelectPointsObjectModel3d(const HObjectModel3DArray& ObjectModel3D, const HTuple& Attrib, const HTuple& MinValue, const HTuple& MaxValue)
HObjectModel3D HObjectModel3D::SelectPointsObjectModel3d(const HString& Attrib, double MinValue, double MaxValue) const
HObjectModel3D HObjectModel3D::SelectPointsObjectModel3d(const char* Attrib, double MinValue, double MaxValue) const
select_points_object_model_3dselect_points_object_model_3dSelectPointsObjectModel3dSelectPointsObjectModel3dSelectPointsObjectModel3d selects points of 3D object models
based on the specified attributes. One or more attributes
can be specified by their names in AttribAttribAttribAttribattrib.
The minimum and maximum values are set in MinValueMinValueMinValueMinValueminValue and
MaxValueMaxValueMaxValueMaxValuemaxValue.
The following attributes are available:
- 'point_coord_x'"point_coord_x""point_coord_x""point_coord_x""point_coord_x":
The x-coordinates of the set of 3D points.
- 'point_coord_y'"point_coord_y""point_coord_y""point_coord_y""point_coord_y":
The y-coordinates of the set of 3D points.
- 'point_coord_z'"point_coord_z""point_coord_z""point_coord_z""point_coord_z":
The z-coordinates of the set of 3D points.
- 'point_normal_x'"point_normal_x""point_normal_x""point_normal_x""point_normal_x":
The x-components of the 3D point normals of the set of 3D points.
- 'point_normal_y'"point_normal_y""point_normal_y""point_normal_y""point_normal_y":
The y-components of the 3D point normals of the set of 3D points.
- 'point_normal_z'"point_normal_z""point_normal_z""point_normal_z""point_normal_z":
The z-components of the 3D point normals of the set of 3D points.
- 'mapping_row'"mapping_row""mapping_row""mapping_row""mapping_row":
The row-components of the 2D mapping of the set of 3D points.
- 'mapping_col'"mapping_col""mapping_col""mapping_col""mapping_col":
The column-components of the 2D mapping of the set of 3D points.
- 'neighbor_distance'"neighbor_distance""neighbor_distance""neighbor_distance""neighbor_distance":
- 'neighbor_distance N'"neighbor_distance N""neighbor_distance N""neighbor_distance N""neighbor_distance N":
The distance of the N-th nearest point.
N must be a positive integer and is by default 25.
For every point, all other points are sorted according to their distance
and the distance of the N-th point is used.
- 'num_neighbors X'"num_neighbors X""num_neighbors X""num_neighbors X""num_neighbors X":
The number of neighbors within a distance of at most X.
It can be used to remove sparsely populated parts of the 3D object model,
such as outliers or points that are created by smoothing between 3D
surfaces.
- 'num_neighbors_fast X'"num_neighbors_fast X""num_neighbors_fast X""num_neighbors_fast X""num_neighbors_fast X":
The approximate number of neighbors within a distance of at most X.
The distances are approximated using voxels, leading to a
faster processing compared to 'num_neighbors'"num_neighbors""num_neighbors""num_neighbors""num_neighbors".
- Extended attribute:
Enter the name of an extended attribute
of the type 'vertices'"vertices""vertices""vertices""vertices" and
the selection will be applied based on the values of the extended
attribute.
The selection is applied based on the listed attributes.
The resulting 3D object model will contain all points
that are inside the interval specified by
MinValueMinValueMinValueMinValueminValue and MaxValueMaxValueMaxValueMaxValuemaxValue. If AttribAttribAttribAttribattrib contains more
than one entry, the second threshold operation is applied to
the result of the previous operation, etc. The number of minimum and
maximum values must be equal to the number of attributes given
in AttribAttribAttribAttribattrib. All attributes that are connected with the points
(e.g., polygons or triangles) are adapted in such a way that there is
no reference to the removed points left.
- Multithreading type: reentrant (runs in parallel with non-exclusive operators).
- Multithreading scope: global (may be called from any thread).
- Automatically parallelized on internal data level.
Handle of the 3D object models.
Attributes the threshold is applied to.
Default value:
'point_coord_z'
"point_coord_z"
"point_coord_z"
"point_coord_z"
"point_coord_z"
List of values: 'mapping_col'"mapping_col""mapping_col""mapping_col""mapping_col", 'mapping_row'"mapping_row""mapping_row""mapping_row""mapping_row", 'neighbor_distance'"neighbor_distance""neighbor_distance""neighbor_distance""neighbor_distance", 'num_neighbors'"num_neighbors""num_neighbors""num_neighbors""num_neighbors", 'num_neighbors_fast'"num_neighbors_fast""num_neighbors_fast""num_neighbors_fast""num_neighbors_fast", 'point_coord_x'"point_coord_x""point_coord_x""point_coord_x""point_coord_x", 'point_coord_y'"point_coord_y""point_coord_y""point_coord_y""point_coord_y", 'point_coord_z'"point_coord_z""point_coord_z""point_coord_z""point_coord_z", 'point_normal_x'"point_normal_x""point_normal_x""point_normal_x""point_normal_x", 'point_normal_y'"point_normal_y""point_normal_y""point_normal_y""point_normal_y", 'point_normal_z'"point_normal_z""point_normal_z""point_normal_z""point_normal_z"
Handle of the reduced 3D object models.
gen_object_model_3d_from_points (rand(100), rand(100),\
rand(100), ObjectModel3D)
select_points_object_model_3d (ObjectModel3D, 'point_coord_z',\
0.5, 1, ObjectModel3DThresholded)
get_object_model_3d_params (ObjectModel3DThresholded, 'num_points',\
NumPoints)
select_points_object_model_3dselect_points_object_model_3dSelectPointsObjectModel3dSelectPointsObjectModel3dSelectPointsObjectModel3d returns 2 (H_MSG_TRUE) if all parameters
are correct. If necessary, an exception is raised.
read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3d,
xyz_to_object_model_3dxyz_to_object_model_3dXyzToObjectModel3dXyzToObjectModel3dXyzToObjectModel3d
connection_object_model_3dconnection_object_model_3dConnectionObjectModel3dConnectionObjectModel3dConnectionObjectModel3d,
project_object_model_3dproject_object_model_3dProjectObjectModel3dProjectObjectModel3dProjectObjectModel3d,
object_model_3d_to_xyzobject_model_3d_to_xyzObjectModel3dToXyzObjectModel3dToXyzObjectModel3dToXyz
connection_object_model_3dconnection_object_model_3dConnectionObjectModel3dConnectionObjectModel3dConnectionObjectModel3d,
reduce_object_model_3d_by_viewreduce_object_model_3d_by_viewReduceObjectModel3dByViewReduceObjectModel3dByViewReduceObjectModel3dByView
3D Metrology