colorMan コア インタフェースは、MAXScript にカラー マネージャを公開します。
3ds Max では、[メイン メニュー](Main menu) > [カスタマイズ](Customize) > [ユーザ インタフェースをカスタマイズ](Customize User
Interface) > [カラー](Colors)タブを使用して、さまざまな UI 要素を変更したり、要素の彩度、値、および透明度を変更したり、カラー スキームをロードおよび保存したりすることができます。
注:カラーを変更した後は、必ず colorMan.repaintUI #repaintAll を呼び出して、変更を適用し、カスタマイズ ダイアログ ボックスの内容を反映させる必要があります。
メソッド:
<enum>colorMan.getColorSchemeType()
getColorSchemeType enums: {#customColor|#standardWindows|#windowsTheme}
現在のカラー スキーム タイプを名前値として返します。
3ds Max 2010 以降 で使用可能です。
<enum>colorMan.setColorSchemeType <enum>type
setColorSchemeType enums: {#customColor|#standardWindows|#windowsTheme}
type enums: {#customColor|#standardWindows|#windowsTheme}
カラー スキーム タイプを指定された名前に設定し、実際のカラー スキーム タイプを結果として返します。
3ds Max 2010 以降 で使用可能です。
<boolean>colorMan.useStandardWindowsColors()
3ds Max 2010 以前のバージョンでは、ウィンドウの標準カラーが使用された場合には true を、カスタム カラーが使用された場合には false を返します。
colorMan.getColorSchemeType() によって置き換えられています
colorMan.setUseStandardWindowsColors <boolean>onOff
3ds Max 2010 以前のバージョンでは、ウィンドウの標準カラーを使用するかどうかを設定しました。
colorMan.setColorSchemeType() によって置き換えられています
<boolean>colorMan.registerColor <string>color <string>name <string>category <point3>defaultColor
新しいカラーがシステムに登録されます。また、カラー マネージャのデータベースにカラーが追加され、カラー カスタマイズ UI からアクセスできるようになります。カラーが既に登録されている場合は
false 、その他の場合は true を返します。
<string>color: 登録するカラーの ID。例: #myNewColor
<string>name: カラーの名前。 例: "My Own Color"
<string>category: カラーのカテゴリ。渡した名前が既存の 3ds Max カテゴリのいずれかと一致する場合は、カラーはそのカテゴリに置かれます。一致しない場合は新しいカテゴリが作成されます。例: "Fun Gaming Colors"
<point3>defaultColor: カラーの既定値。これは、3ds Max ユーザがカラー カスタマイズ ダイアログ ボックスで[リセット](Reset)を押したときに、リセットされるカラーの値です。例: [1,0,0]
例
|
colorMan.registerColor #myNewColor "My Own Color" "Ugly Colors" [1,0,0]
|
これにより、赤の既定値を保持する #myNewColor という名前の新規カラーが登録されます。カスタマイズ UI 内のカテゴリは「Ugly Colors」、名前は「My Own Color」になります。
他のスクリプトからは、次の方法でこのカラーにアクセスできます。
|
colorMan.getColor #myNewColor
|
注: colorMan.registerColor は、¥stdplugs¥stdscripts フォルダ内のスクリプトから呼び出す必要があります。 これらのスクリプトは 3ds Max 起動時に実行されるため、カラーはすぐにカスタマイズ UI 内で使用可能になります。ユーザがこのカラーをカスタマイズすると、値は MaxColors.clr ファイルに保存されます。
<boolean>colorMan.loadColorFile <filename>file
このメソッドは、現在の UI ディレクトリから指定されたカラー ファイルをロードします。ロードが正常に終了した場合は true 、その他の場合は false を返します。
<string>file: ロードするカラー ファイルのファイル名。
注:指定したパスは、¥UI ディレクトリに相対的である必要があります。
<boolean>colorMan.saveColorFile <filename>file
このメソッドは、現在の UI ディレクトリから指定されたカラー ファイルを保存します。保存処理が正常に終了した場合は true 、その他の場合は false を返します。
<string>file: 保存するカラー ファイルのファイル名。
注:指定したパスは、¥UI ディレクトリに相対的である必要があります。
<filename>colorMan.getColorFile()
現在のカラー ファイルのファイル名を返します。
<boolean>colorMan.setColor <string>color <point3>colorValue
ID が渡されている登録済みカラーのカラー値を設定します。カラーが設定されている場合は true 、渡された ID が見つからない場合は false を返します。
<string>color: 設定するカラーを指定します。
<point3>colorValue: 設定するカラー値。
あらかじめ定義されているカラーは次のとおりです。
#background
|
すべてのコントロールおよびボタンの背景
|
#text
|
すべてのコントロールおよびボタンのテキスト
|
#activeCommand
|
コマンド モード ボタンを押したときのカラー
|
#hilight
|
3d コントロールのハイライト カラー
|
#shadow
|
3d コントロールのシャドウ カラー
|
#window
|
編集ボックス、リスト ボックス、およびその他のウィンドウの背景カラー
|
#activeCaption
|
アクティブなキャプションのカラー
|
#toolTipBackground
|
ビューポートのツール チップの背景
|
#toolTipText
|
ビューポートのツール チップのテキスト カラー
|
#hilightText
|
スタック ビュー ドロップダウン リスト内のハイライト カラー
|
#windowText
|
編集ボックス、リスト ボックス、およびその他のウィンドウで使用するカラー
|
#itemHilight
|
項目のハイライト カラー
|
#subObjectColor
|
スタック ビューのサブオブジェクト レベルをハイライトするために使用されるカラー
|
#3dDarkShadow
|
3d コントロールのダーク シャドウ カラー
|
#3dLight
|
3d コントロールのライト カラー
|
#appWorkspace
|
アプリケーション ワークスペースのカラー
|
#trackbarBg
|
トラックバーの背景
|
#trackbarBgSel
|
選択されたキーのトラックバーの背景
|
#trackbarText
|
トラックバーのテキスト
|
#trackbarTicks
|
トラックバーのティック
|
#trackbarKeys
|
トラックバーのキー
|
#trackbarSelKeys
|
トラックバーの選択キー
|
#trackbarCursor
|
トラックバーのカーソル
|
#pressedButton
|
[変換のコンストレイント](transform constraints)などの押されたボタンのバックグラウンド カラー
|
#timeSliderBg
|
タイム スライダ バーの背景
|
#viewportBorder
|
ビューポートの境界カラー
|
#activeViewportBorder
|
アクティブなビューポートの境界カラー
|
#rollupTitleFace
|
ロールアウト タイトルのバックグラウンド
|
#rollupTitleText
|
ロールアウト タイトルのテキスト
|
#rollupTitleHilight
|
ロールアウト タイトルの 3d ハイライト
|
#rollupTitleShadow
|
ロールアウト タイトルの 3d シャドウ
|
#selectionRubberBand
|
選択マーキー カラー
|
#stackViewSelection
|
スタック ビュー内で選択された項目のカラー
|
<color>colorMan.getColor <string>color
ID が渡されているカラーのカラー値が返されるか、または渡された Color が見つからない場合は、黒(RGB(0,0,0))が返されます。
<string>color: 取得するカラーを指定します。
<name>colorMan.getName <string>color
ID が渡されているカラーの名前を返します。
<string>color: カラーの ID。
<string>colorMan.getCategory <string>color
ID が渡されているカラーのカテゴリ文字列を返します。
<string>color: カラーの ID。
<boolean>colorMan.setIconFolder <filename>folder
<filename>folder: UI フォルダの名前。ディレクトリに対する相対パスで指定します。絶対パス名は使用できません。
このメソッドは、UI のすべてのアイコンをロードするために使用するフォルダを設定し、ただちにそのフォルダからアイコンを再ロードします。
注:
アイコン ファイルのないフォルダがロードされると、UI 内のすべてのアイコンは空白になります。このとき、警告は発行されません。
<filename>colorMan.getIconFolder()
現在のアイコン フォルダの絶対パス名を返します。 getIconFolder は絶対パスを返します。ただし、 setIconFolder では、相対パスしか使用できません。
<float>colorMan.getIconColorScale <enum>type <enum>which
type enums: {#disabledIcon|#enabledIcon}
which enums: {#saturationScale|#valueScale|#alphaScale}
指定されたアイコン タイプに適用されるいずれかのスケール係数を浮動小数点値(0.0 ~ 1.0 の範囲)で返します。これらのスケール係数は、起動時にアイコンにイメージ処理を行うために使用されます。
<enum>type: 値は次のいずれかです。
#disabledIcon: 無効なアイコン。
#enabledIcon: 有効なアイコン。
<enum>which : アイコンのカラー スケール。値は次のいずれかです。
#saturationScale: 彩度のスケール。
#valueScale: 値のスケール。
#alphaScale: アルファのスケール。
colorMan.setIconColorScale <enum>type <enum>which <float>value
type enums: {#disabledIcon|#enabledIcon}
which enums: {#saturationScale|#valueScale|#alphaScale}
渡されたアイコン タイプに、指定されたスケール係数を設定します。カラー マネージャは、3ds Max アイコン イメージ処理システムで使用する値を保持します。開発者はこのメソッドを使用して、有効なアイコンおよび無効なアイコン イメージの彩度、値、透明度をスケールする値を設定することができます。
<enum>type: アイコン タイプ。値は次のいずれかです。
#disabledIcon: 無効なアイコン。
#enabledIcon: 有効なアイコン。
<enum>which : アイコンのカラー スケール。値は次のいずれかです。
#saturationScale: 彩度のスケール。
#valueScale: 値のスケール。
#alphaScale: アルファのスケール。
<float>value: 値の範囲は 0.0 ~ 100.0 です。
colorMan.getIconColorInvert <enum>type
type enums: {#disabledIcon|#enabledIcon}
指定されたアイコン タイプに反転フラグが設定されている場合は true 、設定されていない場合は false を返します。
<enum>type: アイコン タイプ。値は次のいずれかです。
#disabledIcon: 無効なアイコン。
#enabledIcon: 有効なアイコン。
colorMan.setIconColorInvert <enum>type <boolean>value
type enums: {#disabledIcon|#enabledIcon}
指定されたアイコン タイプの反転フラグを on または off に設定します。
<enum>type: アイコン タイプ。値は次のいずれかです。
#disabledIcon: 無効なアイコン。
#enabledIcon: 有効なアイコン。
<boolean>value: 反転する場合は true、反転しない場合は false を渡します。
<filename>colorMan.getFileName()
現在ロードされているカラー ファイルのファイル名を返します。
注: loadColorFile と saveColorFile が相対パスを使用していても、このファイル名は絶対パスを指定します。
<color>colorMan.getDefaultColor <string>color
指定された ID の既定値のカラーを返します。既定のカラーは、その後 SetColor() が実行されているかどうかにかかわらず、registerColor の defaultValue として渡された値です。これは、ユーザが[リセット](Reset)を押してカラーを既定値にリセットする場合に
UI で使用されます。
<string>color: カラーの ID。
colorMan.repaintUI <enum>type
type enums: {#repaintAll|#repaintTrackBar|#repaintTimeBar}
このメソッドでは、ユーザ インタフェースの再描画を発行することができます。これは、[カスタマイズ](Customize)ダイアログ ボックスの[すぐにカラーを適用](Apply
Colors Now)ボタンと同じです。
<repaintType>type: 発行する再描画のタイプ。 #repaintAll 、 #repaintTrackBar 、 #repaintTimeBar のいずれかです。
次に、タイム スライダおよびトラック バーの背景を青に変える macroScript を示します。
例
|
macroScript BlueBar
category: "Color"
tooltip: "Blue Bar"
(
on execute do
(
colorMan.setColor #timeSliderBg [0, 0, .6]
colorMan.repaintUI #repaintTimeBar
colorMan.setColor #trackbarBg [0, 0, .6]
colorMan.repaintUI #repaintTrackBar
)
)
|
注:すべての 3ds Max の標準アイコン BMP ファイルは、指定したフォルダ内に存在する必要があります。標準ファイルが存在しない場合は、3ds Max の UI のアイコンが空白で表示されます。必要なすべてのアイコン ファイルは、ui¥icons フォルダ(既定のアイコン フォルダ)にあります。
アイコン ファイルから、すべての CUI アイコンを再度ロードします。新規のアイコン ビットマップ ファイルを追加したり、既存のファイルを編集した後で、UI を更新する際に使用します。
3ds Max 9 以降で使用可能です。
<bool>colorman.resolveIconFolder <filename> <&fullfilename>
このメソッドは、ユーザ アイコンパス、システム アイコン パス、<3dsmax.exe>¥ui¥iconsの順にファイル名を解決します。
ファイルを検出すると、完全修飾のファイル名が fullfilename に入れられ、このメソッドは true を返します。
検出されない場合には、このメソッドは false を返します。
3ds Max 9 以降 で使用可能です。
この製品に付属している SDK ヘルプ ファイルの「IcolorManager」も参照してください。