インタフェース: ViewPanelManager

インタフェース > コア インタフェース > ViewPanelManager

 

   

ビューポート シェーディング - クイック ナビゲーション

   

コア インタフェース - クイック ナビゲーション

このコア インタフェースは、MAXScript にビュー パネル マネージャを公開しています。

このインタフェースは、カスタムのビューポート設定を含むビュー パネルを作成および操作するためのメソッドや、ビュー パネル プリセットを管理するためのメソッドを提供します。

3ds Max 2013 以降で使用可能です。

メソッド:

ビュー パネルの作成

<index>ViewPanelManager.CreateViewPanel <string>tabName <enum>layout <bool>isActive

layout enums: {
#layout_1 | #layout_2v | #layout_2h | #layout_2ht | #layout_2hb | 
#layout_3vl | #layout_3vr | #layout_3ht | #layout_3hb | 
#layout_4 | #layout_4vl | #layout_4vr | #layout_4ht | #layout_4hb }

最初の引数で指定された名前の新しいビュー パネルを作成します。

2 番目の引数は、レイアウト名を指定します(以下の表を参照)。

3 番目の引数は、ビュー パネルをアクティブにするかどうかをコントロールします。

新しいビュー パネルのインデックスを返します。

レイアウト (Layout) 名前 説明
 

#layout_1

1 つのビューポート

 

#layout_2v

2 つのビューポート、同じサイズの垂直分割

 

#layout_2h

2 つのビューポート、同じサイズの水平分割

 

#layout_2ht

2 つのビューポート、上が小さめの水平分割

 

#layout_2hb

2 つのビューポート、下が小さめの水平分割

 

#layout_3vl

3 つのビューポート、左に 2 つ、右に 1 つ

 

#layout_3vr

3 つのビューポート、左に 1 つ、右に 2 つ

 

#layout_3ht

3 つのビューポート、上に 2 つ、下に 1 つ

 

#layout_3hb

3 つのビューポート、上に 1 つ、下に 2 つ

 

#layout_4vl

4 つのビューポート、左に 3 つ、右に 1 つ

 

#layout_4vr

4 つのビューポート、左に 1 つ、右に 3 つ

 

#layout_4ht

4 つのビューポート、上に 3 つ、下に 1 つ

 

#layout_4hb

4 つのビューポート、上に 1 つ、下に 3 つ

 

#layout_4

4 つのビューポート、すべて同じサイズ

   

<integer>ViewPanelManager.GetViewPanelCount()

ビュー パネルの数を返します。

   

<bool>ViewPanelManager.SetActiveViewPanel <index>Index

アクティブなビュー パネルをインデックスで指定された定義に設定します。

成功した場合は true を、失敗した場合は false を返します。

   

<index>ViewPanelManager.GetActiveViewPanelIndex()

アクティブなビュー パネルのインデックスを返します。

   

<bool>ViewPanelManager.CanCreateMoreViewPanels()

新しいビュー パネルを作成できる場合は True を返し、上限に達している場合は False を返します。

   

<string>ViewPanelManager.GetViewPanelName <index>Index

インデックスで指定されたビュー パネルの名前を返します。

<bool>ViewPanelManager.SetViewPanelName <index>Index <string>newPanelName

インデックスで指定されたビュー パネルの名前を 2 番目の引数で指定された文字列に設定します。

   

<value>ViewPanelManager.GetActiveViewPanelDib()

アクティブなビュー パネルのデバイスに依存しないビットマップ(ビューポートのスナップショット)を返します。

このイメージには、ビュー パネルのすべてのビューポートの内容が含まれます。

   

<bool>ViewPanelManager.IsViewPanelLocked <index>Index

インデックスで指定されたビュー パネルがロックされている場合は True を返し、ロックされていない場合は False を返します。

   

<bool>ViewPanelManager.SetSplitterBarPos <integer>splitterBarID <float>pos

水平方向または垂直方向の分割線の位置を指定された位置に設定します。

最初の引数の範囲は 0 ~ 2 で、現在のレイアウトに応じて異なります。

レイアウト (Layout) 表示される線のインデックス コメント

#layout_1

[なし](None)

分割線は使用されませんが、最初の引数に 0、1、および 2 を指定しても有効です。

#layout_2v

1 - 垂直方向の分割線

0 と 2 も有効なインデックスですが、対応する分割線は使用されません。

#layout_2h

#layout_2ht

#layout_2hb

0 - 水平方向の分割線

1 と 2 も有効なインデックスですが、対応する分割線は使用されません。

#layout_3vl

#layout_3vr

#layout_3ht

#layout_3hb

0 - 水平方向の分割線

1 - 垂直方向の分割線

2 も有効なインデックスですが、対応する分割線は使用されません。

#layout_4

0 - 水平方向の分割線

1 - 垂直方向の分割線

2 も有効なインデックスですが、対応する分割線は使用されません。

#layout_4vl

#layout_4vr

0 - 垂直方向の分割線

1 - 上の水平方向の分割線

2 - 下の水平方向の分割線

 

#layout_4ht

#layout_4hb

0 - 水平方向の分割線

1 - 左の垂直方向の分割線

2 - 右の垂直方向の分割線

 

2 番目の引数には、0.0 ~ 1.0 の範囲の浮動小数点を指定する必要があります。0.5 がパネルの中心に相当します。

成功した場合は True を返し、2 番目の引数が範囲外の場合は False を返します。表示されない分割線のインデックスを設定した場合も True が返されることに注意してください。

   

<bool>ViewPanelManager.SetExtendedView <integer>viewIndex <enum>extendedViewType

extendedViewType enums: {#ev_type_tree|#ev_type_schematic|#ev_type_sceneexplore}

インデックスで指定された拡張ビューのタイプを 2 番目の引数の列挙値で指定されたタイプに設定します。

現在サポートされていない拡張ビューのタイプもあります。

有効な値は次のとおりです。

Enum 整数 結果

#ev_type_tree

0

拡張ビューポートをトラック ビューに設定

#ev_type_schematic

1

拡張ビューポートをスケマティク ビューに設定

#ev_type_sceneexplore

2

拡張ビューポートをシーン エクスプローラに設定

   

<bool>ViewPanelManager.DestroyViewPanel <index>Index

インデックスで指定されたビュー パネルを破棄します。

成功した場合は true を、失敗した場合は false を返します。

   

theActive = ViewPanelManager.GetActiveViewPanelIndex()
--> 1
canCreate = ViewPanelManager.CanCreateMoreViewPanels()
--> true 
if canCreate do theNew = ViewPanelManager.CreateViewPanel "Two Horizontal Large Top" #layout_2h false
--> 2
ViewPanelManager.SetSplitterBarPos 0 0.65
--> true
theCount = ViewPanelManager.GetViewPanelCount()
--> 2
for i = 1 to 2 do
(
	theName = ViewPanelManager.GetViewPanelName i
	isLocked = ViewPanelManager.IsViewPanelLocked i
	format "% Name:'%' Locked:% " i theName isLocked
	if i == theActive then format "(active)\n" else format "\n"
)	
--> 1 Name:'Quad 4' Locked:true (active)
--> 2 Name:'Two Horizontal Large Top' Locked:false 
--> OK
theBitmap = ViewPanelManager.GetActiveViewPanelDib()
--> BitMap:
display theBitmap
--> OK
ViewPanelManager.DestroyViewPanel theNew
--> true
 

ビュー パネル プリセットの管理

<integer>ViewPanelManager.GetPresetCount()

使用可能な名前付きビュー パネル プリセットの数を返します。

   

<string>ViewPanelManager.GetPresetName <index>presetIndex

インデックスで指定されたビュー パネル プリセットの名前を返します。

   

<index>ViewPanelManager.GetPresetID <string>presetName

指定された名前のビュー パネル プリセットの ID を返します。

   

<bool>ViewPanelManager.DoesViewPanelPresetExist <string>presetName

最初の引数で指定された名前のビュー パネル プリセットが存在する場合は True を返します。

指定された名前のビュー パネル プリセットが存在しない場合は False を返します。

   

<integer>ViewPanelManager.GetViewPanelPresetLayout <integer>presetIndex

インデックスで指定されたビュー パネル プリセットのレイアウトを示す整数を返します。

   

<index>ViewPanelManager.CreateViewPanelFromPreset <string>presetName <bool>isActive

指定された名前のプリセットから新しいビュー パネルを作成します。

2 番目の引数を True に設定すると、作成されたビュー パネルがアクティブになります。

新しいビュー パネルのインデックスを返します。

   

<bool>ViewPanelManager.CreatePresetFromActiveViewPanel <string>presetName

アクティブなビュー パネルから、指定された名前の新しいプリセットを作成します。

同じ名前が既に存在する場合は、数値サフィックスが付けられます。たとえば、「Test」の場合は「Test 01」になります。

成功した場合は true を、失敗した場合は false を返します。

   

<bool>ViewPanelManager.CreatePresetFromViewPanel <index>panelIndex <string>presetName

最初の引数で指定されたインデックスのビュー パネルから新しいプリセットを作成します。

プリセットの名前は、2 番目の引数で指定した名前になります。

成功した場合は true を、失敗した場合は false を返します。

   

<bool>ViewPanelManager.RenameViewPanelPreset <string>presetName <string>newName

最初の引数で指定されたビュー パネル プリセットの名前を 2 番目の引数で指定された名前に変更します。

名前の変更が成功した場合は True を返します。

最初の引数で指定された名前のプリセットが存在しない場合は False を返します。

   

<bool>ViewPanelManager.DeletePreset <string>presetName

指定された名前のビュー パネル プリセットを削除します。

成功した場合は True を返します。

指定された名前のプリセットが存在しない場合は False を返します。

   

<bool>ViewPanelManager.DeleteAllViewPanelPresets()

すべてのビュー パネル プリセットを削除します。

成功した場合は true を、失敗した場合は false を返します。

   

theNewPresetName = "Just A Test"
--> "Just A Test"
if not ViewPanelManager.DoesViewPanelPresetExist theNewPresetName do 
  ViewPanelManager.CreatePresetFromActiveViewPanel theNewPresetName
--> true
ViewPanelManager.RenameViewPanelPreset theNewPresetName "A Test Indeed"
--> true
theCount = ViewPanelManager.GetPresetCount()
--> 1
for i = 1 to theCount do
(
  theName = ViewPanelManager.GetPresetName i
  theLayout = ViewPanelManager.GetViewPanelPresetLayout i
  format "% Name:'%' Layout:'%' \n" i theName theLayout
)
--> 1 Name:'A Test Indeed' Layout:'-1' 
--> OK
ViewPanelManager.DeletePreset theNewPresetName
--> false
ViewPanelManager.DeletePreset "A Test Indeed"
--> true