ジャンプ先: 概要. 戻り値. フラグ. Python 例.

概要

floatSlider2( [string] , [annotation=string], [backgroundColor=[float, float, float]], [changeCommand1=string], [changeCommand2=string], [defineTemplate=string], [docTag=string], [dragCallback=script], [dropCallback=script], [enable=boolean], [enableBackground=boolean], [enableKeyboardFocus=boolean], [exists=boolean], [fullPathName=boolean], [height=int], [highlightColor=[float, float, float]], [isObscured=boolean], [manage=boolean], [maximum=float], [minimum=float], [noBackground=boolean], [numberOfPopupMenus=boolean], [parent=string], [polarity=int], [popupMenuArray=boolean], [positionControl1=string], [positionControl2=string], [preventOverride=boolean], [statusBarMessage=string], [useTemplate=string], [value1=float], [value2=float], [values=[float, float]], [visible=boolean], [visibleChangeCommand=script], [width=int])

注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。

floatSlider2 は、取り消し可能、照会可能、および編集可能です。

このコマンドは 2 つのハンドルを持つ浮動小数点スライダを作成します。2 つのハンドルは互いに交わらないように配置されます。よって、値を調整すると、ハンドル 1 の値は必ずハンドル 2 の値以下となります。各ハンドルには、ハンドルが動いたときに発行され、setAttr コマンド経由などでプラグの値の更新に使用できる MEL コマンドを関連付けることもできます。また、ハンドルの現在値を表示する浮動小数点のテキストフィールドも関連付けることができます。

注: floatSlider2 ウィジェットが現在サポートしているのは、垂直(columnLayout)方向だけです。

戻り値

string作成または修正されたポート名

照会モードでは、戻り値のタイプは照会されたフラグに基づきます。

フラグ

annotation, backgroundColor, changeCommand1, changeCommand2, defineTemplate, docTag, dragCallback, dropCallback, enable, enableBackground, enableKeyboardFocus, exists, fullPathName, height, highlightColor, isObscured, manage, maximum, minimum, noBackground, numberOfPopupMenus, parent, polarity, popupMenuArray, positionControl1, positionControl2, preventOverride, statusBarMessage, useTemplate, value1, value2, values, visible, visibleChangeCommand, width
ロング ネーム(ショート ネーム) 引数タイプ プロパティ
annotation(ann) string createqueryedit
コントロールに文字列値で注釈を付けます。
backgroundColor(bgc) [float, float, float] createqueryedit
コントロールのバックグラウンド カラーです。引数は、赤、緑、青のカラー成分に対応しています。それぞれの成分の値は、0.0~1.0 です。
backgroundColor を設定する場合、enableBackground を false に指定していない限り、バックグラウンドは自動的に有効になります。
changeCommand1(cc1) string createedit
ハンドル 1 と関連付けられ、ハンドルの値が変更されるごとに発行されるコマンドです(値 -hv/handleValue フラグによって変更された場合は除く)。コマンドの例としては「setAttr nurbsSphere1.tx」が挙げられます。ハンドル 1 の値が 0.23 に動かされると、スライダはコマンド「setAttr nurbsSphere1.tx 0.23;」を発行します。
changeCommand2(cc2) string createedit
ハンドル 2 と関連付けられ、ハンドルの値が変更されるごとに発行されるコマンドです(値 -hv/handleValue フラグによって変更された場合は除く)。コマンドの例としては「setAttr nurbsSphere1.tx」が挙げられます。ハンドル 2 の値が 0.23 に動かされると、スライダはコマンド「setAttr nurbsSphere1.tx 0.23;」を発行します。
defineTemplate(dt) string create
他の任意のフラグと引数を解析し、かつ引数で指定したコマンド テンプレートに追加するモードに、コマンドのモードを変更します。 templateName が現在のテンプレートとして設定されていれば、その後コマンドが実行されるたびに、この引数が既定の引数として使用されます。
docTag(dtg) string createqueryedit
コントロールにドキュメンテーション フラグを追加します。ドキュメンテーション フラグは、ディレクトリ構造になっています。 (例: -dt render/multiLister/createNode/material)
dragCallback(dgc) script createedit
中マウス ボタンを押すとコールされるコールバックを追加します。MEL バージョンのコールバックの書式は次のとおりです。

