v3.0
constraint
X3DObject
に拘束されるすべてのオブジェクトを検索します。
注: このコマンドは、出力引数を使用します。 C#
および一部のスクリプト言語(JScript、PerlScript、Python
など)は、リファレンスによって渡される引数をサポートしていません。このため、状況に応じた適切な回避策を実行する必要があります。
スクリプト言語の場合、このコマンドは出力引数を取得するために使用できる ISIVTCollection を戻します。
C# の場合は、XSIApplication.ExecuteCommand
メソッドを使用してこのコマンドを呼び出すことができます。 ExecuteCommand は、出力引数を C# の
System.Object (出力引数の配列を含む)にパック化します(詳細については、「C#
からのコマンドの呼び出し」を参照)。
GetConstrainedObjects( InputObj, OutputObjs ); |
パラメータ | タイプ | 詳細 |
---|---|---|
InputObj | 文字列または X3DObject | 他のオブジェクトを拘束しているオブジェクト。 |
OutputObjs | XSICollection | 拘束されているオブジェクトのリストを戻します。 |
' ' This example demonstrates the GetConstrainedObjects command ' NewScene , false Create2DSkeleton 0, -0.2, 3.0, 0, 2, 0.2, 0, 90, 0, 4 Create2DSkeleton 0, -1, 2.0, 0, 4, 0.1, 0, 90, 0, 4 CreatePrim "Cube", "MeshSurface" ' Constrain two bones to the cube ApplyCns "Position", "eff", "cube" ApplyCns "Position", "eff1", "cube" dim objCollection call GetConstrainedObjects (Selection(0), objCollection) logmessage "There are " & objCollection.Count & _ " objects constrained to " & Selection(0) logmessage "The first constrained object is " & objCollection.Item(0) logmessage "The second constrained object is " & objCollection.Item(1) ' Expected results: 'INFO : There are 2 objects constrained to cube 'INFO : The first constrained object is eff1 'INFO : The second constrained object is eff |
/* This example demonstrates the GetConstrainedObjects command */ NewScene( null, false ) ; Create2DSkeleton( 0, -0.2, 3.0, 0, 2, 0.2, 0, 90, 0, 4 ); Create2DSkeleton( 0, -1, 2.0, 0, 4, 0.1, 0, 90, 0, 4 ) ; CreatePrim( "Cube", "MeshSurface" ) ; // Constrain both skeletons to the cube ApplyCns( "Position", "eff", "cube" ) ; ApplyCns( "Position", "eff1", "cube" ) ; // JScript doesn't support output arguments but the // information is also available as a return value var aRetArgs = GetConstrainedObjects(Selection(0) ); // There is only one output argument so it is // first in the returned collection var objCollection = aRetArgs(0) ; logmessage( "There are " + objCollection.Count + " objects constrained to " + Selection(0) ) ; logmessage( "The first constrained object is " + objCollection.Item(0) ) ; logmessage( "The second constrained object is " + objCollection.Item(1) ) ; //Expected results: //INFO : There are 2 objects constrained to cube //INFO : The first constrained object is eff1 //INFO : The second constrained object is eff |