GetConnectionSet

導入

v1.0

詳細

オペレータの入力オブジェクトを指定する接続セットのグループを戻します。 ApplyOp および ApplyOperator とともに使用すると、呼び出し側で入力オブジェクトが供給されない場合や、別のオブジェクトが要求される場合に、オペレータを適用するオブジェクトを選択できるようになります。

注: このコマンドは、出力引数を使用します。C# および一部のスクリプト言語(JScript、PerlScript、Python など)は、リファレンスによって渡される引数をサポートしていません。通常、出力引数は XSIApplication.ExecuteCommand メソッド(C#)または ISIVTCollection (スクリプト言語)を介して取得できますが、このコマンドはすでに値を返しています。

この場合の唯一の回避策は、出力引数と戻り値の両方を 1 つの配列で戻す VBScript のカスタム コマンドを作成することです。詳細については、「関数がすでに値を戻している場合の処理について」を参照してください。

スクリプト構文

oReturn = GetConnectionSet( PresetObj, [ConnectionSet], [CnxGroupType], [ConnectType], [Interactive], [CreateOutputObjs], [OutputObjs] );

戻り値

作成された接続セットのリストを含むXSICollection を戻します。

パラメータ

パラメータ タイプ 説明
PresetObj 文字列またはプリセット オブジェクト(SIGetPreset から取得されたオブジェクトなど) オペレータ プリセット。
ConnectionSet ConnectionSet オペレータに接続されるオブジェクトを指定します。

注: これは入/出力パラメータのため、このパラメータに渡した任意の文字列(変数または値)は、自動的に ConnectionSet オブジェクトに変換されます。

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

警告: 接続セットが無効だと、エラーが発生します。 スクリプトの中断を防ぐため、このオペレータに必要な接続セットを確認してください。

CnxGroupType siCnxSetType 必要な出力接続セットの種類

デフォルト値: siGroupLevel

ConnectType siBranchFlag 接続タイプ(ノードまたはブランチ)を指定します。

デフォルト値: siUnspecified

Interactive Boolean ConnectionSet が指定されていない場合や、何も選択されていない場合に、ユーザにオブジェクト選択を要求するには True。

デフォルト値: False

CreateOutputObjs Boolean True を設定すると、オペレータが必要とするプリミティブ オブジェクトが作成されます。

デフォルト値: False

OutputObjs XSICollection オペレータによって作成されたプリミティブを戻します。 たとえば、Loft はプリミティブ サーフェイスを作成します。

VBScript の例

'

' Apply a simple Twist operator on a sphere:

set oSphere = CreatePrim( "Sphere", "MeshSurface" )

set cnxsetlist = GetConnectionSet( "Twist", oSphere, siGroupLevel )

set TwistOp = ApplyOperator( "Twist", cnxsetlist(0) )

Application.LogMessage "New Twist operator: " & TwistOp

' Prepare to create apply a Loft operator

oCircle = CreatePrim( "Circle", "NurbsCurve" )

Rotate oCircle, 0, 90, 0

Duplicate oCircle , 2, 2, 1, 1, 0, 0, 1, 0, 1, , , , , , , 1.0

AddToSelection oCircle

' Now, apply a Loft on the current selection (3 circles).

' We've requested that GetConnectionSet generates the output surface.

set cnxsetlist = GetConnectionSet( "Loft", , siGroupLevel, , , True, SrfMshObjCreated )

if cnxsetlist.Count <> 0 then

	LoftOp = ApplyOperator( "Loft", cnxsetlist(0) & ";" & SrfMshObjCreated )

	LogMessage "New Loft operator: " & LoftOp

end if

' By deselecting all curves before calling GetConnectionSet,

' we could have set the "Interactive" argument to True so that

' the user is then requested to pick the curves as input to the Loft operator.

' Running this script should log the following:

' ---------------------------------------------

'INFO : "New Twist operator: sphere.polymsh.twistop"

'INFO : "New Loft operator: surfmsh.surfmsh.loft"

関連項目

ApplyOperator ApplyOp