Clash Detect Layer Helper Utils
Overview
File Name: clash_detect_layer_utils.py
This file provides a set of utilities for managing clash detection layers within a USD stage. It includes functionalities for creating, removing, reloading, and manipulating these layers.
ClashDetectLayerHelper Class
- class ClashDetectLayerHelper
Static class with clash detection layer helper methods. This class provides methods for creating, removing, reloading, and managing clash detection layers within a USD stage.
Constants
- CLASH_DETECT_FORMAT
The file format for clash detection layers. Its value is “clashDetection”.
- CLASH_DETECT_LAYER_PREFIX
The prefix for clash detection layer identifiers. Its value is “clashdata:”.
- CLASH_LAYER_IDENTIFIER
The full identifier for clash detection layers. Its value is “{CLASH_DETECT_LAYER_PREFIX}{CLASH_DETECT_FORMAT}”.
Methods
- create_new_clash_detect_layer(stage: Usd.Stage, layer_path_name: str) Optional[Sdf.Layer]
Creates a new clash detection layer.
- Parameters
stage (Usd.Stage) – The USD stage to which the layer is added.
layer_path_name (str) – The path name for the new layer.
- Returns
The created clash detection layer, or None on failure.
- Return type
Optional[Sdf.Layer]
- get_sublayer_position_in_parent(parent_layer_identifier: str, layer_identifier: str) int
Returns the position of a sublayer within its parent layer.
- Parameters
parent_layer_identifier (str) – The identifier of the parent layer.
layer_identifier (str) – The identifier of the sublayer.
- Returns
Position of the sublayer, or -1 if not found.
- Return type
int
- remove_sublayer(layer: Sdf.Layer, position: int) Optional[str]
Removes a sublayer from a specified position.
- Parameters
layer (Sdf.Layer) – The layer from which to remove the sublayer.
position (int) – The position of the sublayer to remove.
- Returns
Identifier of the removed sublayer, or None if removal failed.
- Return type
Optional[str]
- remove_layer(root_layer: Sdf.Layer, layer_identifier: str) bool
Removes a layer identified by layer_identifier from the root layer.
- Parameters
root_layer (Sdf.Layer) – The root layer from which to remove the layer.
layer_identifier (str) – The identifier of the layer to remove.
- Returns
True if the layer was removed, False otherwise.
- Return type
bool
- reload_layer(layer: Sdf.Layer) bool
Reloads the specified layer.
- Parameters
layer (Sdf.Layer) – The layer to reload.
- Returns
True if the layer was successfully reloaded, False otherwise.
- Return type
bool
- find_clash_detect_layer(layer_path_name: str) Optional[Sdf.Layer]
Returns the clash detection layer identified by path.
- Parameters
layer_path_name (str) – The path name of the clash detection layer.
- Returns
The found clash detection layer, or None if not found.
- Return type
Optional[Sdf.Layer]
- get_custom_layer_data(layer) Optional[Dict[Any, Any]]
Returns custom data of a layer as a dictionary.
- Parameters
layer (Sdf.Layer) – The layer from which to get custom data.
- Returns
The custom data of the layer, or None if not found.
- Return type
Optional[Dict[Any, Any]]
- set_custom_layer_data(layer: Sdf.Layer, d: Optional[Dict[Any, Any]]) None
Sets custom data for a layer using a dictionary.
- Parameters
layer (Sdf.Layer) – The layer for which to set custom data.
d (Optional[Dict[Any, Any]]) – The custom data to set.
- kit_remove_layer(stage: Usd.Stage, layer_identifier: str) bool
Removes a layer using a Kit command, ensuring the Layer Widget is aware.
- Parameters
stage (Usd.Stage) – The USD stage from which to remove the layer.
layer_identifier (str) – The identifier of the layer to remove.
- Returns
True if the layer was successfully removed, False otherwise.
- Return type
bool