global proc string[] callbackName(string $dragControl, int $x, int $y, int $mods)

proc はドロップ先に転送される文字配列を返します。規則により、配列の先頭文字列はユーザ設定可能なメッセージ タイプを表しています。アプリケーションで定義されたドラッグ元のコントロールは、このコールバックを無視する可能性があります。$mods で、キー モディファイアである CTRL と SHIFT をテストできます。 有効な値は、0 == モディファイアなし、1 == SHIFT、2 == CTRL、3 == CTRL + 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 createedit
ドラッグ&ドロップ操作をドロップ位置で解放したときにコールされるコールバックを追加します。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'」)。

enable(en) boolean createqueryedit
コントロールの有効、無効です。既定では true に設定されていて、コントロールは有効になっています。false を指定するとコントロールはグレー表示になって無効になります。
enableBackground(ebg) boolean createqueryedit
コントロールのバックグラウンド カラーを有効にします。
enableKeyboardFocus(ekf) boolean createqueryedit
有効にすると、[Tab]キーを押してコントロールに移動し、キーボードまたはマウスで値を選択することができます。このフラグは通常、編集(Edit)コントロールやリスト(List)コントロールなど、既定で表示されるコントロールのフォーカス サポートをオフにする場合に使用します。無効にすると、テキスト フィールド内のテキストをマウスで選択することは引き続きできますが、コピーすることはできなくなります(Linux で[中クリックして貼り付け](Middle Click Paste)が有効になっている場合は除きます)。
exists(ex) boolean create
指定したオブジェクトが存在するかどうかを返します。他のフラグは無視されます。
fullPathName(fpn) boolean query
すべての親を含むウィジェットのフル パス名を返します。
height(h) int createqueryedit
コントロールの高さです。コントロールは親のレイアウトの条件によって無効にされない限り、このサイズを保持しようとします。
highlightColor(hlc) [float, float, float] createqueryedit
コントロールのハイライト カラーです。引数は、赤、緑、青のカラー成分に対応しています。それぞれの成分の値は、0.0~1.0 です。
isObscured(io) boolean query
コントロールが実際に表示されるかどうかを返します。コントロールは、次の場合に隠れた状態になります。非表示の場合、別のコントロールで(完全に、または部分的に)ブロックされた場合、コントロールまたは親のレイアウトを制御できない場合、あるいはコントロールのウィンドウが非表示またはアイコン化されている場合。
manage(m) boolean createqueryedit
コントロールの状態を管理します。管理されていないコントロールは表示されず、画面の領域も占有しません。既定では、コントロールは管理できるように作成されます。
maximum(max) float createqueryedit
スライダの上限です。既定値は 10.0 です。-polarity が指定されていない場合は、最大値はスライダの(右)上端に表示されます。注: 現在の最小値以下の最大値を設定することはできません。
minimum(min) float createqueryedit
スライダの下限です。既定値は 0.0 です。-polarity が指定されていない場合は、最小値はスライダの下端に表示されます。注: 現在の最大値以上の最小値を設定することはできません。
noBackground(nbg) boolean createedit
コントロールのバックグラウンドをクリア/リセットします。バックグラウンドは、true を渡すと一切描画されず、false を渡すと描画されます。このフラグの状態は、このコントロールの子に継承されます。
numberOfPopupMenus(npm) boolean query
このコントロールにアタッチされるポップアップ メニューの数を返します。
parent(p) string createquery
コントロールの親のレイアウトです。
polarity(pol) int createqueryedit
スライダの極性を指定します。0 (既定)の場合、(-minimum フラグで指定される)最小値がスライダの下端、最大値が(右)上に表示され、スライダのハンドルをスライダの上方向に動かすと値が増加します。極性を 1 に指定した場合は反対の動作となります。最大値が下端、最小値が(右)上に表示され、ハンドルを上方向に動かすと値が減少します。
popupMenuArray(pma) boolean query
このコントロールにアタッチされる全ポップアップ メニューの名前を返します。
positionControl1(pc1) string createedit
このスライダのハンドル 1 と関連付けられたコントロールの名前を設定します(存在する場合)。コントロールは「floatField」となります。コントロールは常にハンドルの値を表示し、ハンドルが動かされると更新されます。
positionControl2(pc2) string createedit
このスライダのハンドル 2 と関連付けられたコントロールの名前を設定します(存在する場合)。コントロールは「floatField」となります。コントロールは常にハンドルの値を表示し、ハンドルが動かされると更新されます。
preventOverride(po) boolean createqueryedit
true の場合、コントロールの右マウス ボタン メニューを使用したコントロール アトリビュートのオーバーライドは無効になります。
statusBarMessage(sbm) string createedit
マウスがコントロール上にある場合にステータス バーに表示する追加の文字列です。
useTemplate(ut) string create
コマンドに、現在のものとは異なるコマンド テンプレートを使用するように強制します。
value1(v1) float createqueryedit
ハンドル 1 の値です。ハンドル 1 を必ずハンドル 2 以下にするため、指定した値が大きすぎるとエラーが発生します。両方のハンドルを同時に設定する場合は、-values フラグを使用してください。
value2(v2) float createqueryedit
ハンドル 2 の値です。ハンドル 2 を必ずハンドル 1 以上にするため、指定した値が小さすぎるとエラーが発生します。両方のハンドルを同時に設定する場合は、-values フラグを使用してください。
values(vs) [float, float] createedit
ハンドル 1 と 2 の値を同時に設定します。1 番目の引数はハンドル 1 に適用されますので、2 番目の(ハンドル 2 の)引数以下にします。1 番目の引数が 2 番目の引数より大きいと、エラーが発生します。
visible(vis) boolean createqueryedit
コントロールの可視の状態です。既定では、コントロールは表示されます。コントロールの実際の外見も、その親レイアウトの可視の状態によって異なることに注意してください。
visibleChangeCommand(vcc) script createqueryedit
コントロールの可視の状態が変更されたときに実行されるコマンドです。
width(w) int createqueryedit
コントロールの幅を指定します。コントロールは親のレイアウトの条件によって無効にされない限り、このサイズを保持しようとします。

