MATLAB Function Reference | ![]() ![]() |
この節は、プロパティ名とそれに設定可能なプロパティ値をリストします。
AlphaData
double
、または、uint8
のm行n列の行列
透明度データ。 イメージデータの中の各要素の透明度を設定するNaNでない値を要素とする行列。AlphaData
は、クラス double、または、uint8のどちらかです。
AlphaData
の要素を透明度として使用(AlphaDataMapping
を、デフォルトで、none
に設定します)。 AlphaData
の要素をカレントalphamapの中のインデックスとして使用します (AlphaDataMapping
をdirect
に設定します)。 AlphaData
の要素をスケーリングして、軸ALim
プロパティの最小値と最大値の間に入れます(AlphaDataMapping
をscaled
に設定します)。AlphaDataMapping
{none}
| direct
|
scaled
透明度のマッピング手法。 このプロパティは、MATLABがインデックス付きalphaデータをどのように解釈するかを決定します。つぎのいずれかに従います。
none
-
AlphaData
の透明度値は、0と1の間の値か、または、この範囲の端の値になります(デフォルト)。scaled
-
AlphaData
を、ALim
プロパティで示されるalphamap全体をカバーするように変換し、データ値をalpha値に線形にマッピングします。direct
- AlphaData
を、alphamapの中に直接インデックスとして使用します。スケーリングしない場合、データは、1
からlength(alphamap)
までの範囲で、整数単位で変化します。MATLABは、
1
より小さいものを、alphamapの最初の値、 length(alphamap)
より大きい値をalphamapの最後のalpha値にします。小数部はm最近傍の小さい整数に丸めます。AlphaData
が、配列uint8
整数の場合、インデックスは、0
から始めます(すなわち、MATLAB は、0
の値を、alphamapの最初のalpha値にマッピングします)。BusyAction
cancel | {queue}
コールバックルーチンの割込み。BusyAction
プロパティを使って、実行中のコールバックルーチンに割込みを行うイベントの取り扱い方法を制御することができます。実行中のコールバックルーチンがあれば、続いて呼び込まれるコールバックルーチンは、常にそれを中断しようとします。コールバックを実行中のオブジェクトのInterruptible
プロパティがon
(デフォルト)に設定されていれば、イベントキューが処理されるつぎの点で割込みが起こります。Interruptible
プロパティがoff
ならば、(実行中のコールバックをもつオブジェクトの)BusyAction
プロパティは、MATLABがイベントを処理する方法を指定します。つぎのような選択があります。
cancel
- 2番目のコールバックルーチンを実行しようとしたイベントを破棄します。
queue
- 現在のコールバックが終了するまで、2番目のコールバックルーチンを実行しようとするイベントを待機させます。
ButtonDownFcn
文字列ボタンを押したときのコールバックルーチン。 ポインタがImageオブジェクト上にあるときにマウスボタンを押すと、必ず実行されるコールバックルーチン。このルーチンには、正しいMATLAB表現、または、M-ファイル名を文字列で定義できます。式は、MATLABワークスペース内で実行します。
CData
行列、または、m*n*3の配列
Imageデータ。Imageを定義している各長方形のカラーを指定する値からなる行列。image(C)
は、C
の値をCData
に割り当てます。MATLABは、つぎの3つの方法の中からImageのカラーを決定します。
CData
の要素を使います(デフォルト)。min(get(gca,'CLim'))
とmax(get(gca,'CLim'))
の値の間に、CData
の要素をスケーリングします(CDataMapping
をscaled
に設定します)。
CData
の要素を解釈します(トゥルーカラーの仕様)。
CData
に対するトゥルーカラーの仕様は、m*n*3の配列のRGB値を必要とします。最初のページはImageの中の各要素の赤の成分、2ページ目は緑の成分、3ページ目は青の成分を含みます。RGBの値は、0から1の範囲の値です。つぎの図は、2つのカラーモデルに対するCData
の次元を示しています。CData
が1行、または、1列ならば、高さ、または、幅は常に1データ単位で、それぞれ最初のYData
、または、 XData
の要素を中心とします。たとえば、4行1列のランダムデータを使用します。
C = rand(4,1); image(C,'CDataMapping','scaled') axis imageは、つぎのように表示されます。
CDataMapping
scaled | {direct}
直接、または、スケールされたインデックス付きカラー。このプロパティは、MATLABがCData
内の値をFigureのカラーマップへのインデックスとして解釈する(デフォルト)か、あるいは、AxesのCLim
プロパティの値に従ってスケーリングするかを指定します。
CDataMapping
がdirect
の場合、CData
の値は1からlength(get(gcf,'Colormap'))
の範囲の値にしてください。CData
に対して、トゥルーカラーの仕様を使う場合、このプロパティは影響しません。
Children
ハンドル番号空行列。Imageオブジェクトは子オブジェクトをもちません。
Clipping
on | off
クリッピングモード。 デフォルトでは、MATLABは長方形のAxesにImageを貼り付けます。Clipping
をoff
に設定した場合、Imageは長方形のAxesの外側に表示することができます。たとえば、Imageを作り、 hold
をon
に設定し、軸のスケールを固定し(axis
manual
)、つぎにそれより大きいImageを作成すると、Axesの範囲を超えて描画します。
CreateFcn
文字列オブジェクトの作成中に実行されるコールバックルーチン。 このプロパティは、MATLABがImageオブジェクトを作成するときに実行するコールバックルーチンを定義します。このプロパティは、Imageに対するデフォルト値として定義しなければなりません。たとえば、つぎのステートメント
set(0,'DefaultImageCreateFcn','axis image')は、Imageが正方形のピクセルをもつように、縦横比と軸の範囲を設定するルートレベルでのデフォルト値を定義します。MATLABは、Imageのすべてのプロパティが設定された後に、このルーチンを実行します。このプロパティを既存のImageオブジェクトに対して設定しても、影響はありません。 CreateFcnを実行しているオブジェクトのハンドル番号は、ルートのCallbackObjectプロパティによってのみアクセスが可能です。このプロパティは、
gcbo
を使って確認できます。
DeleteFcn
文字列
Imageを削除するときのコールバックルーチン。 Imageオブジェクトが削除される (たとえば、 delete
コマンドを実行する、あるいはImageを含むAxes、または、Figureを消去する) ときに実行するコールバックルーチン。MATLABは、オブジェクトのプロパティを壊す前にこのルーチンを実行するので、これらのプロパティ値をコールバックルーチンで利用することができます。
CallbackObject
プロパティによってのみアクセスが可能です。このプロパティは、gcbo
を使って確認できます。
EraseMode
{normal} | none | xor | background
消去モード。このプロパティは、Imageオブジェクトを描いたり、消去するMATLABの機能を制御するものです。消去モードは、連続的に動きを表現するアニメーションの作成に有効なものです。すなわち、アニメーションでは、パフォーマンスを改良したり、希望する効果を得るために、個々のオブジェクトを再描画する方法を制御する必要があります。
normal
(デフォルト) -- すべてのオブジェクトが正しく描画されることを保証するために必要な3次元解析を行い、表示範囲を再描画します。このモードは、最も正確に図を表示することができますが、非常に時間のかかるものです。他のモードは、かなり時間の短縮にはなりますが、完全な図を再表示することはできず、精度は悪くなります。
none
- Imageは移動したり、変更したりしても消去されません。 EraseMode
none
を使って消去した後で、スクリーン上でオブジェクトが視覚可能であっても、MATLABは以前の位置に関する情報を格納しないので、印刷できません。
xor
- オブジェクトは、その下のスクリーンのカラーとの排他的論理和(XOR)により表示され、そして消去されます。このモードはImageの下のオブジェクトのカラーに影響を与えませんが、Imageのカラーは、その下のスクリーンのカラーに依存します。
background
- Axesの Color
がnone
に設定されている場合は、AxesのバックグランドのColor
Color
に描画することにより、消去します。これは、消去されたImageの下にあるオブジェクトに影響を与えますが、Imageは常に適切に色付けされています。
非標準の消去モードを使って印刷を行う
EraseMode
がnormal
であるかのように、Figureを印刷します。これは、EraseMode
がnone
, xor
, background
に設定されて作成されたグラフィックスオブジェクトが、用紙とスクリーン上では異なって見えることを意味します。スクリーン上では、MATLABは色の層を数学的に重ねて(たとえば、オブジェクトのピクセルの色と、下にあるピクセルの色の排他的論理和をとって)、レンダリングを高速化するための3次元的なソートは無視します。しかし、これらの方法は、印刷の出力には適用されません。
MATLABの capture
コマンドや他のスクリーンキャプチャアプリケーションを使って、非標準モードのオブジェクトを含むFigureのイメージを作成できます。
HandleVisibility
{on} | callback | off
コマンドラインユーザとGUIによるオブジェクトのハンドルへのアクセスの制御。このプロパティは、オブジェクトのハンドルが、その子オブジェクトの親のリスト内で視覚可能であるときを決定します。このプロパティは、(ダイアログボックスのような)ユーザインタフェースデバイスのみを含んでいるFigure内に、コマンドラインから誤って書き込むことや削除することを防ぐために有効です。
HandleVisibility
がon
のときは、ハンドルは常に視覚可能です。
HandleVisibility
をcallback
に設定すると、ハンドルは、コールバッ
クルーチンの中から、または、コールバックにより起動される関数からは可視化されますが、コマンドラインから起動される関数の中からは可視化されません。これは、コマンドラインユーザがGUIを保護しながら、コールバックルーチンがオブジェクトのハンドルに完全にアクセスできるようにするために提供されています。
HandleVisibility
をoff
に設定すると、常にハンドルは視覚不可能になります。これは、コールバックルーチンが、GUI(ユーザがタイプした文字列の評価のような)を傷つける可能性がある関数を呼び込み、その関数の実行中にハンドルを一時的に隠すときに必要です。
ハンドルが子オブジェクトの親のリスト内で視覚不可能のとき、オブジェク
トの階層を検索したり、ハンドルのプロパティを確認して、ハンドルを取得する関数は、ハンドル番号を出力しません。これらの関数には、get
, findobj
, gca
, gcf
, gco
, newplot
, cla
, clf
, close
が含まれます。
ハンドルの視覚状態がcallback
や off
を使って制限されているとき、オブジェクトのハンドルは、その親のChildren
プロパティには表れません。
Figureは、ルートのCurrentFigure
プロパティに表れず、オブジェクトは、ルートのCallbackObjectプロパティ、または、FigureのCurrentObject
プロパティに表れません。そして、Axesは、親オブジェクトのCurrentAxes
プロパティに表れません。
RootのShowHiddenHandles
プロパティをonに設定すると、それらのHandleVisibility
の設定(これは、HandleVisibility
プロパティの値に影響を与えません)に拘わらず、すべてのハンドルを視覚可能にできます。
隠されているハンドル番号も、まだ有効です。オブジェクトのハンドルが分かっていると、そのプロパティを関数set
と get
で設定し、ハンドルを取り扱う関数に渡すことができます。
HitTest
{on} | off
マウスクリックによる選択。HitTest
は、Image上でのマウスクリックの結果、Imageがカレントのオブジェクト(gco
コマンドとFigureのCurrentObject
プロパティにより出力される)になり得るかどうかを指定します。HiTest
がoff
ならば、Imageをクリックすると、その下のオブジェクト(このオブジェクトを含むAxesかもしれません)を選択します。
Interruptible
{on} | off
コールバックルーチンの中断モード。 Interruptible
プロパティは、Imageのコールバックルーチンが、連続的に呼び込まれるコールバックルーチンによって、中断されるかどうかを制御します。ButtonDownFcn
に対して定義されたコールバックルーチンのみが、Interruptible
プロパティにより影
響を受けます。MATLABは、ルーチン内でdrawnow
, figure
, getframe
,pause
コマンドが実行されるときのみ、コールバックルーチンを中断できるイベントを確認します。
Parent
親オブジェクトであるAxesのハンドル番号Imageの親オブジェクト。 Imageオブジェクトの親オブジェクトであるAxesのハンドル番号。このプロパティを新しいAxesのハンドル番号に変更することにより、Imageオブジェクトを別のAxesに移動できます。
Selected
on | {off}
オブジェクトの選択状態。このプロパティをon
にし、SelectionHighlight
プロパティもon
ならば、MATLABは選択状態を示すハンドルを表示します。たとえば、ButtonDownFcn
で、このプロパティを設定するように定義すると、マウスを使ってオブジェクトを選択することができます。
SelectionHighlight
{on} | off
選択時のオブジェクトの強調。 Selected
プロパティがon
の場合、MATLAB
は、4辺と4隅に選択状態を示すハンドルを描画します。SelectionHighlight
がoff
の場合、MATLABはハンドルを表示しません。
Tag
文字列
ユーザ指定のオブジェクトラベル。Tag
プロパティは、ユーザ設定のラベルをもつグラフィックスオブジェクトを識別する方法を与えます。これは、オブジェクトのハンドル番号をグローバル変数として定義したり、コールバックルーチン間の引数としてそれらを受け渡したりする必要がある対話型のグラフィックプログラムを構築するときに、特に有効です。Tag
は、任意の文字列で定義できます。
Type
文字列(参照のみ)
グラフィックスオブジェクトのタイプ。 このプロパティは、グラフィックスオブジェクトのクラスを識別する文字列を含みます。Imageオブジェクトに対しては、Type
は、常に'image
'です。
UIContextMenu
Uicontextmenuオブジェクトのハンドル番号
コンテキストメニューとImageの対応付け。このプロパティは、Imageと同様に同じFigure内で作成したUicontextmenuオブジェクトのハンドル番号を割り当てます。コンテキストメニューを作成するためには、関数 uicontextmenu
を使用してください。MATLABは、Figure上で右マウスボタンをクリックしたときに、コンテキストメニューを表示します。
UserData
行列
ユーザ指定データ。このプロパティは、Imageオブジェクトと関連付けたい任意のデータです。Imageは、このプロパティを使いませんが、関数set
,get
を使ってアクセスすることができます。
Visible
{on} | off
Imageの可視化。デフォルトでは、Imageオブジェクトは視覚可能です。このプロパティをoff
に設定すると、Imageは表示されません。しかし、オブジェクトは存在するので、プロパティの参照や設定ができます。
XData
デフォルト[1 size(CData,2)]
x軸に沿ってのイメージの配置の制御。要素 CData(1,1)
とCData(m,n)
の中心位置を指定するベクトルです。ここで、CData
はm
行n
列です。要素CData(1,1)
は、XData
とYData
の1番目の要素によって定義された座標です。要素CData(m,n)
は、XData
とYData
の最後の要素によって定義された座標です。CData
の残りの要素の中心は、2点の間に等間隔で分布します。
CData
の要素の幅は、つぎの式で決定されます。
(XData(2)-XData(1))/(size(CData,2)-1)
XData
に対して、単一の値を指定することもできます。この場合、イメージは、
この座標で1番目の要素を中心とし、1単位ずつ離してつぎの要素の中心とします。
YData
[1 size(CData,1)]
(デフォルト)
y軸に沿っての配置の制御。要素CData(1,1)
とCData(m,n)
の中心位置を指定するベクトルです。ここで、CData
はm
行n
列です。要素 CData(1,1)
は、XData
と YData
の1番目の要素によって定義された座標です。要素CData(m,n)
は、XData
とYData
の最後の要素によって定義された座標です。CData
の残りの要素の中心は、2点の間に等間隔で分布します。
CData
の要素の高さは、つぎの式で決定されます。
(YData(2)-YData(1))/(size(CData,1)-1)
YData
に対して、単一の値を指定することもできます。この場合、イメージは、
この座標で1番目の要素を中心とし、1単位ずつ離してつぎの要素の中心とします。
参考:
colormap
, imfinfo
, imread
, imwrite
, pcolor
, newplot
, surface
Using MATLAB Graphicsマニュアルの"ビットマップイメージの表示"の章
![]() | image | imagesc | ![]() |