Add2DShape

Introduced

v3.0

Description

Adds a 2D shape (mask shape) to the shape list of any FxOperator except Painterly Fx (for example, a Color Correct operator).

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

Scripting Syntax

oReturn = Add2DShape( [ShapeList], ShapeType );

Return Value

The new 2D shape (mask shape) as a CollectionItemLegacy.

Parameters

Parameter Type Description
ShapeList String Parameter path name for the shape list where you are adding the new shape.

Default Value: Current selection.

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

ShapeType String Specifies the type of 2D shape.

Possible Values:

Description:

Bezier Bezier type.
BSpline BSpline type.
Polygon Polygon type.

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

Add2DShapePoint Add2DShapePointArray Insert2DShapePoint Move2DShape Scale2DShape Move2DShapePin Set2DShapeRotation Move2DShapePoint Move2DShapeLHandle Move2DShapeRHandle Delete2DShapePoint Key2DShapePoints