trackviews コア インタフェースは、トラック ビューへのアクセスを提供します。
また、3ds Max 5 で導入された[関数曲線]と[ドープ シート]エディタの拡張機能も制御します。
プロパティ
trackviews.currentTrackView : Interface : Read
現在のトラック ビューにアクセスするための TrackView [Mixin インタフェース]を返し、現在のトラック ビューが存在しない場合は undefined を返します。
trackviews.current: Interface : Read
現在のトラック ビューにアクセスするための TrackView [Mixin インタフェース]を返し、現在のトラック ビューが存在しない場合は undefined を返します。.currentTrackView のエイリアスです。
このページの後にあるトラック ビュー インタフェースの説明を参照してください。
例:
|
trackviews.currentTrackView
--> <MixinInterface:TrackView>
|
trackviews.lastUsedTrackViewName : string : Read
最後に使用されたトラック ビューの名前を文字列で返します。
メソッド
<Interface>trackviews.getTrackView <fpvalue>name or index
このメソッドは、トラックビューのインデックスまたは名前に基づいて、TrackView [Mixin インタフェース]を取得します。
<Interface by value array>trackviews.getAllOpenTrackViews()
開いているすべてのトラックビューの TrackView [Mixin インタフェース]配列を返します。
<integer>trackviews.numTrackViews()
トラック ビューの数を返します。
<boolean>trackviews.open <fpvalue>name or index [layoutName:<string>] [pos:<point2>] [width:<integer>] [height:<integer>] [dock:<enum>]
layoutName default value: ""
pos default value: [-1,-1]
width default value: -1
height default value: -1
dock enums: {#float|#top|#bottom|#canDockOnTop}
dock default value: #float
インデックスまたは名前を基にしてトラック ビューを開きます。
高さと幅の引数を指定した場合、効果があるのは最初にトラック ビューを開いたときだけです。それ以降は、ユーザ定義のサイズが有効になります。これによって、トラック ビューを開く操作を記述するときにサイズを指定できるようになりますが、その場合でもユーザがサイズを変更して新しいサイズを記憶させることができます。
例:
|
trackviews.open "name" layoutName:" layout name" pos:[6,100] width:800 height:400
|
<boolean>trackviews.close <fpvalue>name or index
インデックスまたは名前を基にしてトラック ビューを閉じます。
<void>trackviews.delete <fpvalue>name or index
インデックスまたは名前を基にしてトラック ビューを削除します。
<string>trackviews.getTrackViewName <index>index
インデックスに基づいて、トラック ビュー ウィンドウの名前を返します。
<boolean>trackviews.zoomSelected <string>name
選択されたオブジェクトのトラックを拡大します。
<boolean>trackviews.zoomOn <string>name <maxObject>object <index>subNum
成功の場合は
true
、それ以外の場合は
false
を返します。
<boolean>trackviews.setFilter <string>TrackviewName <name>filterName
名前で指定されたトラックビューに、指定されたフィルタを設定します。成功の場合は
true
、それ以外の場合は
false
を返します。
可能なフィルタ名は次のとおりです。
#all -- set or clear all flags
#default -- set default view flags
#selectedObjects
#selectedTracks
#animatedTracks
#spacewarpBindings
#modifiedObjects
#transforms
#baseObjects
#positionX
#positionY
#positionZ
#positionW
#rotationX
#rotationY
#rotationZ
#scaleX
#scaleY
#scaleZ
#red
#green
#blue
#alpha
#controllerTypes
#noteTracks
#sound
#materialsMaps
#materialParameters
#visibilityTracks
#hideGeometry
#hideShapes
#hideLights
#hideCameras
#hideHelpers
#hideSpacewarps
#visibleObjects
#position
#rotation
#scale
#curveX
#curveY
#curveZ
#curveW
#staticValues
#hierarchy
#objects
#boneobjects
#keyableTracks
例:
|
trackviews.current.setFilter #keyableTracks
|
#keyableTracks
フィルタがオンの場合、トラック ビューにはキーフレーム コントローラが表示されます。他のすべてのコントローラはスキップされ、表示されません。
このフィルタの既定値はオフです。
<boolean>trackviews.clearFilter <string>TrackviewName <name>filterName
指定されたトラックビューから、指定されたフィルタをクリアします。
成功の場合は
true
、それ以外の場合は
false
を返します。
filterName には、
setFilter
に指定可能な引数としてリストされている名前のいずれかを指定することができます。
<fpvalue>trackviews.pickTrackDlg()
pickTrackDlg
には可変個の引数があります。
このメソッドは[トラック ビュー選択]ダイアログ ボックスを表示し、ユーザがトラックを選択して[OK]をクリックしたときには TrackViewPick 値、[キャンセル]をクリックしたときには undefined を返します。
オプションの #multiple 引数を渡した場合は、ダイアログ ボックスで複数のトラックを選択でき、単独の値ではなく TrackViewPick 値の配列が返されます。
<boolean>trackviews.exists <fpvalue>name or index
指定されたトラックビューが存在するかどうかを示すブール値を返します。3ds Max 8 以降 で使用可能です。
<boolean>trackviews.isOpen <fpvalue>nameorindex
指定されたトラックビューが開いているかどうかを示すブール値を返します。
有効なトラックビューを引数が示さない場合は、ランタイム エラーが発生します。これを回避するには、最初に
trackviews.exists()
を使用して、要求された TrackView が有効であることを確認する必要があります。
例:
|
trackviews.isopen "something"
-- ランタイム エラー: その名前のトラックビューが見つかりませんでした。
trackviews.isopen 99999
-- ランタイム エラー: そのインデックスのトラックビューが見つかりませんでした。
trackviews.iscurrent 99999
-- ランタイム エラー: そのインデックスのトラックビューが見つかりませんでした。
trackviews.exists "something"
--> false
trackviews.exists 1
--> false
trackviews.exists 0
--> false
trackviews.open "something" -- トラック ビューを作成します。
--> true
trackviews.exists "something"
--> true
trackviews.exists 1
--> true
|
<boolean>trackviews.openLastUsedTrackView()
現在のトラックビューが閉じている場合は、そのトラックビューを開きます。
<boolean>trackviews.isCurrent <fpvalue>name or index
最後に使用されたトラックビューであるかどうかを示すブール値を返します。
<boolean>trackviews.setCurrent <fpvalue>name or index
指定したトラックビューを現在のトラックビューに設定します。正常に終了した場合は、true を返します。
Mixin インタフェース: (trackviews.current)
TrackView
[Mixin インタフェース] は、[トラック ビュー]ダイアログ ボックスの機能へのアクセスを提供します。これは、
trackviews
コア インタフェースの
.current
プロパティ、およびこのページで前述したいくつかのメソッドによって返されます。
プロパティ:
指定したトラックビューのユーザ インタフェース機能を公開する ui [Mixin インタフェース] を返します。
例:
|
trackviews.currentTrackView.ui
--> <MixinInterface:ui>
|
.modifySubTree : boolean : Read|Write
[サブツリーを編集]状態を取得/設定します。true の場合、変更は子に影響します。
.modifyChildren : boolean : Read|Write
.modifySubTree
のエイリアス
例:
|
trackviews.current.modifyChildren = true
|
.interactiveUpdate : boolean : Read|Write
[インタラクティブ更新]状態を取得/設定します。
true
に設定した場合、ビューポートはインタラクティブに再描画され、キーはトラック ビュー内を移動します。
false
に設定した場合、更新はマウスを離すまで中断されます。
例:
|
trackviews.current.interactiveUpdate = true
|
.syncTime: boolean : Read|Write
Synchronize Time モードを取得/設定します。
true
に設定した場合は、クリックおよびドラッグを行っている間のマウス位置の値に現在のフレームが同期されます。キーの移動、キーの追加、時間の選択、時間のスケール、キーのスケール、時間の挿入、曲線の描画など、ほとんどのマウス操作が同期の対象になります。ただし、接線ハンドルを調整した場合は、ハンドルのフレームに同期されません。このモードを使用すると、描画している曲線が視覚的にフィードバックされるため、簡単に曲線を描画できます。
例:
|
trackviews.current.syncTime = true
|
.freezeSelKeys : boolean : Read|Write
選択されたキーのフリーズを取得/設定します。
.freezeNonSelCurves : boolean : Read|Write
選択されていない曲線のフリーズを取得/設定します。
.showNonSelCurves : boolean : Read|Write
選択されていない曲線の可視性を取得/設定します。
.showTangents : enum : Read|Write
showTangents enums: { #none | #selected | #all }
指定された接線タイプの可視性を取得/設定します。
例:
|
trackviews.current.showTangents = #none --すべての接線タイプを非表示にします。
trackviews.current.showTangents = #selected --選択された接線タイプだけを表示します。
trackviews.current.showTangents = #all --すべての接線タイプを表示します。
|
.showFrozenKeys : boolean : Read|Write
フリーズされたキーの可視性を取得/設定します。
.useSoftSelect : boolean : Read|Write
キー ソフト選択の使用を取得/設定します。
.softSelectRange : time : Read|Write
キー ソフト選択の範囲を取得/設定します。
.softSelectFalloff : float : Read|Write
キー ソフト選択のフォールオフを取得/設定します。
.autoExpandSelectedOnly : boolean : Read|Write
選択されたオブジェクトのトラックの自動展開モードを取得/設定します。
.autoExpandChildren : boolean : Read|Write
子の自動展開モードを取得/設定します。
.autoExpandTransforms : boolean : Read|Write
変換トラックの自動展開モードを取得/設定します。
.autoExpandObjects : boolean : Read|Write
オブジェクトの自動展開モードを取得/設定します。
.autoExpandModifiers : boolean : Read|Write
モディファイヤの自動展開モードを取得/設定します。
.autoExpandMaterials : boolean : Read|Write
マテリアルの自動展開モードを取得/設定します。
.autoExpandXYZ : boolean : Read|Write
X、Y、Z サブトラックの自動展開モードを取得/設定します。
.autoSelectAnimated : boolean : Read|Write
アニメートされたトラックの自動選択モードを取得/設定します。
.autoSelectPosition : boolean : Read|Write
位置トラックの自動選択モードを取得/設定します。
.autoSelectRotation : boolean : Read|Write
回転トラックの自動選択モードを取得/設定します。
.autoSelectScale : boolean : Read|Write
スケール トラックの自動選択モードを取得/設定します。
.autoSelectXYZ : boolean : Read|Write
X、Y、Z サブトラックの自動選択モードを取得/設定します。
.autoScrollToRoot : boolean : Read|Write
ルートへの自動スクロール モードを取得/設定します。
.autoScrollToSelected : boolean : Read|Write
選択への自動スクロール モードを取得/設定します。
.manualNavigation : boolean : Read|Write
手動ナビゲーション モードを取得/設定します。
.rootTrack: maxObject : Read|Write
ルート トラックを取得/設定します。このプロパティを maxObject 値に設定すると、指定されたオブジェクトがトラックビューのルート(ワールド)ノードになるため、新しいルートとその子に属しているトラックだけが表示されます。
.scaleValuesOrigin : float : Read|Write
値スケールの原点を取得/設定します。値をスケール モードの場合、これは茶色の横線で表されます。
.editMode : enum : Read|Write
editMode enums : {#editKeys|#editTime|#editRanges|#positionRanges|#editFCurves}
トラックビュー編集モードを取得/設定します。
メソッド:
トラックビューの名前を文字列で返します。
<void>setName <string>name
トラックビューの名前を指定された文字列に設定します。
トラックビューのトラック数を返します。
トラックビュー内の選択されたトラック数を返します。
<boolean>canAssignController()
コントローラを現在の選択に割り当てることができる場合は
true
を返します。
<void>assignControllerDialog()
[コントローラを割り当て]ダイアログ ボックスを開きます。
<boolean>assignController <maxObject>controller
指定されたコントローラを現在選択されているトラックに割り当てます。正常に終了した場合、
true
を返します。
<void>showControllerTypes <boolean>state
コントローラ タイプの表示を使用可能/使用不可能にします。
トラックビューのトラックを展開します。
選択されたトラックでズームします。
<void>zoomOnTrack <maxObject>parent <index>subNum
指定されたオブジェクトの指定されたインデックスを持つ subAnim トラックでズームします。
<maxObject>getTrack <index>index
インデックスで指定されたトラックを返します。
<maxObject>getParent <index>index
インデックスで指定されたトラックの親を返します。
<maxObject>getSelected <index>index
インデックスで指定されたトラックの選択されたトラックを返します。
<maxObject>getParentOfSelected <index>index
インデックスで指定されたトラックの選択されたトラックの親を返します。
<index>getSelectedSubNum <index>index
インデックスで指定されたトラックの選択されたトラックの子の数を返します。
<index>getIndex <maxObject>object
指定されたオブジェクトのインデックスを返します。
<boolean>selectTrackByIndex <index>index <boolean>clearSelection
指定されたインデックスを持つトラックを選択します。clearSelection が true として指定された場合、以前の選択をすべてクリアします。正常に終了した場合、
true
を返します。
<boolean>selectTrack <maxObject>object <boolean>clearSelection
指定されたオブジェクトを選択します。clearSelection が true として指定された場合、以前の選択をすべてクリアします。正常に終了した場合、
true
を返します。
<boolean>setFilter <name>FilterName
指定されたフィルタを設定します。指定可能な フィルタ名は、「インタフェース: trackviews」セクションの setFilter のものと同じです。
指定されたフィルタをクリアします。指定可能なフィルタ名は、「インタフェース: trackviews」セクションの setFilter のものと同じです。
<void>setEditMode <enum>mode
mode enums: {#editKeys|#editTime|#editRanges|#positionRanges|#editFCurves}
トラックビュー編集モードを設定します。
<enum>getEditMode()
getEditMode enums: {#editKeys|#editTime|#editRanges|#positionRanges|#editFCurves}
トラックビュー編集モードを返します。
トラックビューが現在のトラックビューの場合、true を返します。
トラックビューを現在のトラックビューにします。
<void>openUtilityDialog()
[トラックビュー ユーティリティ]ダイアログ ボックスを開きます。
<void>launchUtility <string>name
指定されたユーティリティを起動します。
<void>closeUtility <string>name
指定されたユーティリティを閉じます。
使用可能なユーティリティの数を返します。
<string>utilityName <index>index
指定されたインデックスを持つユーティリティの名前を返します。
<void>setTangentType <enum>type [effect:<enum>]
type enums: {#smooth|#linear|#step|#fast|#slow|#custom|#flat}
effect enums: {#allSelKeys|#allKeys|#allKeysInSelTracks|#selKeysInSelTracks}
effect default value: #allSelKeys
指定されたキーの接線タイプを指定されたタイプに設定します。
<void>setInTangentType <enum>type [effect:<enum>]
type enums: {#smooth|#linear|#step|#fast|#slow|#custom|#flat}
effect enums: {#allSelKeys|#allKeys|#allKeysInSelTracks|#selKeysInSelTracks}
effect default value: #allSelKeys
指定されたキーのイン接線タイプを指定されたタイプに設定します。
<void>setOutTangentType <enum>type [effect:<enum>]
type enums: {#smooth|#linear|#step|#fast|#slow|#custom|#flat}
effect enums: {#allSelKeys|#allKeys|#allKeysInSelTracks|#selKeysInSelTracks}
effect default value: #allSelKeys
指定されたキーのアウト接線タイプを指定されたタイプに設定します。
ルート トラックを復元します。
リストを更新します。
Mixin インタフェース: (trackviews.current.ui)
ui
[Mixin インタフェース] は、トラックビューのユーザ インタフェース設定へのアクセスを提供します。これは、
trackview
MixinInterface の
.ui
プロパティによって返されます。
プロパティ:
トラックビューのウィンドウ ハンドルが含まれます。読み込み専用です。
.layoutName : string by value : Read
トラックビューのレイアウト名が含まれます。読み込み専用です。
.menuBar : string by value : Read|Write
トラックビューのメニュー バー名を取得/設定します。
例:
|
trackviews.current.ui.hwnd --セッション間で異なります。
--> 855006
trackviews.current.ui.layoutName
--> "Function Curve Layout"
trackviews.current.ui.menuBar
--> "Track View - Curve Editor - Menu Bar"
|
関数曲線エディタには 2 つのクアッド メニューが用意されており、カスタマイズすることができます。
.controllerQuadMenu : string by value : Read|Write
既存のメニュー名に設定した場合、コントローラ ウィンドウを右クリックすると controllerQuadMenu がポップアップされます。
.keyQuadMenu : string by value : Read|Write
既存のメニュー名に設定した場合、キー ウィンドウをクリックすると keyQuadMenu がポップアップされます。
例:
|
trackviews.current.ui.keyQuadMenu = "My Key Quad"
|
これらのメニューはレイアウトとともに保存されるため、メニューを変更してレイアウトを保存すれば、その設定も保存されます。これにより、各レイアウトに個別のメニュー セットを作成できます。
.showMenuBar : bool : Read|Write
メニュー バーの可視性を取得/設定します。
.showScrollBars : bool : Read|Write
スクロール バーの可視性を取得/設定します。
.showTrackWindow : bool : Read|Write
トラック ウィンドウの可視性を取得/設定します。
.showKeyWindow : bool : Read|Write
キー ウィンドウの可視性を取得/設定します。
.showTimeRuler : bool : Read|Write
タイム ルーラの可視性を取得/設定します。
.showKeyableIcons : bool : Read|Write
true
に設定した場合、キー操作可能アイコンがコントローラの横に表示されます。アイコンをクリックすると、[セット キー]によって特定のトラックにキーを設定するかどうかの決定に使われる、キー操作可能状態が切り替わります。showKeyableIcons
状態はレイアウトとともに保存されるため、設定をオンにしてレイアウトを再保存すると、次にレイアウトが使用されるときに元に戻ります。
例:
|
trackviews.current.ui.showKeyableIcons = true
|
.showCustomIcons : bool : Read|Write
true
に設定した場合、トラックの横にあるアイコンが ClassIcons.dat ファイルから取得されます。つまり、オブジェクト、モディファイヤ、コントローラ プラグイン単位に一意のアイコンを指定することができます。
例:
|
trackviews.current.ui.showCustomIcons = true
|
showUnlockedIcons : bool : Read|Write
true
に設定した場合、トラックの横にロック アイコンが表示されます。
このアイコンには、トラックがロックされていないときには開いたカギ、トラックがロックされているときには閉じられたカギが表示されます。
false に設定すると、これらのアイコンは表示されませんが、トラックがロックされている場合にはトラック名の右側に文字(Locked)が表示されます。
3ds Max 2010 以降 で使用可能です。
例:
|
trackviews.current.ui.showUnlockedIcons = true
|
メソッド:
ツールバーの数を返します。
<bool>addToolbar <string>name
指定された名前のツールバーを追加します。
<bool>deleteToolbar <fpvalue>name or index
名前またはインデックスを基にしてツールバーを削除します。
<string>getToolbarName <index>index
指定されたインデックスを持つツールバーの名前を返します。
<bool>isToolbarVisible <string>name
指定された名前を持つツールバーの可視性を返します。
<void>showToolbar <string>name
指定された名前を持つツールバーを表示します。
<void>hideToolbar <string>name
指定された名前を持つツールバーを非表示にします。
すべてのツールバーを表示します。
すべてのツールバーを非表示にします。
<void>saveCurrentLayout()
現在のトラックビューのレイアウトを保存します。
<void>saveLayout <string>name
指定された名前のトラックビューのレイアウトを保存します。
<void>loadLayout <string>name
指定された名前のトラックビューのレイアウトを読み込みます。
レイアウトの数を返します。
<string>getLayoutName <index>index
指定されたインデックスを持つレイアウトのレイアウト名を返します。