CustomOperator.AddOutputPort

導入

v4.0

詳細

カスタムオペレータにOutputPortを追加します。各オペレータで1 つの出力のみを使用するようにお勧めします。複数の出力はサポートされていません。警告:このメソッドは、オペレータの接続後は使用できません(Operator.Connect)。

スクリプト 構文

oReturn = CustomOperator.AddOutputPort( PortTarget, [PortName], [PortGroup], [InsertAt], [Flags] );

戻り値

新しく作成されたOutputPort

パラメータ

パラメータ タイプ 詳細
PortTarget Variant ポートに接続するオブジェクトまたはオブジェクトのフルネーム。Softimage はオブジェクトのフルネームを記憶しますが、別のオブジェクトに接続するときに上書きされます(Operator.ConnectおよびOperator.ConnectToGroupを参照)。
PortName String ポートの名前。

デフォルト値: デフォルト名は「Out」+ 接続するオブジェクトの Parameter.ScriptName です。たとえば、「Outposx」などになります。

PortGroup Long ポートグループのインデックス

デフォルト値: -1

InsertAt Long 特定インデックスのポートのインデックス

デフォルト値: -1

フラグ Long siPortFlagsにより記述されたポートグループフラグのマスク

デフォルト値: 0

JScript の例

/*
        This example illustrates how to use the AddOutputPort method to define 
        an output port.
*/
NewScene( null, false );
var obj = CreatePrim( "Cube", "MeshSurface");
var sop = XSIFactory.CreateScriptedOp( "MyOperator", MyOperator_Update.toString(), "JScript" )
var group = sop.AddPortGroup( "MainGroup" );
sop.AddOutputPort( obj.ActivePrimitive, "OutPolygonMesh", group.Index );
sop.AddInputPort( "cube.polymsh", "InPolygonMesh", group.Index );
sop.Connect();
// The operator's update function
function MyOperator_Update( ctx, out, in1 ) 
{
        Application.LogMessage( "MyOperator_Update: " + out.Value );
        var aPos = in1.Value.Geometry.Points.PositionArray.toArray();
        out.Value.Geometry.Points.PositionArray = aPos;
}

関連項目

CustomOperator.AddOutputPortByClassID AddCustomOp