ロー プリミティブ(まっさらなプリミティブ)を作成します。このコマンドは、ジオメトリ オブジェクトに対しインプリシット ジオメトリ オブジェクトを作成します。また、カメラ、ライト、ヌル、コントロール オブジェクト、ラティス、ジオメトリ シェーダなど、他の種類のプリミティブを作成することも可能です。作成されたプリミティブは選択されません。
SIGetPrim はプリミティブを作成します。SIGetPrim という名前は、Softimage の Get-Primitive- メニューから取られています。
注: このコマンドは、出力引数を使用します。C# および一部のスクリプト言語(JScript、PerlScript、Python など)は、リファレンスによって渡される引数をサポートしていません。このため、状況に応じた適切な回避策を実行する必要があります。
スクリプト言語の場合、このコマンドは出力引数を取得するために使用できる ISIVTCollection を戻します。
C# の場合は、XSIApplication.ExecuteCommand メソッドを使用してこのコマンドを呼び出すことができます。ExecuteCommand は、出力引数を C# の System.Object (出力引数の Array を含む)にパック化します(詳細については、「C# からのコマンドの呼び出し」を参照)。
SIGetPrim( PresetObj, [Name], [Parent], [AddToScene], [Value], [Primitive] ); |
パラメータ | タイプ | 説明 |
---|---|---|
PresetObj | String またはプリセット オブジェクト(「SIGetPreset」を参照) | プリミティブ プリセットの名前。 サポートされているプリセット名のリストについては、「インプリシット プリミティブ」および「ジオメトリ プリミティブ」を参照してください。 |
Name | 文字列 | 新しいプリミティブの名前 |
Parent | 文字列 | 既存のオブジェクトの名前。新しいプリミティブの親として使用されます。 |
AddToScene | Boolean |
シーンにオブジェクトを作成する場合は True。 デフォルト値: True |
Value | X3DObject | プリミティブに対して作成された 3D オブジェクトを戻します。 |
Primitive | Primitive | インプリシッド プリミティブ オブジェクトを戻します。 |
' This examples shows how to create an implicit primitive ' and convert it to a NURBS surface. newscene dim MyGrid, MyCamera 'Create implicit primitive. It will be named and nested under the scene root. 'We consult the returned list instead of the output parameters because 'it is better supported by other scripting languages. set MyGrid = SIGetPrim( "Grid", "aGrid", , True) 'Logged information: 'INFO : "ISIVTCollection contains 2 elements." 'INFO : "First object is: Primitive" 'INFO : "Second object is: X3DObject" logmessage typename(MyGrid) & " contains " & MyGrid.count & " elements." logmessage "First object is: " & typename( MyGrid(0) ) logmessage "Second object is: " & typename( MyGrid(1) ) ' It is possible to convert the implicit to a Nurbs Surface SIConvert "NurbsSurface", MyGrid(1) 'Create a camera without an interest. It uses default values. set MyCamera = SIGetPrim( "Camera" ) 'Logged information: 'INFO : "ISIVTCollection contains 2 elements." 'INFO : "First object is: Primitive" 'INFO : "Second object is: Camera" logmessage typename(MyCamera) & " contains " & MyCamera.count & " elements." logmessage "First object is: " & typename( MyCamera(0) ) logmessage "Second object is: " & typename( MyCamera(1) ) |