3ds Max 2011 で導入されたこのコア インタフェースは、名前付き選択セットへのアクセスと管理を行うためのメソッドを公開します。
関連する機能については、「SelectionSetArray 値」も参照してください。
Interface: NamedSelectionSetManager
メソッド:
<integer>NamedSelectionSetManager.GetNumNamedSelSets()
名前付き選択セットの数を返します。
<string>NamedSelectionSetManager.GetNamedSelSetName <integer>setIndex
インデックス付きの、ゼロを基数とする名前が付いた選択セットを返します。
<integer>NamedSelectionSetManager.GetNamedSelSetItemCount <integer>setIndex
インデックス付きの、ゼロを基数とする名前が付いた選択セット内のアイテム(オブジェクト)の数を返します。
<node>NamedSelectionSetManager.GetNamedSelSetItem <integer>setIndex <integer>itemIndex
2 つめの引数で指定されたインデックス付きの、ゼロを基数とするシーン ノードを、1 つめの引数で指定されたインデックス付きのゼロを基数とする名前が付いた選択セットから返します。
<boolean>NamedSelectionSetManager.AddNewNamedSelSet <&node array>nodeSet <&String>setName
nodeSet is In parameter
setName is In parameter
2 つめの引数に基づいて名前が付けられた 1 つめの引数により配列として渡されたノードを含む、新規の選択セットを追加します。
成功した場合は true を、失敗した場合は false を返します。
<boolean>NamedSelectionSetManager.RemoveNamedSelSetByIndex <integer>setIndex
ゼロを基数とするインデックス付きの名前が付けられた選択セットを削除します。
成功した場合は true を返します。失敗した場合(インデックスが範囲外の場合)は false を返します。
<boolean>NamedSelectionSetManager.RemoveNamedSelSetByName <&String>setName
setName is In parameter
指定の名前で名前が付けられた選択セットを削除します。
成功した場合は true、失敗した(名前が見つからない)場合は false を返します。
<boolean>NamedSelectionSetManager.ReplaceNamedSelSetByIndex <&node array>nodeSet <integer>setIndex
nodeSet is In parameter
2 つめの引数によって指定されるゼロを基数とするインデックス付きの名前が付けられた選択セットのノード配列と、1 つめの引数によって渡されるノード配列を置き換えます。
成功した場合は true を返します。失敗した場合(インデックスが範囲外の場合)は false を返します。
<boolean>NamedSelectionSetManager.ReplaceNamedSelSetByName <&node array>nodeSet <&String>setName
nodeSet is In parameter
setName is In parameter
2 つめの引数の名前文字列によって指定される選択セットのノード配列と、1 つめの引数によって渡されるノード配列を置き換えます。
成功した場合は true、失敗した(名前が見つからない)場合は false を返します。
<boolean>NamedSelectionSetManager.GetNamedSelSetList <&node array>nodeSet <integer>setIndex
nodeSet is In and Out parameter
ゼロを基数とするインデックスの 2 つめの引数によって指定された選択セットのノード配列を 1 つめの引数により参照渡しされた配列に返します。
成功した場合は true を返します。失敗した場合(インデックスが範囲外の場合)は false を返します。
<boolean>NamedSelectionSetManager.SetNamedSelSetName <integer>setIndex <&String>setName
setName is In parameter
1 つめの引数で指定されたインデックス付きの名前が付けられた選択セットの名前を 2 つめの引数で指定した文字列に設定します。
成功した場合は true を返します。失敗した場合(インデックスが範囲外の場合)は false を返します。
例:
|
NamedSelectionSetManager.GetNumNamedSelSets() --名前付きの選択セットなしで開始します
--> 0
s = Sphere() --球を作成します
--> $Sphere:Sphere001 @ [0.000000,0.000000,0.000000]
b = Box() --ボックスも作成します
--> $Box:Box001 @ [0.000000,0.000000,0.000000]
NamedSelectionSetManager.AddNewNamedSelSet #(s,b) "TestSelectionSet" --そしてそれらを選択セット に追加します
--> true
NamedSelectionSetManager.GetNumNamedSelSets() --数を確認して、1 つ作成します
--> 1
NamedSelectionSetManager.GetNamedSelSetName 0 --インデックスはゼロを基数とし、1 つめのセットを取得します
--> "TestSelectionSet"
NamedSelectionSetManager.GetNamedSelSetItemCount 0 --内側に 2 つアイテムを持ちます
--> 2
NamedSelectionSetManager.GetNamedSelSetItem 0 0 --1 つめのアイテムが球を返すか確認します
--> $Sphere:Sphere001 @ [0.000000,0.000000,0.000000]
NamedSelectionSetManager.GetNamedSelSetItem 0 1 --2 つめのアイテムがボックスを返すか確認します
--> $Box:Box001 @ [0.000000,0.000000,0.000000]
NamedSelectionSetManager.RemoveNamedSelSetByIndex 0 --選択セットのみを削除できます
--> true
NamedSelectionSetManager.GetNumNamedSelSets() --セットの数をゼロに等しくします
--> 0
NamedSelectionSetManager.AddNewNamedSelSet #(s,b) "Test2" --もう 1 つ別のを作成します
--> true
NamedSelectionSetManager.GetNumNamedSelSets() --1 つの選択セットに戻ります
--> 1
NamedSelectionSetManager.RemoveNamedSelSetByName "Test1" --それを(間違った)名前で削除しようとします
--> false
NamedSelectionSetManager.RemoveNamedSelSetByName "Test2" --そして名前による削除が正常に完了しました
--> true
NamedSelectionSetManager.AddNewNamedSelSet #(s,b) "Test3" --新しい名前を付けて再作成します
--> true
g = Geosphere() --天球体プリミティブを作成して球を置換します
--> $GeoSphere:GeoSphere001 @ [0.000000,0.000000,0.000000]
NamedSelectionSetManager.ReplaceNamedSelSetByIndex #(g,b) 0 --アイテムを選択セットに設定します
--> true
NamedSelectionSetManager.GetNamedSelSetItem 0 0 --1 つめのアイテムは球です
--> $GeoSphere:GeoSphere001 @ [0.000000,0.000000,0.000000]
NamedSelectionSetManager.GetNamedSelSetItem 0 1 --2 つめはボックスです
--> $Box:Box001 @ [0.000000,0.000000,0.000000]
NamedSelectionSetManager.ReplaceNamedSelSetByName #(b,s) "Test2" --間違った名前のファイルと置換しています
--> false
NamedSelectionSetManager.ReplaceNamedSelSetByName #(b,s) "Test3"--しかし正しい名前で機能しています
--> true
NamedSelectionSetManager.GetNamedSelSetItem 0 0 --ボックスを最初のアイテムとして持っています
--> $Box:Box001 @ [0.000000,0.000000,0.000000]
NamedSelectionSetManager.GetNamedSelSetItem 0 1 --そして球を 2 番目のアイテムとして持ちます
--> $Sphere:Sphere001 @ [0.000000,0.000000,0.000000]
NamedSelectionSetManager.GetNamedSelSetList &theNodes 0 --参照ノードを取得します
--> true
theNodes --変数はアイテムの配列を選択セット内に含んでいます。
--> #($Box:Box001 @ [0.000000,0.000000,0.000000], $Sphere:Sphere001 @ [0.000000,0.000000,0.000000])
NamedSelectionSetManager.GetNamedSelSetName 0 --現在の名前は "Test3" です
--> "Test3"
NamedSelectionSetManager.SetNamedSelSetName 0 "SelSet"--"SelSet"に名前変更します
--> true
NamedSelectionSetManager.GetNamedSelSetName 0 --そして名前変更が機能したことを確認します
--> "SelSet"
|