フラグはコマンドの作成モードで表示できます フラグはコマンドの編集モードで表示できます
フラグはコマンドの照会モードで表示できます フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。

Python 例

import maya.cmds as cmds

############ floatSlider2 example #############
#
# First, create one object to control with the slider. We will use one
# slider handle to control the startSweep and the other the endSweep so
# that the sphere can be made to open and close via the handles.
#
cmds.sphere()

# Create a window containing a floatSlider2 (two handled float slider).
# The window also contains two floating-point textfields.
#    - Moving the handle updates the associated textfield.
#    - Typing a value into a textfield moves the associated handle.
#
cmds.window()
cmds.columnLayout()

ff1    = cmds.floatField()
slider = cmds.floatSlider2()
ff2    = cmds.floatField()

# Hook the slider handles up to drive the textfields. When you move the
# slider handles, the textfields will update to display the
# position of the handle.
#
cmds.floatSlider2( slider, edit=True, positionControl1=ff1, positionControl2=ff2 )

# Set the slider direction (polarity) and upper limit.
#
cmds.floatSlider2( slider, edit=True, polarity=1, max=360 )

# Connect the slider so that the handles drive the sweep angles of
# the NURBS sphere.
#
cmds.floatSlider2(slider, edit=True, cc1='setAttr makeNurbSphere1.endSweep', cc2='setAttr makeNurbSphere1.startSweep' )

# Display the window.
#
cmds.showWindow()