v9.0 (2011)
Sets the values of a cluster property.
The offsets array designates the cluster elements offsets to modify. Specifying an empty value or
an empty array will modify all cluster elements offsets with the specified values.
The values array designated the values to set for the specified cluster element offsets. The size of
values array must match one of the following: the size of an element size (e.g. RGBA = 4 values) or the size
of the number of offsets specified multiplicated by the size of an element size (e.g. 2 offsets * RGB = 6 values).
In the first case, the specified values will be set to all the specified cluster element offsets, while in the
case, the specified values will be applied to their corresponding specified cluster element offset.
SetClusterPropertyValues( ClusterProp, Offsets, Values, [Mode], [ClampValues] ); |
Parameter | Type | Description |
---|---|---|
ClusterProp | ClusterProperty | Cluster property to modify |
Offsets | Array | Array of cluster element offsets to modify |
Values | Array | Array of values to set for the specified cluster element offsets |
Mode | siSetValueMode |
Specifies the mathematical mode when setting a new value to a current value. Default Value: siSetValueModeAbsolute |
ClampValues | Boolean |
True to clamp values Currently, only meaningful when setting values on WeightMap properties, which have a minimum and a maximum parameters. Default Value: false |
' ' This example shows how to set values on cluster elements of a WeightMap ' ' Create a WeightMap on a sphere NewScene , False CreatePrim "Sphere", "MeshSurface" dim oWMapColl, oWMap, oWMapArray set oWMapColl = CreateWeightMap set oWMap = oWMapColl.Item(0) SetClusterPropertyValues oWMap, Array(0, 1), Array(0.25, 0.5) oWMapArray = oWMap.Elements.Array LogMessage( "Setting different values on the first and second cluster elements" ) LogMessage( "WeightMap value for cluster element 0 : " & oWMapArray( 0 , 0 ) ) LogMessage( "WeightMap value for cluster element 1 : " & oWMapArray( 0 , 1 ) ) SetClusterPropertyValues oWMap, Array(10, 20, 30), 0.75 oWMapArray = oWMap.Elements.Array LogMessage( "Setting the same value on many cluster elements" ) LogMessage( "WeightMap value for cluster element 10 : " & oWMapArray( 0 , 10 ) ) LogMessage( "WeightMap value for cluster element 20 : " & oWMapArray( 0 , 20 ) ) LogMessage( "WeightMap value for cluster element 30 : " & oWMapArray( 0 , 30 ) ) SetClusterPropertyValues oWMap, , Array(0.25), siSetValueModeAdditive oWMapArray = oWMap.Elements.Array LogMessage( "Adds the same value on all cluster elements" ) LogMessage( "WeightMap value for cluster element 0 : " & oWMapArray( 0 , 0 ) ) LogMessage( "WeightMap value for cluster element 1 : " & oWMapArray( 0 , 1 ) ) LogMessage( "WeightMap value for cluster element 10 : " & oWMapArray( 0 , 10 ) ) LogMessage( "WeightMap value for cluster element 20 : " & oWMapArray( 0 , 20 ) ) LogMessage( "WeightMap value for cluster element 30 : " & oWMapArray( 0 , 30 ) ) SetClusterPropertyValues oWMap, 10, -2, siSetValueModeAbsolute, True SetClusterPropertyValues oWMap, 20, -2, siSetValueModeAbsolute, False oWMapArray = oWMap.Elements.Array LogMessage( "Playing with the ClampValues argument" ) LogMessage( "WeightMap value for cluster element 0 : " & oWMapArray( 0 , 0 ) ) LogMessage( "WeightMap value for cluster element 1 : " & oWMapArray( 0 , 1 ) ) LogMessage( "WeightMap value for cluster element 10 : " & oWMapArray( 0 , 10 ) ) LogMessage( "WeightMap value for cluster element 20 : " & oWMapArray( 0 , 20 ) ) LogMessage( "WeightMap value for cluster element 30 : " & oWMapArray( 0 , 30 ) ) ' Output: ' INFO : Setting different values on the first and second cluster elements ' INFO : WeightMap value for cluster element 0 : 0.25 ' INFO : WeightMap value for cluster element 1 : 0.5 ' INFO : Setting the same value on many cluster elements ' INFO : WeightMap value for cluster element 10 : 0.75 ' INFO : WeightMap value for cluster element 20 : 0.75 ' INFO : WeightMap value for cluster element 30 : 0.75 ' INFO : Adds the same value on all cluster elements ' INFO : WeightMap value for cluster element 0 : 0.5 ' INFO : WeightMap value for cluster element 1 : 0.75 ' INFO : WeightMap value for cluster element 10 : 1 ' INFO : WeightMap value for cluster element 20 : 1 ' INFO : WeightMap value for cluster element 30 : 1 ' INFO : Playing with the ClampValues argument ' INFO : WeightMap value for cluster element 0 : 0.5 ' INFO : WeightMap value for cluster element 1 : 0.75 ' INFO : WeightMap value for cluster element 10 : 0 ' INFO : WeightMap value for cluster element 20 : -2 ' INFO : WeightMap value for cluster element 30 : 1 |
# # This example shows how to set values on cluster elements of a CAV # from win32com.client import constants as c # Create a CAV on a sphere app = Application app.NewScene("", False) app.CreatePrim("Sphere", "MeshSurface", "", "") oCAVColl = app.CreateVertexColorSupport("", "", "", "") oCAV = app.Dictionary.GetObject("sphere.polymsh.cls.UV_Cluster_AUTO.Vertex_Color") app.ChangeVertexColorDatatype(oCAV, 1) app.SetClusterPropertyValues(oCAV, [0, 1], [0.25, 0.5, 0.75, 1, 1, 0.75, 0.5, 0.25]) oCAVArray = oCAV.Elements.Array app.LogMessage( "Setting different values on the first and second cluster elements" ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 0, Red : " + str(oCAVArray[ 0 ][ 0 ]) ) app.LogMessage( "CAV value for cluster element 0, Green : " + str(oCAVArray[ 1 ][ 0 ]) ) app.LogMessage( "CAV value for cluster element 0, Blue : " + str(oCAVArray[ 2 ][ 0 ]) ) app.LogMessage( "CAV value for cluster element 0, Alpha : " + str(oCAVArray[ 3 ][ 0 ]) ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 1, Red : " + str(oCAVArray[ 0 ][ 1 ]) ) app.LogMessage( "CAV value for cluster element 1, Green : " + str(oCAVArray[ 1 ][ 1 ]) ) app.LogMessage( "CAV value for cluster element 1, Blue : " + str(oCAVArray[ 2 ][ 1 ]) ) app.LogMessage( "CAV value for cluster element 1, Alpha : " + str(oCAVArray[ 3 ][ 1 ]) ) app.SetClusterPropertyValues(oCAV, [10, 20, 30], [0.5, 1, 0.25, 0.75]) oCAVArray = oCAV.Elements.Array app.LogMessage( "Setting the same value on many cluster elements" ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 10, Red : " + str(oCAVArray[ 0 ][ 10 ]) ) app.LogMessage( "CAV value for cluster element 10, Green : " + str(oCAVArray[ 1 ][ 10 ]) ) app.LogMessage( "CAV value for cluster element 10, Blue : " + str(oCAVArray[ 2 ][ 10 ]) ) app.LogMessage( "CAV value for cluster element 10, Alpha : " + str(oCAVArray[ 3 ][ 10 ]) ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 20, Red : " + str(oCAVArray[ 0 ][ 20 ]) ) app.LogMessage( "CAV value for cluster element 20, Green : " + str(oCAVArray[ 1 ][ 20 ]) ) app.LogMessage( "CAV value for cluster element 20, Blue : " + str(oCAVArray[ 2 ][ 20 ]) ) app.LogMessage( "CAV value for cluster element 20, Alpha : " + str(oCAVArray[ 3 ][ 20 ]) ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 30, Red : " + str(oCAVArray[ 0 ][ 30 ]) ) app.LogMessage( "CAV value for cluster element 30, Green : " + str(oCAVArray[ 1 ][ 30 ]) ) app.LogMessage( "CAV value for cluster element 30, Blue : " + str(oCAVArray[ 2 ][ 30 ]) ) app.LogMessage( "CAV value for cluster element 30, Alpha : " + str(oCAVArray[ 3 ][ 30 ]) ) app.SetClusterPropertyValues(oCAV, None, [0.75, 0.25, 1, 0.5]) oCAVArray = oCAV.Elements.Array app.LogMessage( "Setting the same value on all cluster elements" ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 0, Red : " + str(oCAVArray[ 0 ][ 0 ]) ) app.LogMessage( "CAV value for cluster element 0, Green : " + str(oCAVArray[ 1 ][ 0 ]) ) app.LogMessage( "CAV value for cluster element 0, Blue : " + str(oCAVArray[ 2 ][ 0 ]) ) app.LogMessage( "CAV value for cluster element 0, Alpha : " + str(oCAVArray[ 3 ][ 0 ]) ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 1, Red : " + str(oCAVArray[ 0 ][ 1 ]) ) app.LogMessage( "CAV value for cluster element 1, Green : " + str(oCAVArray[ 1 ][ 1 ]) ) app.LogMessage( "CAV value for cluster element 1, Blue : " + str(oCAVArray[ 2 ][ 1 ]) ) app.LogMessage( "CAV value for cluster element 1, Alpha : " + str(oCAVArray[ 3 ][ 1 ]) ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 10, Red : " + str(oCAVArray[ 0 ][ 10 ]) ) app.LogMessage( "CAV value for cluster element 10, Green : " + str(oCAVArray[ 1 ][ 10 ]) ) app.LogMessage( "CAV value for cluster element 10, Blue : " + str(oCAVArray[ 2 ][ 10 ]) ) app.LogMessage( "CAV value for cluster element 10, Alpha : " + str(oCAVArray[ 3 ][ 10 ]) ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 20, Red : " + str(oCAVArray[ 0 ][ 20 ]) ) app.LogMessage( "CAV value for cluster element 20, Green : " + str(oCAVArray[ 1 ][ 20 ]) ) app.LogMessage( "CAV value for cluster element 20, Blue : " + str(oCAVArray[ 2 ][ 20 ]) ) app.LogMessage( "CAV value for cluster element 20, Alpha : " + str(oCAVArray[ 3 ][ 20 ]) ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 30, Red : " + str(oCAVArray[ 0 ][ 30 ]) ) app.LogMessage( "CAV value for cluster element 30, Green : " + str(oCAVArray[ 1 ][ 30 ]) ) app.LogMessage( "CAV value for cluster element 30, Blue : " + str(oCAVArray[ 2 ][ 30 ]) ) app.LogMessage( "CAV value for cluster element 30, Alpha : " + str(oCAVArray[ 3 ][ 30 ]) ) app.SetClusterPropertyValues(oCAV, [10, 20, 30], [-10, None, None, None], c.siSetValueModeAddPercentage) oCAVArray = oCAV.Elements.Array app.LogMessage( "Removing a 10% of the Red channel on many cluster elements" ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 10, Red : " + str(oCAVArray[ 0 ][ 10 ]) ) app.LogMessage( "CAV value for cluster element 10, Green : " + str(oCAVArray[ 1 ][ 10 ]) ) app.LogMessage( "CAV value for cluster element 10, Blue : " + str(oCAVArray[ 2 ][ 10 ]) ) app.LogMessage( "CAV value for cluster element 10, Alpha : " + str(oCAVArray[ 3 ][ 10 ]) ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 20, Red : " + str(oCAVArray[ 0 ][ 20 ]) ) app.LogMessage( "CAV value for cluster element 20, Green : " + str(oCAVArray[ 1 ][ 20 ]) ) app.LogMessage( "CAV value for cluster element 20, Blue : " + str(oCAVArray[ 2 ][ 20 ]) ) app.LogMessage( "CAV value for cluster element 20, Alpha : " + str(oCAVArray[ 3 ][ 20 ]) ) app.LogMessage( "--------------------------------------" ) app.LogMessage( "CAV value for cluster element 30, Red : " + str(oCAVArray[ 0 ][ 30 ]) ) app.LogMessage( "CAV value for cluster element 30, Green : " + str(oCAVArray[ 1 ][ 30 ]) ) app.LogMessage( "CAV value for cluster element 30, Blue : " + str(oCAVArray[ 2 ][ 30 ]) ) app.LogMessage( "CAV value for cluster element 30, Alpha : " + str(oCAVArray[ 3 ][ 30 ]) ) # Output: # INFO : Setting different values on the first and second cluster elements # INFO : -------------------------------------- # INFO : CAV value for cluster element 0, Red : 0.25 # INFO : CAV value for cluster element 0, Green : 0.5 # INFO : CAV value for cluster element 0, Blue : 0.75 # INFO : CAV value for cluster element 0, Alpha : 1.0 # INFO : -------------------------------------- # INFO : CAV value for cluster element 1, Red : 1.0 # INFO : CAV value for cluster element 1, Green : 0.75 # INFO : CAV value for cluster element 1, Blue : 0.5 # INFO : CAV value for cluster element 1, Alpha : 0.25 # INFO : Setting the same value on many cluster elements # INFO : -------------------------------------- # INFO : CAV value for cluster element 10, Red : 0.5 # INFO : CAV value for cluster element 10, Green : 1.0 # INFO : CAV value for cluster element 10, Blue : 0.25 # INFO : CAV value for cluster element 10, Alpha : 0.75 # INFO : -------------------------------------- # INFO : CAV value for cluster element 20, Red : 0.5 # INFO : CAV value for cluster element 20, Green : 1.0 # INFO : CAV value for cluster element 20, Blue : 0.25 # INFO : CAV value for cluster element 20, Alpha : 0.75 # INFO : -------------------------------------- # INFO : CAV value for cluster element 30, Red : 0.5 # INFO : CAV value for cluster element 30, Green : 1.0 # INFO : CAV value for cluster element 30, Blue : 0.25 # INFO : CAV value for cluster element 30, Alpha : 0.75 # INFO : Setting the same value on all cluster elements # INFO : -------------------------------------- # INFO : CAV value for cluster element 0, Red : 0.75 # INFO : CAV value for cluster element 0, Green : 0.25 # INFO : CAV value for cluster element 0, Blue : 1.0 # INFO : CAV value for cluster element 0, Alpha : 0.5 # INFO : -------------------------------------- # INFO : CAV value for cluster element 1, Red : 0.75 # INFO : CAV value for cluster element 1, Green : 0.25 # INFO : CAV value for cluster element 1, Blue : 1.0 # INFO : CAV value for cluster element 1, Alpha : 0.5 # INFO : -------------------------------------- # INFO : CAV value for cluster element 10, Red : 0.75 # INFO : CAV value for cluster element 10, Green : 0.25 # INFO : CAV value for cluster element 10, Blue : 1.0 # INFO : CAV value for cluster element 10, Alpha : 0.5 # INFO : -------------------------------------- # INFO : CAV value for cluster element 20, Red : 0.75 # INFO : CAV value for cluster element 20, Green : 0.25 # INFO : CAV value for cluster element 20, Blue : 1.0 # INFO : CAV value for cluster element 20, Alpha : 0.5 # INFO : -------------------------------------- # INFO : CAV value for cluster element 30, Red : 0.75 # INFO : CAV value for cluster element 30, Green : 0.25 # INFO : CAV value for cluster element 30, Blue : 1.0 # INFO : CAV value for cluster element 30, Alpha : 0.5 # INFO : Removing a 10% of the Red channel on many cluster elements # INFO : -------------------------------------- # INFO : CAV value for cluster element 10, Red : 0.675 # INFO : CAV value for cluster element 10, Green : 0.25 # INFO : CAV value for cluster element 10, Blue : 1.0 # INFO : CAV value for cluster element 10, Alpha : 0.5 # INFO : -------------------------------------- # INFO : CAV value for cluster element 20, Red : 0.675 # INFO : CAV value for cluster element 20, Green : 0.25 # INFO : CAV value for cluster element 20, Blue : 1.0 # INFO : CAV value for cluster element 20, Alpha : 0.5 # INFO : -------------------------------------- # INFO : CAV value for cluster element 30, Red : 0.675 # INFO : CAV value for cluster element 30, Green : 0.25 # INFO : CAV value for cluster element 30, Blue : 1.0 # INFO : CAV value for cluster element 30, Alpha : 0.5 |