移動先: 概要 戻り値 フラグ. Python 例.
palettePort(
string
, [actualTotal=int], [annotation=string], [backgroundColor=[float, float, float]], [changeCommand=script], [colorEditable=boolean], [colorEdited=script], [defineTemplate=string], [dimensions=[int, int]], [docTag=string], [dragCallback=script], [dropCallback=script], [editable=boolean], [enable=boolean], [exists=boolean], [height=int], [hsvValue=[int, int, float, float, float]], [isObscured=boolean], [manage=boolean], [numberOfPopupMenus=boolean], [parent=string], [popupMenuArray=boolean], [preventOverride=boolean], [redraw=boolean], [rgbValue=[int, float, float, float]], [setCurCell=int], [topDown=boolean], [transparent=int], [useTemplate=string], [visible=boolean], [width=int])
注意: オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。
palettePort は 「元に戻す」が可能、「照会」が可能、「編集」が可能 です。
カラー セルの配列を作成します。作業セッション中に管理するカラーの格納と取り出しができます。
string | 作成された palettePort の名前。 |
戻り値の型は照会モードでは照会フラグが基になります。
actualTotal, annotation, backgroundColor, changeCommand, colorEditable, colorEdited, defineTemplate, dimensions, docTag, dragCallback, dropCallback, editable, enable, exists, height, hsvValue, isObscured, manage, numberOfPopupMenus, parent, popupMenuArray, preventOverride, redraw, rgbValue, setCurCell, topDown, transparent, useTemplate, visible, 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'」)。
|
|
dimensions(dim)
|
[int, int]
|

|
|
actualTotal(at)
|
int
|

|
|
パレット エントリの実際の数を設定します。この数は 0 より大きくする必要がありますが、dimensions フラグで指定したパレット エントリの最大数より大きくしてはなりません。
|
|
topDown(td)
|
boolean
|
|
|
このフラグを true にすると、最初のエントリが左下ではなく左上に表示されます。
|
|
editable(ed)
|
boolean
|
 
|
|
true の場合、ユーザはカレント カラーを変更できます。
|
|
colorEditable(ced)
|
boolean
|
 
|
|
そうでない場合、ユーザはカレント インデックスのカラーを修正できます。
|
|
redraw(r)
|
boolean
|

|
|
rgbValue(rgb)
|
[int, float, float, float]
|
 
|
|
指定したセルのカラーを、RGB フォーマットを使用して設定します。照会すると、カレントのセルのカラーを返します。
|
|
hsvValue(hsv)
|
[int, int, float, float, float]
|
 
|
|
指定したセルのカラーを、HSV フォーマットを使用して設定します。照会すると、カレントのセルのカラーを返します。
|
|
transparent(t)
|
int
|
 
|
|
特定のセルのカラーを透明に設定します。セル値「-1」は、透明なセルがないという指定です。照会すると、透明になっているカレントのセルを返します。
|
|
setCurCell(scc)
|
int
|
 
|
|
配列内のカレントのセルを特定のインデックスに設定します。検索が実行されると、カレントのセルを返します。
|
|
colorEdited(ce)
|
script
|

|
|
パレットのカラーが編集されると、このコマンド文字列を実行します。
|
|
changeCommand(cc)
|
script
|

|
|
パレットのカラーが変更されると、このコマンド文字列を実行します。
|
|
: コマンドの作成モードで使用可能なフラグ
|
: コマンドの編集モードで使用可能なフラグ
|
: コマンドの照会モードで使用可能なフラグ
|
: タプルまたはリストとして渡された複数の引数を持てるフラグ
|
import maya.cmds as cmds
cmds.window()
cmds.frameLayout(labelVisible=0)
# create a palette of 20 columns and 15 rows
cmds.palettePort( 'palette', dim=(20, 15) )
# select cell #30
cmds.palettePort( 'palette', edit=True, scc=30 )
# return RGB value for this cell
cmds.palettePort( 'palette', query=True, rgb=True )
# make cell #100 transparent and blue
cmds.palettePort( 'palette', edit=True, transparent=100, rgb=(100, 0.0, 0.0, 1.0) )
cmds.palettePort( 'palette', edit=True, redraw=True )
# returns the current transparent cell (there can be only one)
cmds.palettePort( 'palette', query=True, transparent=True )
cmds.showWindow()