Mapbutton コントロールは、クリック時に 3ds Max の[マテリアル/マップ ブラウザ](Material/Map Browser)を表示するボタンをロールアウト内に配置するために使用します。[マテリアル/マップ ブラウザ](Material/Map Browser)ダイアログ ボックスには、TextureMap のみが表示されます。
構文は次のようになります。
mapbutton <name> [<caption>] [map:<texturemap>] [images:<image_spec_array>] [toolTip:<string>] [border:<boolean>] [iconName:<filename> iconSize:<point2>]
mapbutton
項目の位置合わせの既定値は、#center
です。
例:
rollout test_mapbutton "Background" ( label sbm_lbl "Background Map:" mapbutton choosemap "<<none>>" tooltip:"Select Background Map" width:120 on choosemap picked texmap do ( environmentmap = texmap choosemap.text=classof texmap as string ) ) createDialog test_mapbutton
パラメータ
map:
map
プロパティによって初期 textureMap 値が返されてから mapbutton
を使用してテクスチャ マップを選択します。既定は undefined
です。
images:
mapbutton
にビットマップ イメージを提供するためのイメージ仕様配列です。指定すると、<label>
は無視されて、mapbutton
の内容がビットマップに置き換えられます。
形式は次のとおりです。
images:#(<image>, <maskImage>, <count_integer>, <enabled_out_image_index>, <enabled_in_image_index>, <disabled_out_image_index>, <disabled_in_image_index>)
ここでは、<image>
および <maskImage>
は、ビットマップ ファイル名の文字列でも、MAXScript ビットマップ値でもかまいません。<count_integer>
には、ビットマップ内のサブイメージの数を指定し、image_index
値には、mapbutton
の 4 つの状態にビットマップのどのサブイメージを使用するかを指定します。
例:
bm1 = render camera:$cam01 outputSize:[80,60] ... mapbutton foo images:#(bm1, undefined, 1, 1, 1, 1, 1)
これは、
mapbutton
イメージとしてレンダリングを使用します。mapbutton decay images:#("dcybtns.bmp", "dcymask.bmp", 6, 1, 4, 1, 4)
これは、ビットマップのサブ イメージ 1 と 4 を使用します。
dcybtns.bmp
およびdcymask.bmp
は、それぞれmapbutton
のオフまたはオン状態に対応しています。イメージ ボタン も参照してください。
toolTip:
mapbutton
のツールチップのテキストを指定します。指定されない場合、ツールチップは表示されません。
border:
true に設定した場合、または指定しなかった場合、mapbutton は境界線付きで描画されます。これは、3ds Max 2009 より前のバージョンでは既定値の動作でした。
false に設定すると、mapbutton は境界線なしで描画され、UI の背景が付いたものになります。mapbutton が有効になっている場合、mapbutton が押されたとき、または上にマウスが置かれたときに境界線が表示されます。
3ds Max 2009 以降で使用可能です。
iconName:
ボタンのイメージとして使用するアイコンのファイル名です。iconName が指定されている場合、キャプションは無視されます。iconSize は iconName サイズを 100% DPI スケールで指定します。指定しない場合は、既定の[24,24]が使用されます。
iconSize:
iconName で指定された、100% DPI スケールのアイコンのサイズです。
プロパティ:
<mapbutton>.map TextureMap
mapbutton
の現在のテクスチャ マップ値です。テクスチャ マップを選択していない場合は、map
パラメータによって指定されたテクスチャ マップ値です。
<mapbutton>.images Array
mapbutton
のイメージ設定の配列を設定します。このプロパティは、書き込み専用です。
例:
-- re-render, update button bm1 = render() foo.images = #(bm1, undefined, 1, 1, 1, 1, 1)
<mapbutton>.tooltipString
チェックボタンのツールチップ文字列を取得/設定します。
3ds Max 9 以降で使用可能です。
例:
rollout test "Test" ( mapbutton map_test "Map Button" tooltip:"This is a map button" ) createDialog test test.map_test.tooltip = "The tooltip has changed!"
イベント
on <mapbutton> picked <arg> do <expr>
mapbutton
選択コマンド モードで[マテリアル/マップ ブラウザ](Material/Map Browser)ダイアログ ボックスからマテリアルを選択すると呼び出されます。<arg>
引数は、選択したテクスチャ マップを含みます。[マテリアル/マップ ブラウザ](Material/Map Browser)ダイアログ ボックスをキャンセルして閉じた場合は、このハンドラは呼び出されません。
on <mapbutton> rightclick do <expr>
ボタン上で右マウス ボタンが放されたときに、呼び出されます。3ds Max 8 以降 で使用可能です。
mapButton
がスクリプト化されたマテリアルやテクスチャ マップ プラグインのロールアウトで使用され、マテリアル エディタを開いた場合、これらは他のマテリアルやマップでのサブマップ ボタンと同様に機能します。この機能には、インスタンス/コピーでのドラッグ アンド ドロップをサポートしたり、割り当てたサブマップを開く機能があります。