Implements the logic of 'freezing' the numeric properties to a controller property.
Inherits :
DAZ Script | |
---|---|
AttenuateMode | { SubComponents, Controller } |
DAZ Script |
---|
DzERCFreeze () |
DAZ Script | |
---|---|
Boolean | addPropertiesToFreeze ( DzNode node ) |
Boolean | doFreeze () |
Boolean | getApplyController () |
AttenuateMode | getAttenuateMode () |
DzNumericProperty | getAttenuateProperty () |
DzNode | getControllerNode () |
DzNumericProperty | getControllerProperty () |
Boolean | getKeyed () |
Array | getPropertiesToFreeze () |
Boolean | getRestoreFigure () |
Boolean | getRestoreRigging () |
Boolean | getRestoreSelectedItems () |
void | setApplyController ( Boolean yesNo ) |
void | setAttenuateMode ( AttenuateMode mode ) |
void | setAttenuateProperty ( DzNumericProperty prop ) |
void | setControllerNode ( DzNode node ) |
void | setControllerProperty ( DzNumericProperty prop ) |
void | setKeyed ( Boolean yesNo ) |
void | setPropertiesToFreeze ( Array propList ) |
void | setRestoreFigure ( Boolean yesNo ) |
void | setRestoreRigging ( Boolean yesNo ) |
void | setRestoreSelectedItems ( Boolean yesNo ) |
void | ERCChanged () |
This utility class implements the logic of 'freezing' (linking) the current state of numeric properties on a node (or multiple nodes) to a controller property, such that adjusting the controller property adjusts the linked properties in kind. The DzERCLink between the 'frozen' properties and the controller are created such that when the controller is set to the value it is at when the 'freeze' operation is performed, the 'frozen' properties will be at the respective values they were at in that moment of time.
The controller node (the DzNode that the controlling property is located on) and the controller property (the DzNumericProperty that ultimately does the controlling) must be set before calling doFreeze(); see setControllerNode() and setControllerProperty().
An additional property can be set and used to attenuate the effect of the controller property on the 'frozen' properties, or have its value attenuated as the controller property is applied, depending on the AttenuateMode set.
The addPropertiesToFreeze() method is used to inspect the current state of the numeric properties on a a given node that are not currently set to their respective raw values and add them to the list of those properties to be linked to the controller property. This list of properties can be inspected and/or modified using the getPropertiesToFreeze() and setPropertiesToFreeze() methods.
See Also:
Attention:
Since:
TODO: Add description.
Boolean : addPropertiesToFreeze( DzNode node )
Adds all numeric properties on node
whose values differ from their raw values to the list of properties to 'freeze' (link) to the controller property.
Parameter(s):
Return Value:
true
if node
, getControllerNode(), and getControllerProperty() are defined and it succeeds, otherwise false
.See Also:
Performs the ERC freeze based on the current settings.
Return Value:
true
if the freeze operation was successful, otherwise false
.Boolean : getApplyController()
Return Value:
true
if the controller property will be set to the value that causes the 'frozen' properties to be at their current value once the 'freeze' operation is complete, otherwise false
.AttenuateMode : getAttenuateMode()
Return Value:
DzNumericProperty : getAttenuateProperty()
Return Value:
Return Value:
Attention:
true
.DzNumericProperty : getControllerProperty()
Return Value:
Return Value:
Array : getPropertiesToFreeze()
Return Value:
Return Value:
true
if the Restore Figure action will be executed once the 'freeze' operation is complete, otherwise false
.Return Value:
true
if the Restore Figure Rigging action will be executed once the 'freeze' operation is complete, otherwise false
.Boolean : getRestoreSelectedItems()
Return Value:
true
if the Restore Selected Item(s) action will be executed once the 'freeze' operation is complete, otherwise false
.Since:
void : setApplyController( Boolean yesNo )
Sets whether or not the controller property will be set to the value that causes the 'frozen' properties to be at their current value once the 'freeze' operation is complete.
Parameter(s):
true
, the controller property will be applied.void : setAttenuateMode( AttenuateMode mode )
Sets the mode that determines how the attenuate property will be used.
Parameter(s):
void : setAttenuateProperty( DzNumericProperty prop )
Sets the property that will be used to attenuate either the controller property, or the affect of the controller property on the properties returned by getPropertiesToFreeze(), depending on the AttenuateMode set.
Parameter(s):
void : setControllerNode( DzNode node )
Sets the node that the controller property is on.
Parameter(s):
Attention:
true
.void : setControllerProperty( DzNumericProperty prop )
Sets the property that the properties returned by getPropertiesToFreeze() will be linked to when doFreeze() is called.
Parameter(s):
See Also:
void : setKeyed( Boolean yesNo )
Sets whether or not the DzERCLink created between the controller property and the 'frozen' properties will be a DzERCLink::ERCKeyed (using the keys in timeline) or a DzERCLink::ERCDeltaAdd.
Parameter(s):
void : setPropertiesToFreeze( Array propList )
Sets the list of properties that will be linked to the property returned by getControllerProperty() when doFreeze() is called.
Parameter(s):
See Also:
void : setRestoreFigure( Boolean yesNo )
Sets whether or not the Restore Figure action will be executed once the 'freeze' operation is complete.
Parameter(s):
true
, the Restore Figure action will be executed.void : setRestoreRigging( Boolean yesNo )
Sets whether or not the Restore Figure Rigging action will be executed once the 'freeze' operation is complete.
Parameter(s):
true
, the Restore Figure Rigging action will be executed.void : setRestoreSelectedItems( Boolean yesNo )
Sets whether or not the Restore Selected Item(s) action will be executed once the 'freeze' operation is complete.
Parameter(s):
true
, the Restore Selected Item(s) action will be executed.Since: