MATLAB Function Reference | ![]() ![]() |
ユーザは、つぎの2つの方法を使って、グラフィックオブジェクトのプロパティを設定したり、引用できます。
set
とget
は、プロパティの値を設定したり、引用したりします。プロパティのデフォルト値を変更するには、 デフォルトプロパティ値の設定を参照してください。
Rectangle プロパティの記述
この節は、プロパティ名とそこで設定できる値のタイプをリストしています。中括弧{}はデフォルト値です。
BusyAction
cancel | {queue}
コールバックルーチンの割込み。BusyAction
プロパティを使って、実行中のコールバックルーチンに割込みを行うイベントの取り扱い方法を制御することができます。実行中のコールバックルーチンがあれば、続いて呼び込まれるコールバックルーチンは、常にそれを中断しようとします。実行中のオブジェクトのコールバックのInterruptible
プロパティがon
(デフォルト)に設定されていれば、イベントキューが処理されるつぎの点で割込みが起こります。Interruptible
プロパティがoff
ならば、(実行中のコールバックをもつオブジェクトの)BusyAction
プロパティは、MATLABがイベントを処理する方法を指定します。つぎのような選択があります。
cancel
- 2番目のコールバックルーチンを実行しようとしたイベントを破棄します。queue
- 現在のコールバックが終了するまで、2番目のコールバックルーチンを実行しようとするイベントを待機させます。ButtonDownFcn
文字列
ボタンを押したときのコールバックルーチン。マウスポインタがrectangleオブジェクト上にあるときにマウスボタンを押すと、必ず実行されるコールバックルーチン。このルーチンには、正しいMATLAB表現またはM-ファイル名を文字列として定義してください。式は、MATLABワークスペース内で実行します。
Children
ハンドル番号からなるベクトル
空行列。rectangle オブジェクトは、子オブジェクトをもちません。
Clipping
{on} | off
クリッピングモード。MATLAB は、デフォルトでrectangle オブジェクトを Axes のプロットボックスにクリップします。Clipping
プロパティをoff
に設定すると、rectangle オブジェクトは Axesのプロットボックスの外に表示します。rectangle オブジェクトを作成し、hold
を on
にし、軸のスケーリングを固定 (axis
manual
)、その後でより長い rectangle オブジェクトを作成したときに、このようなことが起こります。
CreateFcn
文字列
オブジェクト作成時に実行されるコールバックルーチン。このプロパティは、MATLAB が rectangle オブジェクトを作成するときに実行するコールバックルーチンを定義します。rectangleオブジェクトに対するデフォルト値として、このプロパティを定義しなくてはいけません。たとえば、
set(0,'DefaultRectangleCreateFcn',...
'set(gca,''DataAspectRatio'',[1,1,1])')
は、rectangle オブジェクト作成時に、Axes のDataAspectRatio
を設定するルートレベルのデフォルト値を定義します。MATLABは、すべての rectangle のプロパティを設定した後に、このルーチンを実行します。既存のrectangle オブジェクトにこのプロパティを設定しても、効果はありません。
実行しているオブジェクトのCreateFcnのハンドルは、gcbo
を使って引用できるルートのCallbackObjectプロパティを通してのみアクセスできます。
Curvature
1要素、または、2要素ベクトル[x,y]
水平方向と垂直方向の曲率の総量。このプロパティは、直方体から楕円体に直角のものを変化させるときの両側の曲率を指定するものです。水平方向の曲率x
は、最上部から最下部までの曲線と幅の割合で、垂直方向の曲率y
は、左右にエッジに沿った曲線と高さの割合です。
x
と y
の値は、0
(曲率0)から1
(最大曲率)までを表しています。[0,0]
の値は、立方体を生成します。[1,1]
は、楕円体を表します。1つの値がCurvature
に設定された場合、水平方向、垂直方向同じ長さになります。曲率の総量は、次元がより低くなるように決定されます。
DeleteFcn
文字列
rectangle のコールバックルーチンの削除。rectangleオブジェクトを削除する(たとえば、 delete
の実行や、Axesや Figure を消去する)とき、実行するコールバックルーチン。MATLABは、オブジェクトのプロパティを削除する前にルーチンを実行するので、これらの値はコールバックルーチンに対して利用可能です。
実行しているオブジェクトのDeleteFcnのハンドルは、gcbo
を使って引用できるルートのCallbackObjectプロパティを通してのみアクセスできます。
EdgeColor
{
Colorspec
} | none
直方体エッジのカラーです。このプロパティは、直方体エッジのカラーを1色として設定するか、または、エッジを描画しないように設定します。
EraseMode
{normal} | none | xor | background
消去モード。このプロパティは、rectangle
オブジェクトを描いたり、消去するMATLABの機能を制御するものです。消去モードは、連続的に動きを表現するアニメーションの作成に有効なものです。すなわち、アニメーションでは、パフォーマンスを改良したり、希望する効果を得るために、個々のオブジェクトを再描画する方法を制御する必要があります。
normal
(デフォルト) - すべてのオブジェクトが正しく描画されることを保証するために必要な3次元解析を行い、表示範囲を再描画します。このモードは、最も正確な図を表示することができますが、非常に時間のかかるものです。他のモードは、かなり時間の短縮にはなりますが、完全な図を再表示することはできず、精度は悪くなります。none
- rectangleは移動したり、壊されても、消去されません。 EraseMode
に none
を使って消去した後で、スクリーン上でオブジェクトが視覚可能であっても、MATLABは以前の位置に関する情報を格納しないので、印刷できません。xor
- rectangleは、その下のスクリーンの各ピクセルのインデックスとの排他的論理和(XOR)により、表示と消去が行われます。rectangleの消去は、rectangleの下のオブジェクトの色に影響を与えません。しかし、rectangleのカラーは、その下のスクリーンのカラーに依存します。background
- axesのバックグランドColor
の中でそれを描くことで、ラインを消去します。または、axeのColor
が、none
に設定されている場合、フィギュアのバックグランド
Color
を使って消去します。これは、消去したラインに隠れていたオブジェクトに影響を与えますが、ラインは、常に適切に色付けされます。Non-normal Erase モードでの印刷
MATLABは、すべてのオブジェクトのEraseMode
が、normal
であるかのようにフィギュアを印刷します。これは、EraseMode
に、none
, xor
, background
のいずれかを設定して作成されたグラフィックオブジェクトは、スクリーンでの表示と印刷用紙での表示が異なって見えることを意味しています。スクリーン上で、MATLABは、カラー層を数学的に合わせて(たとえば、ピクセルカラーとその後ろにあるピクセルのカラーとの排他的な和を計算する)、)最大のレンダリングスピードを得るための3次元のソートを無視しています。しかし、これらの技法は、印刷出力には適用されません。
MATLABのコマンドgetframe
や、他のスクリーンキャプチャアプリケーションを使って、非ノーマルなモードでのオブジェクトを含むフィギュアのイメージを作成することができます。
FaceColor
ColorSpec
| {none}
直方体の面のカラー。このプロパティは、直方体の面のカラーを指定します。デフォルトでは、色付けされません。
HandleVisibility
{on} | callback | off
コマンドラインユーザとGUIによるオブジェクトのハンドルへのアクセスの制御。このプロパティは、オブジェクトのハンドルが、その子オブジェクトの親のリスト内で視覚可能であるときを決定します。HandleVisibility
プロパティは、(ダイアログボックスのような)ユーザインタフェースデバイスのみを含んでいる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
プロパティに現れません。
ルートのShowHiddenHandles
プロパティをonに設定すると、それらのHandleVisibilityの設定(これは、HandleVisibilityプロパティの値に影響を与えません)に拘わらず、すべてのハンドルを視覚可能にできます。
隠されているハンドル番号も、まだ有効です。オブジェクトのハンドルが分かっていると、そのプロパティを関数set
と get
で設定し、ハンドルを取り扱う関数に渡すことができます。
HitTest
{on} | off
マウスクリックによる選択。HitTest
は、rectangle 上でのマウスクリックの結果、rectangle がカレントのオブジェクト(gco
コマンドとFigureのCurrentObject
プロパティにより出力される)になり得るかどうかを指定します。HiTest
がoff
ならば、rectangle をクリックすると、その下のオブジェクト(このオブジェクトを含むAxesかもしれません)を選択します。
Interruptible
{on} | off
コールバックルーチンの中断モード。Interruptible
プロパティは、rectangleのコールバックルーチンが、連続的に呼び込まれるコールバックルーチンによって、中断されるかどうかを制御します。ButtonDownFcn
に対して定義されたコールバックルーチンのみが、Interruptible
プロパティにより影響を受けます。MATLABは、ルーチン内でdrawnow
, figure
, getframe
, pause
コマンドが実行されるときのみ、コールバックルーチンを中断できるイベントを確認します。
LineStyle
{
-} |
-- | : |
-. | none
ラインスタイル。 このプロパティは、エッジのラインスタイルを指定します。使用可能なラインスタイルを以下に示します。
シンボル |
ラインスタイル |
- |
solid line (default) |
-- |
dashed line |
: |
dotted line |
-. |
dash-dot line |
none |
no line |
LineWidth
スカラー
直方体オブジェクトの幅。ポイント数で指定します(1ポ
イント= 1/72 インチ)。デフォルトのrectangleWidth
は、0.5ポイントです。
Parent
ハンドル番号
rectangle の親オブジェクト。 rectangle の親オブジェクトであるAxes のハンドル番号。このプロパティを新しい Axes のハンドル番号に変更することにより、rectangleオブジェクトを他の Axes に移動できます。
Position
4要素からなるベクトル[x,y,width,height]
長方形の位置や大きさを設定。
このプロパティは、Axesのデータ単位を使って、長方形の位置とサイズを指定します。x
、y
で定義される点は、長方形の1つの隅を表し、width
と height
は、xとyの軸に沿ったサイズを定義します。
Selected
on | off
選択されたオブジェクト。このプロパティが on
のとき、MATLAB は、SelectionHighlight
プロパティもon
ならば、ハンドル番号の選択状態を示すハンドルを表示します。たとえば、このプロパティを設定するためにButtonDownFcn
を定義すると、マウスでオブジェクトを選択することができます。
SelectionHighlight
{on} | off
選択時のオブジェクトの強調。Selected
プロパティが on
のとき、MATLAB は各々の頂点にハンドルを描くことにより、選択された状態を表わします。SelectionHighlight
が off
ならば、MATLAB はハンドルを描きません。
Tag
文字列
ユーザ指定のオブジェクトのラベル。Tag
プロパティは、ユーザ指定のラベルを使ってグラフィックスオブジェクトを識別する方法を提供します。これは、オブジェクトのハンドル番号をグローバル変数として定義したり、コールバックルーチン間で引数として渡すことを必要とする、対話的なグラフィックスプログラムを構築するときに、特に有効です。任意の文字列でTag
を定義できます。
Type
文字列(参照のみ)
グラフィックスオブジェクトのクラス。rectangle オブジェクトでは、Type
は、常に文字列 'rectangle'
です。
UIContextMenu
uicontextmenu オブジェクトのハンドル
rectangleに関連したコンテキストメニュー。
Linrと同じFigure内に作成するUicontextmenuオブジェクトのハンドルに、このプロパティをアサインします。コンテキストメニューを作成するには、関数uicontextmenu
を使います。rectangle上を右クリックすると、コンテキストメニューを表示します。
UserData
行列
ユーザ指定のデータ。任意のデータをrectangle オブジェクトに関連付けることができます。MATLAB は、このデータを使いませんが、set
とget
を使って、アクセスすることができます。
Visible
{on} | off
ラインの可視化。デフォルトでは、すべてのrectangle が視覚可能です。off
に設定すると、rectangle は見えなくなりますが、それでも存在していて、そのプロパティに対してset
と get
を使うことができます。
![]() | rectangle | reducepatch | ![]() |