移動先: 概要 戻り値 フラグ. Python 例.
timeControl(
string
, [animCurveNames=boolean], [animLayerFilterOptions=string], [annotation=string], [backgroundColor=[float, float, float]], [beginScrub=boolean], [defineTemplate=string], [displaySound=boolean], [docTag=string], [dragCallback=script], [dropCallback=script], [enable=boolean], [endScrub=boolean], [exists=boolean], [forceRefresh=boolean], [globalTime=boolean], [height=int], [isObscured=boolean], [mainListConnection=string], [manage=boolean], [numberOfPopupMenus=boolean], [parent=string], [popupMenuArray=boolean], [pressCommand=script], [preventOverride=boolean], [range=boolean], [rangeArray=boolean], [rangeVisible=boolean], [releaseCommand=script], [repeatChunkSize=float], [repeatOnHold=boolean], [resample=boolean], [showKeys=string], [snap=boolean], [sound=string], [tickSize=int], [useTemplate=string], [visible=boolean], [waveform=string], [width=int])
注意: オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。
timeControl は 「元に戻す」が可能、「照会」が可能、「編集」が可能 です。
このコマンドは、カレント タイムを変更したり、
キーフレームを表示/編集したり、サウンドを表示/編集したりできる
コントロールを作成します。
注: 作成できる timeControl は 1 つのみです。起動時に Maya が作成する timeControl は、
グローバル文字列変数 $gPlayBackSlider からアクセスできます。
また、timeControl を削除してはいけません。
string | 作成または編集されたコントロールの名前 |
戻り値の型は照会モードでは照会フラグが基になります。
animCurveNames, animLayerFilterOptions, annotation, backgroundColor, beginScrub, defineTemplate, displaySound, docTag, dragCallback, dropCallback, enable, endScrub, exists, forceRefresh, globalTime, height, isObscured, mainListConnection, manage, numberOfPopupMenus, parent, popupMenuArray, pressCommand, preventOverride, range, rangeArray, rangeVisible, releaseCommand, repeatChunkSize, repeatOnHold, resample, showKeys, snap, sound, tickSize, useTemplate, visible, waveform, width
ロング ネーム(ショート ネーム) |
引数型 |
プロパティ |
exists(ex)
|
boolean
|
|
|
指定したオブジェクトが存在するかどうかによって、
true または false を返します。他のフラグは無視されます。
|
|
defineTemplate(dt)
|
string
|
|
|
他の任意のフラグと引数を解析し、かつ引数で指定したコマンド テンプレートに
追加するモードに、コマンドのモードを変更します。
templateName がカレントのテンプレートとして設定されていれば、
その後コマンドが実行されるたびに、この引数がデフォルトの引数として使用されます。
|
|
useTemplate(ut)
|
string
|
|
|
コマンドに、カレント以外のコマンド テンプレートの使用を強制します。
|
|
parent(p)
|
string
|

|
|
enable(en)
|
boolean
|
 
|
|
コントロールの有効、無効です。デフォルトでは true に設定されていて、コントロールは有効になっています。false を指定すると
コントロールはグレー表示になって無効になります。
|
|
width(w)
|
int
|
 
|
|
コントロールの幅を指定します。コントロールは親のレイアウトの条件によって無効にされない限り、このサイズを保持しようとします。
|
|
height(h)
|
int
|
 
|
|
コントロールの高さです。コントロールは親のレイアウトの条件によって無効にされない限り、このサイズを保持しようとします。
|
|
visible(vis)
|
boolean
|
 
|
|
コントロールの可視の状態です。デフォルトでは、コントロールは表示されます。コントロールの実際の外見も、その親レイアウトの可視の状態によって
異なることに注意してください。
|
|
isObscured(io)
|
boolean
|
|
|
コントロールが実際に表示されるかどうかを返します。
コントロールは、次の場合に隠れた状態になります。
非表示の場合、別のコントロールで(完全に、または部分的に)ブロックされた場合、
コントロールまたは親のレイアウトを制御できない場合、あるいは
コントロールのウィンドウが非表示またはアイコン化されている場合。
|
|
manage(m)
|
boolean
|
 
|
|
コントロールの状態を管理します。管理されていないコントロールは表示されず、画面の領域も占有しません。デフォルトでは、コントロールは管理できるように作成されます。
|
|
numberOfPopupMenus(npm)
|
boolean
|
|
|
このコントロールにアタッチされるポップアップ メニューの数を返します。
|
|
popupMenuArray(pma)
|
boolean
|
|
|
このコントロールにアタッチされる全ポップアップ メニューの名前を返します。
|
|
preventOverride(po)
|
boolean
|
 
|
|
true の場合、コントロールのコントロールは親のレイアウトの条件によって無効にされ右マウス ボタン メニューを使用した
コントロール アトリビュートのオーバーライドは無効です。
|
|
annotation(ann)
|
string
|
 
|
|
backgroundColor(bgc)
|
[float, float, float]
|

