Softimage での一部の操作では、ActiveX オブジェクトを作成する必要があります。 たとえば、XSICollection を作成したい場合は、以下のように明示的に作成する必要があります。
set oColl = CreateObject( "XSI.Collection" )
ActiveX オブジェクトを作成するのに最適な方法は、サポートされるどのスクリプト言語にも使用できる CreateActiveXObject(XSIFactory) メソッドを使用することです。 このメソッドの主な利点は、以下のスクリプト言語のネイティブ関数とは異なり、Netview 内に警告メッセージを表示しないことです。
ヒント:
以下に記載する情報は、各言語で利用できる情報の要約です。 詳細については、スクリプト言語のベンダまたは販売代理店が提供しているマニュアルを参照してください。
CreateObject(VBScript)
Automation オブジェクトへのリファレンスを作成し、戻します。 この関数を使用して Softimage へのフックを作成できます。
構文
CreateObject( appname.typename[, pathname] )
パラメータ
パラメータ
|
タイプ
|
説明
|
appname
|
String
|
オブジェクトを提供するアプリケーションの名前(例: XSI、XSIMath)
|
classname
|
String
|
作成するオブジェクトのタイプまたはクラス(例: Application、Collection、CreateVector3)
|
pathname
|
String
|
オプション。 取得するオブジェクトを含むファイルのフル パスおよび名前
|
例
VBScript の例
' Get an XSICollection and add items to it
Set oCollection = CreateObject( "XSI.Collection" )
oCollection.Add "Camera"
oCollection.Add "Light"
ヒント:
この関数および他のVBScriput関数の詳細については、http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vbscripttoc.asp を参照してください。
new ActiveXObject(Jscript)
Automation オブジェクトへのリファレンスを作成し、戻します。 この関数を使用して Softimage へのフックを作成できます。
構文
new ActiveXObject( appname.classname[, pathname] )
パラメータ
パラメータ
|
タイプ
|
説明
|
appname
|
String
|
オブジェクトを提供するアプリケーションの名前(例: XSI、XSIMath)
|
classname
|
String
|
作成するオブジェクトのタイプまたはクラス(例: Application、Collection、CreateVector3)
|
pathname
|
String
|
オプション。 取得するオブジェクトを含むファイルのフル パスおよび名前
|
例
JScript の例
// Get an XSICollection and add items to it
var oCollection = new ActiveXObject( "XSI.Collection" )
oCollection.Add( "Camera" )
oCollection.Add( "Light" )
ヒント:
この関数および他の JScript 関数の詳細については、http://msdn.microsoft.com/library/default.asp?url=/library/en-us/script56/html/vbscripttoc.asp を参照してください。
Win32OLE->new(PerlScript)
Automation オブジェクトへのリファレンスを作成し、戻します。 この関数を使用して Softimage へのフックを作成できます。
構文
Win32::OLE->new( appname.typename[, destructor] )
パラメータ
パラメータ
|
タイプ
|
説明
|
appname
|
String
|
オブジェクトを提供するアプリケーションの名前(例: XSI、XSIMath)
|
classname
|
String
|
作成するオブジェクトのタイプまたはクラス(例: Application、Collection、CreateVector3)
|
destructor
|
String
|
オプション。 ActiveX オブジェクトを破棄するメソッドを指定します。 OLE メソッド名を含むコード リファレンスまたは文字列を指定できます。
|
例
PerlScript の例
# Get an XSICollection and add items to it
my $coll = Win32::OLE->new( "XSI.Collection" );
$coll->Add( "Camera" );
$coll->Add( "Light" );
ヒント:
この関数および ActivePerl に関する問題の詳細については、aspn.activestate.com/ASPN/CodeDoc/Win32-OLE/Win32/OLE.html を参照してください。
win32com.client.Dispatch(Python ActiveX)
Automation オブジェクトへのリファレンスを作成し、戻します。 この関数を使用して Softimage へのフックを作成できます。
構文
win32com.client.Dispatch( appname.typename )
パラメータ
パラメータ
|
タイプ
|
説明
|
appname
|
String
|
オブジェクトを提供するアプリケーションの名前(例: XSI、XSIMath)
|
classname
|
String
|
作成するオブジェクトのタイプまたはクラス(例: Application、Collection、CreateVector3)
|
例
Python の例
# You need to explicitly import this extension to use Dispatch
import win32com.client
# Get an XSICollection and add items to it
coll = win32com.client.Dispatch( "XSI.Collection" )
coll.Add( "Camera" )
coll.Add( "Light" )
ヒント:
この関数および Python ActiveX に関する問題の詳細については、www.python.org/windows/win32com/QuickStartClientCom.html を参照してください。