v1.0
Adds a custom parameter to a custom parameter set.
SIAddCustomParameter( [InputObj], [ScriptName], [VarType], DefaultValue, [MinValue], [MaxValue], [Classification], [Capabilities], [SuggMin], [SuggMax], [ParamName], [Description] ); |
| Parameter | Type | Description |
|---|---|---|
| InputObj | String | List of custom parameter
sets
Default Value: Current selection |
| ScriptName | String | Script name of the custom parameter to be added. This is
normally a short name, like "rotx". A script name cannot have
spaces in it.
Default Value: "ParamName" |
| VarType | siVariantType | Type of the parameter
Default Value: siDouble |
| DefaultValue | Variant | Default parameter value |
| MinValue | Double | minimum value of the parameter
Default Value: 0.0 |
| MaxValue | Double | maximum value of the parameter
Default Value: 1.0 |
| Classification | siParamClassification | Determines the classification of the parameter (gives Softimage
some hint about the purpose of the Parameter--see the siParamClassification
enum for more details)
Default Value: siClassifUnknown |
| Capabilities | siCapabilities | Determines the capabilities of the parameter (see the siCapabilities enum for more
details)
Default Value: 5 (siAnimatable + siPersistable) |
| SuggMin | Double | Suggested minimum value of the parameter (for UI controls)
Default Value: MinValue |
| SuggMax | Double | Suggested maximum value of the parameter (for UI controls)
Default Value: MaxValue |
| ParamName | String | A name for the parameter that can be more descriptive than the script name. For example "Rotation X" instead of "rotx". |
| Description | String | Description of the parameter |
'Example showing you a custom pset can be used, in conjunction with the
'InspectObj command to collect information from a user
dim oCustomProperty
dim nbJoints, useCns
'Create a temporary custom property (it is not part of the scene)
Set oPreset = CreatePreset( "CustomProperty", "Properties" )
Set oCustomProperty = CreateObjectFromPreset(oPreset, "Chain_From_Curve" )
'Add parameters to the custom property
SIAddCustomParameter oCustomProperty , _
"nbJoints", siInt2, 10, 1, 1000, 8, 16, 1, 100, "Bones", "Number of Bones"
SIAddCustomParameter oCustomProperty , _
"useCns", siBool, FALSE, , , 8, 16, , , "Constrain", "Constrain Chain to Curve"
' Launch the ppg in modal mode, wait for Ok or Cancel to be pressed
On Error Resume Next
InspectObj oCustomProperty ,,,4
' If the user Clicked Ok, get the values entered in the ppg
if Err.Number = 0 then
'Get the dialog values
nbJoints = GetValue( oCustomProperty & ".nbJoints" )
useCns = GetValue( oCustomProperty & ".useCns" )
'At this point you could launch a custom command
'using nbJoints and useCns as
else
' Put your cancel code here
end if
|
'Example demonstrating how the arguments to SIAddCustomParameter
'are exposed in the Object Model
dim oCustomProperties, oCustomProperty, oParam
SIAddProp "Custom_parameter_list", ActiveSceneRoot , , "DemoProp", oCustomProperties
'We only created a single custom property because we only
'passed a single object (ActiveSceneRoot) to SIAddProp
set oCustomProperty = oCustomProperties.Item(0)
SIAddCustomParameter oCustomProperty , _
"nbJoints", siInt4, 10, 1, 1000, 8, 16, 1, 100, "Bones"
set oParam = oCustomProperty.Parameters( "nbJoints" )
logmessage "Parameter Name: " & oParam.Name
logmessage "Parameter Script Name: " & oParam.ScriptName
logmessage "Parameter ValueType: " & oParam.ValueType
logmessage "Parameter Default: " & oParam.Default
logmessage "Parameter Min/Max: " & oParam.Min & "/" & oParam.Max
logmessage "Parameter UI Min/Max: " & oParam.SuggestedMin & "/" & oParam.SuggestedMax
'Output of running this script:
'INFO : "Parameter Name: Bones"
'INFO : "Parameter Script Name: nbJoints"
'INFO : "Parameter ValueType: 3"
'INFO : "Parameter Default: 10"
'INFO : "Parameter Min/Max: 1/1000"
'INFO : "Parameter UI Min/Max: 1/100"
|