|
|
コントロールのバックグラウンド カラーです。引数は、赤、緑、青のカラー成分に対応しています。それぞれの成分の値は、0.0~1.0 です(Windows のみのフラグです)。
|
|
docTag(dtg)
|
string
|
 
|
|
コントロールにドキュメンテーション フラグを追加します。ドキュメンテーション フラグは、
階層のようなディレクトリ構造になっています。
例: -dt render/multiLister/createNode/material
|
|
dragCallback(dgc)
|
script
|

|
|
中マウス ボタンを押すと呼び出されるコールバックを追加します。MEL バージョンのコールバックの書式は次のとおりです。
global proc string[] callbackName(string $dragControl, int $x, int $y, int $mods)
proc はドロップ先に転送される文字配列を返します。
規則により、配列の先頭文字列はユーザ設定可能なメッセージ タイプを表しています。アプリケーションで定義されたドラッグ元のコントロールは、このコールバックを無視する可能性があります。$mods で、キー モディファイアである CTL と SHIFT をテストできます。有効な値は、0 == モディファイアなし、1 == SHIFT、2 == CTL、3 == CTL + SHIFT です。
Python でも同様ですが、コールバックの指定方法が 2 つあります。お勧めの方法は、引数として Python 関数オブジェクトを渡すことです。
この場合、Python コールバックの書式は次のようになります。
def callbackName( dragControl, x, y, modifiers ):
この引数の値は、上記の MEL バージョンの引数と同じです。
Python でコールバックを指定するもう 1 つの方法では、実行する文字列を指定します。この場合、Python の標準的なフォーマット演算子を介して文字列に値が代入されます。このフォーマットの値は、キー「dragControl」、「x」、「y」、「modifiers」と共に
辞書で渡されます。dragControl の値は文字列で、その他の値は整数です(コールバック文字列の例:「print '%(dragControl)s %(x)d %(y)d %(modifiers)d'」)。
|
|
dropCallback(dpc)
|
script
|

|
|
ドラッグ&ドロップ操作をドロップ位置で解放したときに呼び出されるコールバックを追加します。MEL バージョンのコールバックの書式は次のとおりです。
global proc callbackName(string $dragControl, string $dropControl, string $msgs[], int $x, int $y, int $type)
proc は、ドラッグ元から転送される文字配列を受け取ります。
msgs 配列の先頭文字列はユーザ定義のメッセージ タイプを表します。
アプリケーションで定義されたドロップ先のコントロールでは、このコールバックが無視されることがあります。$type の値は、1 == 移動、2 == コピー、3 == リンクのいずれかです。
Python でも同様ですが、コールバックの指定方法が 2 つあります。お勧めの方法は、引数として Python 関数オブジェクトを渡すことです。
この場合、Python コールバックの書式は次のようになります。
def pythonDropTest( dragControl, dropControl, messages, x, y, dragType ):
この引数の値は、上記の MEL バージョンの引数と同じです。
Python でコールバックを指定するもう 1 つの方法では、実行する文字列を指定します。この場合、Python の標準的なフォーマット演算子を介して文字列に値が代入されます。このフォーマットの値は、
キー「dragControl」、「dropControl」、「messages」、「x」、「y」、「type」と共に
辞書で渡されます。dragControl の値は文字列で、その他の値は整数です(コールバック文字列の例:「print '%(dragControl)s %(dropControl)s %(messages)r %(x)d %(y)d %(type)d'」)。
|
|
globalTime(gt)
|
boolean
|
 
|
|
true では、このウィジェットがグローバルのディペンデンシー グラフの時間を
制御および表示します。false では、このウィジェットでの時間の変更が
ディペンデンシー グラフに影響しません。照会すると、このフラグは整数を返します。
|
|
snap(sn)
|
boolean
|
 
|
|
「true」では、このウィジェットの値がカレント タイムの単位を示す整数値であるように
コンストレインされます。
「false」では、カレント タイム インジケータは「free floating」であり、
コンストレインされません。
|
|
sound(s)
|
string
|

|
|
サウンド表示ウィジェットにデータを表示する
オーディオ ディペンデンシー ノードの名前です。照会すると、このフラグは string を返します。
|
|
displaySound(ds)
|
boolean
|

|
|
サウンド表示をオフにします。照会すると、このフラグは整数を返します。
|
|
waveform(wf)
|
string
|

|
|
-displaySound が「true」の場合に、
表示するサウンドの波形の部分を定義します。有効な値は、「top」、「bottom」、「both」です。デフォルトは「top」です。照会すると、このフラグは string を返します。
|
|
resample(r)
|
boolean
|
|
|
ウィジェットに適合するように、サウンド表示を再びサンプリングします。
|
|
repeatOnHold(roh)
|
boolean
|

|
|
マウスダウン イベント時にサウンドを繰り返します。
|
|
repeatChunkSize(rcs)
|
float
|

