Split By Field:
The GeomPackSplitByField node is designed to facilitate the segmentation of 3D geometries, such as point clouds or meshes, by utilizing discrete vertex attribute fields. This node is particularly useful for tasks that require the separation of different clusters or segments within a geometry, based on integer-valued attributes like labels or primitive types. By splitting the geometry into distinct groups according to the specified field, this node aids in debugging and analyzing segmentation results, allowing you to isolate and examine each cluster individually. The node ensures that the field used for splitting is discrete and contains a manageable number of unique values, making it an efficient tool for handling complex geometrical data.
Split By Field Input Parameters:
geometry
The geometry parameter accepts either a point cloud or a mesh that contains vertex attributes. This input is crucial as it provides the data structure that will be split based on the specified field. The geometry must have vertex attributes defined, as these attributes are used to determine how the geometry is divided. The parameter does not have a default value, as it requires a valid geometry object to function.
field_name
The field_name parameter specifies the name of the discrete field by which the geometry will be split. This field should be an integer-valued vertex attribute, such as a label or a cluster identifier. The default value for this parameter is "label", but it can be set to any valid field name present in the geometry's vertex attributes. The field must be discrete, meaning it should consist of integer values, and it should not exceed 100 unique values to ensure efficient processing.
Split By Field Output Parameters:
geometries
The geometries output provides a list of separate geometrical entities, each corresponding to a unique value in the specified field. This output allows you to access and manipulate individual segments of the original geometry, facilitating detailed analysis and processing of each cluster.
summary
The summary output is a string that provides a concise overview of the splitting process, including the number of groups created and the unique values found in the specified field. This summary helps you quickly understand the results of the operation and verify that the geometry has been split as expected.
Split By Field Usage Tips:
- Ensure that the
field_nameyou choose is an integer-valued attribute present in the geometry's vertex attributes to avoid errors and ensure proper segmentation. - Use this node to debug and analyze segmentation results by isolating and examining each cluster separately, which can be particularly useful in complex geometrical data analysis.
Split By Field Common Errors and Solutions:
ValueError: Geometry has no vertex_attributes
- Explanation: This error occurs when the input geometry does not have any vertex attributes defined, which are necessary for the splitting process.
- Solution: Ensure that the input geometry includes vertex attributes and that they are correctly defined before using this node.
ValueError: Field '<field_name>' not found. Available: <available_fields>
- Explanation: The specified field name does not exist in the geometry's vertex attributes.
- Solution: Verify the field name and ensure it matches one of the available vertex attributes listed in the error message.
ValueError: Field '<field_name>' is not discrete (dtype: <dtype>). Must be integer.
- Explanation: The field specified is not of an integer type, which is required for discrete splitting.
- Solution: Choose a field that is integer-valued, or convert the field to an integer type if possible.
ValueError: Too many unique values (<number_of_values>). Maximum allowed: 100
- Explanation: The field contains more than 100 unique values, exceeding the node's limit for efficient processing.
- Solution: Reduce the number of unique values in the field, possibly by merging similar values or selecting a different field with fewer unique values.
