MATLAB Function Reference    
rectangle プロパティ

プロパティの変更

ユーザは、つぎの2つの方法を使って、グラフィックオブジェクトのプロパティを設定したり、引用できます。

プロパティのデフォルト値を変更するには、 デフォルトプロパティ値の設定を参照してください。

Rectangle プロパティの記述

この節は、プロパティ名とそこで設定できる値のタイプをリストしています。中括弧{}はデフォルト値です。

BusyAction                   cancel | {queue}

コールバックルーチンの割込みBusyAction プロパティを使って、実行中のコールバックルーチンに割込みを行うイベントの取り扱い方法を制御することができます。実行中のコールバックルーチンがあれば、続いて呼び込まれるコールバックルーチンは、常にそれを中断しようとします。実行中のオブジェクトのコールバックのInterruptibleプロパティがon (デフォルト)に設定されていれば、イベントキューが処理されるつぎの点で割込みが起こります。Interruptibleプロパティがoffならば、(実行中のコールバックをもつオブジェクトの)BusyActionプロパティは、MATLABがイベントを処理する方法を指定します。つぎのような選択があります。

ButtonDownFcn                文字列

ボタンを押したときのコールバックルーチン。マウスポインタがrectangleオブジェクト上にあるときにマウスボタンを押すと、必ず実行されるコールバックルーチン。このルーチンには、正しいMATLAB表現またはM-ファイル名を文字列として定義してください。式は、MATLABワークスペース内で実行します。

Children                     ハンドル番号からなるベクトル

空行列。rectangle オブジェクトは、子オブジェクトをもちません。

Clipping                     {on} | off

クリッピングモード。MATLAB は、デフォルトでrectangle オブジェクトを Axes のプロットボックスにクリップします。Clippingプロパティをoffに設定すると、rectangle オブジェクトは Axesのプロットボックスの外に表示します。rectangle オブジェクトを作成し、holdonにし、軸のスケーリングを固定 (axis manual)、その後でより長い rectangle オブジェクトを作成したときに、このようなことが起こります。

CreateFcn                    文字列

オブジェクト作成時に実行されるコールバックルーチン。このプロパティは、MATLAB が rectangle オブジェクトを作成するときに実行するコールバックルーチンを定義します。rectangleオブジェクトに対するデフォルト値として、このプロパティを定義しなくてはいけません。たとえば、

     'set(gca,''DataAspectRatio'',[1,1,1])')

は、rectangle オブジェクト作成時に、Axes のDataAspectRatio を設定するルートレベルのデフォルト値を定義します。MATLABは、すべての rectangle のプロパティを設定した後に、このルーチンを実行します。既存のrectangle オブジェクトにこのプロパティを設定しても、効果はありません。

実行しているオブジェクトのCreateFcnのハンドルは、gcboを使って引用できるルートのCallbackObjectプロパティを通してのみアクセスできます。

Curvature                    1要素、または、2要素ベクトル[x,y]

水平方向と垂直方向の曲率の総量。このプロパティは、直方体から楕円体に直角のものを変化させるときの両側の曲率を指定するものです。水平方向の曲率x は、最上部から最下部までの曲線と幅の割合で、垂直方向の曲率y は、左右にエッジに沿った曲線と高さの割合です。

xy の値は、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の機能を制御するものです。消去モードは、連続的に動きを表現するアニメーションの作成に有効なものです。すなわち、アニメーションでは、パフォーマンスを改良したり、希望する効果を得るために、個々のオブジェクトを再描画する方法を制御する必要があります。

Non-normal Erase モードでの印刷

MATLABは、すべてのオブジェクトのEraseModeが、normalであるかのようにフィギュアを印刷します。これは、EraseModeに、none, xor, backgroundのいずれかを設定して作成されたグラフィックオブジェクトは、スクリーンでの表示と印刷用紙での表示が異なって見えることを意味しています。スクリーン上で、MATLABは、カラー層を数学的に合わせて(たとえば、ピクセルカラーとその後ろにあるピクセルのカラーとの排他的な和を計算する)、)最大のレンダリングスピードを得るための3次元のソートを無視しています。しかし、これらの技法は、印刷出力には適用されません。

MATLABのコマンドgetframeや、他のスクリーンキャプチャアプリケーションを使って、非ノーマルなモードでのオブジェクトを含むフィギュアのイメージを作成することができます。

FaceColor                    ColorSpec | {none}

直方体の面のカラー。このプロパティは、直方体の面のカラーを指定します。デフォルトでは、色付けされません。

HandleVisibility             {on} | callback | off

