Enableable Parameters¶
An enableable parameter group is a parameter that has a default value, but can also take on a locally set value. The local value is used when the enableable parameter group is enabled.
In order to manipulate this type of parameter through a script it’s important to understand that the enableable parameter group is a group parameter with four children:
- value
String, string array, number, or number array - The value to be assigned to the corresponding attribute when the parameter group is enabled. Updated with value entered through the UI.
- enable
Number - Defines whether the parameter is enabled or not. When enabled, the parameter takes on value, and when disabled in takes on default.
- default
String, string array, number, or number array - The default parameter value.
- __hints
String - Metadata telling the UI how to display this parameter group.
To modify an enableable parameter group, access the individual child parameters. For example, create a RenderSettings node, then edit the parameter for camera name to set a local value, and enable it:
# Get the root node
rootNode = NodegraphAPI.GetRootNode()
# Create a RenderSettings node
renderSettingsNode = NodegraphAPI.CreateNode('RenderSettings', rootNode)
# Get the value and enable parameters from the cameraName group parameter
cameraNameValue = renderSettingsNode.getParameter('args.renderSettings.cameraName.value')
cameraNameEnable = renderSettingsNode.getParameter('args.renderSettings.cameraName.enable')
# Change the name
cameraNameValue.setValue("/root/world/cam/myCamera", time = 0)
# Enable the parameter
cameraNameEnable.setValue(float(True), time = 0)