Returns a parameter's DataSource (the object that is
driving the parameter's value, such as a Shader or an ActionSource). If no data source is
connected then Nothing is returned. If a parameter has both
ActionSource and a DataSource, it's the DataSource that is
returned. This happens when an animated parameter is connected to a
source.
Note: You can Get any type of data source (ActionSource, Constraint, FCurve,
ImageClip, Operator, Shader,
StaticSource), but you can only Set
the shader type of data source. Shader
parameters support setting the source to another shader. Note:
Shader Compounds and Multi-Output Shaders have multiple output
ports that require the Source to be identified by an Output
Parameter. In such case, GetSource
will return a Parameter and you can access the connected shader by
calling Parameter.GetParent.
Tip: In VBScript it is possible to remove a DataSource by assigning "Nothing" to
the Source property. In JScript and Python the same effect can be
achieved by calling Parameter.Disconnect.
In the case of a ProxyParameter,
the source of the master parameter is accessible from this
property. For example, if a parameter has an fcurve on it, and
there is a proxy parameter to that parameter, then the Source
property of both parameter objects will return the same fcurve
object.
' ' This example illustrates how to add an FCurve to a parameter and access it afterwards ' using the Parameter.Source property. ' NewScene , false dim values set oCube = Application.ActiveSceneRoot.AddGeometry( "Cube","MeshSurface" ) arrValues = Array( 0.00, 5.00, 1.00, 6.00, 2.00, 7.00, 3.00, 8.00, 4.00, 9.00, 5.00, 10.00 ) oCube.posx.AddFCurve2 arrValues set oSource = oCube.posx.Source Application.LogMessage "The source is : " & TypeName( oSource ) ' Remove the animation set oCube.posx.Source = Nothing set oSource = oCube.posx.Source Application.LogMessage "The source is : " & TypeName( oSource ) ' Expected result: 'INFO : The source is : FCurve 'INFO : The source is : Nothing |
/* See Shader.GetShaderParameterTargets for an example demonstrating how to traverse a shader tree from left to right using the Source property and right to left using the GetShaderParameterTargets method. */ |