コマンドラインユーザとGUIによるオブジェクトのハンドルへのアクセスの制御。このプロパティは、オブジェクトのハンドルが、その子オブジェクトの親のリスト内で視覚可能であるときを決定します。HandleVisibilityプロパティは、(ダイアログボックスのような)ユーザインタフェースデバイスのみを含んでいるFigure内に、コマンドラインから誤って書き込むことや削除することを防ぐために有効です。

HandleVisibilityonのときは、ハンドルは常に見える状態です。

HandleVisibilitycallbackに設定すると、ハンドルは、コールバックルーチンの中から、または、コールバックにより起動される関数からは可視化されますが、コマンドラインから起動される関数の中からは可視化されません。これは、コマンドラインユーザがGUIを保護しながら、コールバックルーチンがオブジェクトのハンドルに完全にアクセスできるようにするために提供されています。

HandleVisibilityoffに設定すると、常にハンドルは視覚不可能になります。これは、コールバックルーチンが、GUI(ユーザがタイプした文字列の評価のような)を傷つける可能性がある関数を呼び込み、その関数の実行中にハンドルを一時的に隠すときに必要です。

ハンドルが子オブジェクトの親のリスト内で視覚不可能のとき、オブジェクトの階層を検索したり、ハンドルのプロパティを確認してハンドルを取得する関数は、ハンドル番号を出力できません。これらの関数には、get, findobj, gca, gcf, gco, newplot, cla, clf, closeが含まれます。

ハンドルの視覚状態がcallbackoffを使って制限されているとき、オブジェクトのハンドルは、その親のChildrenプロパティには現れません。Figureは、ルートのCurrentFigureプロパティに現れず、オブジェクトは、ルートの CallbackObjectプロパティ、または、FigureのCurrentObjectプロパティに現れません。そして、Axesは、親オブジェクトのCurrentAxes プロパティに現れません。

ルートのShowHiddenHandlesプロパティをonに設定すると、それらのHandleVisibilityの設定(これは、HandleVisibilityプロパティの値に影響を与えません)に拘わらず、すべてのハンドルを視覚可能にできます。

隠されているハンドル番号も、まだ有効です。オブジェクトのハンドルが分かっていると、そのプロパティを関数setget で設定し、ハンドルを取り扱う関数に渡すことができます。

HitTest                      {on} | off

マウスクリックによる選択HitTest は、rectangle 上でのマウスクリックの結果、rectangle がカレントのオブジェクト(gcoコマンドとFigureのCurrentObjectプロパティにより出力される)になり得るかどうかを指定します。HiTestoffならば、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のデータ単位を使って、長方形の位置とサイズを指定します。xy で定義される点は、長方形の1つの隅を表し、widthheight は、xとyの軸に沿ったサイズを定義します。

Selected                     on | off

選択されたオブジェクト。このプロパティが onのとき、MATLAB は、SelectionHighlightプロパティもonならば、ハンドル番号の選択状態を示すハンドルを表示します。たとえば、このプロパティを設定するためにButtonDownFcnを定義すると、マウスでオブジェクトを選択することができます。

SelectionHighlight           {on} | off

選択時のオブジェクトの強調Selectedプロパティが on のとき、MATLAB は各々の頂点にハンドルを描くことにより、選択された状態を表わします。SelectionHighlightoffならば、MATLAB はハンドルを描きません。

Tag                          文字列

ユーザ指定のオブジェクトのラベルTagプロパティは、ユーザ指定のラベルを使ってグラフィックスオブジェクトを識別する方法を提供します。これは、オブジェクトのハンドル番号をグローバル変数として定義したり、コールバックルーチン間で引数として渡すことを必要とする、対話的なグラフィックスプログラムを構築するときに、特に有効です。任意の文字列でTagを定義できます。

Type                         文字列(参照のみ)

グラフィックスオブジェクトのクラス。rectangle オブジェクトでは、Typeは、常に文字列 'rectangle'です。

UIContextMenu                uicontextmenu オブジェクトのハンドル

rectangleに関連したコンテキストメニュー。 Linrと同じFigure内に作成するUicontextmenuオブジェクトのハンドルに、このプロパティをアサインします。コンテキストメニューを作成するには、関数uicontextmenuを使います。rectangle上を右クリックすると、コンテキストメニューを表示します。

UserData                     行列

ユーザ指定のデータ。任意のデータをrectangle オブジェクトに関連付けることができます。MATLAB は、このデータを使いませんが、setgetを使って、アクセスすることができます。

Visible                      {on} | off

ラインの可視化。デフォルトでは、すべてのrectangle が視覚可能です。offに設定すると、rectangle は見えなくなりますが、それでも存在していて、そのプロパティに対してsetgetを使うことができます。

 rectangle reducepatch