Add2DShapePointArray

Introduced

v3.0

Categories

rendering

Description

Adds an array of points to a 2D shape (mask shape).

The difference between this command and the Insert2DShapePoint command is that you use Add2DShapePointArray to define the original set of points while creating the shape, but Insert2DShapePoint adds points to an existing shape after it has been created.

Note: You can add points using either the Add2DShapePoint or Add2DShapePointArray commands.

Scripting Syntax

Add2DShapePointArray( [Shape], points );

Parameters

Parameter Type Description
Shape String Parameter path name for the shape where you are defining the point(s).

Default Value: Current selection.

Note: If the current selection is not a valid shape, an error occurs.

points Array of Doubles Specifies the position of the new point as a 1-dimensional array of x,y values.

Examples

VBScript Example

'
' This example demonstrates how to set a garbage matte mask for a 
' ColorCorrect operator in the FxTree.
'
' Create a new FxTree 
set oTree = CreateFxTree()
' Get the projects path for the current system
sPath = InstallationPath( siProjectPath )
set oClip = CreateImageClip( sPath & "\Pictures\noIcon.pic", "NewClip" )
' Use the clip to create a new image clip operator
set oOperator = AddImageClipFxOp( oTree, oClip )
' Add a Color Correct operator to the same tree
set oCCOp = AddFxOp( oTree, "Color Correct" )
' Connect the two operators
ConnectFxOp oOperator, oCCOp, "1" 
' Since the ConnectFxOp command does not return the new operator,
' you need to get it from the OperatorCollection on the FxTree object
for each oMember in oTree.FxOperators
        if oMember.Name = "ColorCorrect" then
                set oGBMatteOp = oMember
                exit for
        end if
next
' Adjust the HSV Offset and Gain levels so you can see the 
' results of the color correction
SetValue oGBMatteOp.FullName & ".MasterHueShift," _
                & oGBMatteOp.FullName & ".MasterOffset," _
                & oGBMatteOp.FullName & ".MasterGain", _
                Array(0, 0.820731514055631, 0.852844886888196)
' Add the 2D shape (mask shape) to the GarbageMatte and reshape it so you can see
' the shape when you open the Fx Viewer with the ColorCorrect operator selected
set oRotospline = Add2DShape( oGBMatteOp & ".GarbageShapes", "Bezier" )
Move2DShapePin oRotospline, 124.333333333333, 145.166666666667
aPointPositions = Array(56, 207, 196, 170, 179, 85, 132, 142, 108, 105, 75, 162)
Add2DShapePointArray oRotospline, aPointPositions
' Print out the RGB values
getRGBValues oRotospline
' Set new values and print out the new results
setRGBValues oRotospline, 2, 3, 5
getRGBValues oRotospline
' ---------------------- FUNCTIONS ----------------------------------
function getRGBValues( in_roto_name )
        ' Get the RGB Values from the rotospline shape
        vRed = GetValue( oRotospline & ".Red", 1 )
        vGreen = GetValue( oRotospline & ".Green", 1 )
        vBlue = GetValue( oRotospline & ".Blue", 1 )
        Application.LogMessage "The RGB values for the " & oRotospline _
                        & " are: " & vRed & ", " & vGreen & ", " & vBlue
end function
function setRGBValues( in_roto_name, in_R, in_G, in_B )
        SetValue oRotospline & ".Red", in_R
        SetValue oRotospline & ".Green", in_G
        SetValue oRotospline & ".Blue", in_B
end function

' ------------------------ OUTPUT -----------------------------------
' Output of above script:
'INFO : "The RGB values for the FxTree.ColorCorrect_Image.ColorCorrect.GarbageShapes.Bezier are: 1, 1, 1"
'INFO : "The RGB values for the FxTree.ColorCorrect_Image.ColorCorrect.GarbageShapes.Bezier are: 2, 3, 5"

See Also

Add2DShape Add2DShapePoint Insert2DShapePoint Delete2DShapePoint