Add2DShape

導入

v3.0

カテゴリ

レンダリング

詳細

2D シェイプ(マスク シェイプ)を、任意の FxOperator のシェイプ リストに追加します(Color Correct オペレータなど、Painterly Fx を除く)。

注: ポイントは、Add2DShapePoint または Add2DShapePointArray コマンドのいずれかを使用して追加することができます。

スクリプト構文

oReturn = Add2DShape( [ShapeList], ShapeType );

戻り値

新しい 2D シェイプ(マスク シェイプ)を CollectionItem Legacy として戻します。

パラメータ

パラメータ タイプ 詳細
ShapeList 文字列 新しいシェイプを追加するシェイプ リストのパラメータ パス名

デフォルト値: 現在選択されている値

注: 現在の選択が有効なリストでないと、エラーが発生します。

ShapeType 文字列 2D シェイプのタイプを指定

指定可能な値:

説明:

Bezier ベジェ タイプ
BSpline B スプライン タイプ
Polygon Polygon タイプ

VBScript の例

'
' 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"

関連項目

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