CustomOperator

CustomOperator

Object Hierarchy | 関連する C++クラス:CustomOperator

継承

SIObject

ProjectItem

Operator

CustomOperator

導入

v4.0

詳細

CustomOperator オブジェクトは、ユーザが定義したカスタムオペレータです。このオペレータは、次のいずれかの方法で作成されました。

- Scripted Operator Editor で

- 自己インストール カスタム オペレータとして

- スクリプトを実行するという一度の操作で(「ランタイム」カスタム オペレータ)

自己インストール カスタム オペレータは、Plugin 内で定義されており、カスタム オペレータを作成するための推奨方法です。ランタイムオペレータはまだサポートされていますが、別のコールバック変換が用意されており、オペレータの実装全体がシーンファイルに埋め込まれています。ランタイムオペレータの詳細については、AddScriptedOp および XSIFactory.CreateScriptedOp を参照してください。

v 5.1以前は、カスタムオペレータはプリセットまたは SPDL ファイルに基づいて作成されていました。この方法はまだレガシー機能としてサポートされていますが、現在は代わりに自己インストールカスタムオペレータを使用することが推奨されています。

スクリプトから自己インストールカスタムオペレータを構築する最も簡単な方法は、Parameter.AddCustomOp コマンド(または同様の ProjectItem.AddCustomOp および AddCustomOp メソッド)を使用することです。

このオブジェクトのメソッドを使用してカスタムオペレータを構築することもできます。ほとんどのオペレータには 1 つの出力オブジェクト(1 つの OutputPort によって表される)のみが含まれ、入力(InputPort で表される)がある場合もあります。オペレータがデフォームスタイルのオペレータの場合、同じオブジェクトに入力と出力の両方が含まれる場合があります。出力ポートは入力ポートの前に(または CustomOperator.AddIOPort を使用して)追加される必要があります。ほとんどのオペレータには、自動的に作成される 1 つの PortGroup が必要です。一般的なオペレータはすべて、次のメソッドで定義できます。

- XSIFactory.CreateObject

- CustomOperator.AddInputPort

- CustomOperator.AddOutputPort

- XSIFactory.CreateParamDef

- CustomOperator.AddParameter

- Operator.Connect

より高度なオペレータ、特にオペレータの作成後にオブジェクトに動的に接続するオペレータも、PortGroup の概念を使用して、定義されたとおりにポートをグループに整理します。これらのオペレータは、CustomOperator.AddPortGroupOperator.ConnectToGroup、および CustomOperator.AddInputPortByClassID に依存します。

X3DObjectKinematicsなどの特定のオブジェクトは、カスタムオペレータに接続されないように明示的にブロックされます。オペレータは、これらのオブジェクトに接続する代わりに、これらのオブジェクトの下の特定のデータ(PrimitiveProperty、または KinematicState)に接続する必要があります。

自己インストールカスタムオペレータの実際のアルゴリズムは、Update コールバックに実装されます。ランタイムオペレータと異なり、OperatorContextオブジェクトである1 つの引数を取ります。他のコールバックには、DefineDefineLayoutInitTerm、および PPG ロジック コールバック(C# の PPGEvent および OnClickedOnInit、および OnTab)があります。

詳細については、「the Custom Operators topic」を参照してください。

メソッド

AddCustomOp AddICEAttribute AddIOPort AddIOPortByClassID
AddInputPort AddInputPortByClassID AddOutputPort AddOutputPortByClassID
AddParameter AddPortGroup AddScriptedOp AddScriptedOpFromFile
AnimatedParameters2 BelongsToオペレータ Connect ConnectToGroup
Copy Disconnect DisconnectGroup EvaluateAt
GetICEAttributeFromName GetInputValue GetNumInstancesInGroupオペレータ GetNumPortGroupsオペレータ
GetNumPortsInGroupオペレータ GetPort2オペレータ GetPort3オペレータ GetPortAtオペレータ
IsA IsAnimated2 IsClassOfオペレータ IsEqualToオペレータ
IsKindOf IsLockedオペレータ IsSelectedオペレータ LockOwners
PortAtオペレータ RemoveICEAttribute RemoveParameter SetAsSelectedオペレータ
SetCapabilityFlagオペレータ SetLock SupportsBranchGroupオペレータ TaggedParameters
UnSetLock Validateオペレータ    
       

プロパティ

AlwaysEvaluate Application BranchFlagオペレータ Capabilitiesオペレータ
Categories Codeオペレータ Debugオペレータ EvaluationID
Familiesオペレータ FileName FullNameオペレータ Help
HierarchicalEvaluationID ICEAttributes InputPortsオペレータ IsConnectedオペレータ
Language LockLevelオペレータ LockMastersオペレータ LockTypeオペレータ
Model Muteオペレータ Nameオペレータ NestedObjects
ObjectID Origin OriginPath OutputPortsオペレータ
Owners PPGLayoutオペレータ Parametersオペレータ Parent
Parent3DObject Portオペレータ PortGroupsオペレータ Selectedオペレータ
Typeオペレータ      
       

関連項目

Parameter.AddCustomOp ProjectItem.AddCustomOp XSIFactory.CreateObject XSIFactory.CreateParamDef OperatorContext Operator AddCustomOp