|
|
-repeatOnHold が true の場合に繰り返す
サウンドの量(カレントの時間単位)。デフォルトは 1.0 です。
|
|
beginScrub(bs)
|
boolean
|
|
|
サウンドをスクラブするには、このウィジェットを設定します。
その後にカレント タイムが変更されると、
このウィジェットに対して「-endScrub」コマンドが発行されるまで、
「サウンド スクラブ」動作を実行します。
|
|
endScrub(es)
|
boolean
|
|
|
このウィジェットのサウンド スクラブを終了します。これでサウンド スクラブ動作が停止します。
これは、その後の「-beginScrub」フラグの前に
発行する必要があります。
|
|
showKeys(sk)
|
string
|
 
|
|
「active」を指定すると、すべてのアクティブ オブジェクトのキーフレームを
チェック マークで表示します。「none」を指定すると、チェック マークは表示されません。ほかの名前は、
選択したアトリビュートがチェック マークで表示される
チャンネル ボックス名として扱われます。デフォルトは「active」です。照会すると、このフラグは string を返します。
|
|
animCurveNames(acn)
|
boolean
|

|
|
「showKeys」が「none」以外のとき、このフラグを照会すると、
キーフレームにチェック マークがついている
animCurve すべての名前を返します。照会すると、string[] を返します。
|
|
range(rng)
|
boolean
|

|
|
タイム スライダで現在ハイライト表示されている範囲を示す
文字列を返します。10 から 20 の場合、「10:20」と返されます。タイム スライダに可視となっている範囲がない場合、
照会するとカレント タイムを範囲にしたものを返します。たとえば、「10:11」となります。これらの値はカレント タイムの単位で返されます。
|
|
rangeArray(ra)
|
boolean
|

|
|
タイム スライダで現在ハイライト表示されている範囲を示す
float 配列を返します。10 から 20 の場合、{10.0, 20.0} となります。タイム スライダに可視となっている範囲がない場合、
照会するとカレント タイムを範囲にしたものを返します。たとえば {10.0, 11.0} となります。これらの値はカレント タイムの単位で返されます。
|
|
rangeVisible(rv)
|
boolean
|

|
|
現在ハイライトされた範囲がスライダに可視になっていれば true が、
そうでなければ false を返します。
|
|
pressCommand(pc)
|
script
|

|
|
このコントロールでのマウスダウン イベント時に
実行するスクリプトです。
|
|
releaseCommand(rc)
|
script
|

|
|
このコントロールでのマウスアップ イベント時に実行するスクリプトです。
|
|
mainListConnection(mlc)
|
string
|
 
|
|
タイム スライダでコンテンツのソースとして使用される
selectionConnection オブジェクトの名前を指定します。タイム スライダは、selectionConnection オブジェクトの
項目のキーフレームのみを表示します。
|
|
animLayerFilterOptions(alf)
|
string
|
 
|
|
アニメーション レイヤを表示するときに、フィルタを適用するかどうかを指定します。
適用する場合、オプションは「allAffecting」(フィルタなし)、「active」(オブジェクト上のアクティブ レイヤのみ表示)、または「animLayerEditor」(設定をアニメーション レイヤ エディタから取得)になります。
|
|
tickSize(ts)
|
int
|
 
|
|
タイム スライダの中に描かれている
キーフレームのキー マークの幅を指定します。
この値は [1, 63] の範囲に固定されます。
|
|
forceRefresh(fr)
|
boolean
|

|
|
時間コントロール UI のリフレッシュを強制します。
|
|
: コマンドの作成モードで使用可能なフラグ
|
: コマンドの編集モードで使用可能なフラグ
|
: コマンドの照会モードで使用可能なフラグ
|
: タプルまたはリストとして渡された複数の引数を持てるフラグ
|
import maya.cmds as cmds
# To display sound in the time slider, there must first be a sound
# node in the scene. We'll create one and give it the name "ohNo".
# Note that the argument to the -file flag must be a path to a valid
# soundfile.
#
cmds.sound( file='C:/My Documents/maya/projects/default/sound/ohNo.aiff', name='ohNo' )
# To display sound in the time slider, you must specify
# the sound node to display and turn display of sound "on."
# First we need to get the name of the playback slider from
# the global mel variable called gPlayBackSlider
#
import maya.mel
aPlayBackSliderPython = maya.mel.eval('$tmpVar=$gPlayBackSlider')
cmds.timeControl( aPlayBackSliderPython, e=True, sound='ohNo', displaySound=True )
# To hear sound while scrubbing in the time slider, set the press and
# release commands to begin and end sound scrubbing.
#
cmds.timeControl( aPlayBackSliderPython,edit=True,pressCommand='cmds.timeControl(aPlayBackSliderPython,edit=True,beginScrub=True)')
cmds.timeControl( aPlayBackSliderPython,edit=True,releaseCommand='cmds.timeControl(aPlayBackSliderPython,edit=True,endScrub=True)')