ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

Patch のプロパティ

パッチの外観と動作

Patch プロパティは Patch オブジェクトの外観と動作を制御します。プロパティの値を変更することによって、パッチの一部の特性を変更できます。

R2014b から、プロパティのクエリと設定にドット表記を使用できるようになりました。

p = patch;
c = p.CData;
p.CDataMapping = 'scaled';

それより前のリリースを使用している場合は、代わりに関数 get および set を使用してください。

すべて展開する

面の色。'flat''interp'、RGB 3 成分、または表にリストされている色のオプションのいずれかとして指定します。

  • 'flat' — 一様な面の色です。まず、CData または FaceVertexCData を、面ごとに 1 つの色か、頂点ごとに 1 つの色を含む配列として指定します。頂点ごとに 1 つの色を指定する場合、面の色は最初に指定した頂点の色によって決まります。

  • 'interp' — 面ごとに色が内挿されます。まず、CData または FaceVertexCData を、頂点ごとに 1 つの値を含む配列として指定します。各頂点の値を内挿して、面の色を決定します。

すべての面に 1 つの色を指定するには、RGB 3 成分または表にリストされている色のオプションのいずれかを指定します。RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は [0,1] の範囲でなければなりません。たとえば [0.4 0.6 0.7] のようになります。あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、色の完全名および省略名のオプションと、等価の RGB 3 成分の値を示します。

オプション説明等価の RGB 3 成分
'red' または 'r'[1 0 0]
'green' または 'g'[0 1 0]
'blue' または 'b'[0 0 1]
'yellow' または 'y'[1 1 0]
'magenta' または 'm'マゼンタ[1 0 1]
'cyan' または 'c'シアン[0 1 1]
'white' または 'w'[1 1 1]
'black' または 'k'[0 0 0]
'none'色なし該当なし

エッジの色。次の表のいずれかの値として指定します。エッジの既定色は黒で、RGB 3 成分値 [0 0 0] で指定されます。複数の多角形で共有されるエッジの場合、その表示色は最初に描画された多角形によって決まります。

説明結果

RGB 3 成分または色名

すべてのエッジに 1 つの色を使用します。詳細については、次の表を参照してください。

'flat'

エッジごとに異なる色を使用します。エッジの色を設定するには、その前の頂点の色を指定します。まず、頂点ごとに 1 つの色を含む配列として CData または FaceVertexCData を指定しなければなりません。エッジの色は、頂点を指定した順序によって決まります。

'interp'

内挿されたエッジの色。まず、頂点ごとに 1 つの色を含む配列として CData または FaceVertexCData を指定しなければなりません。エッジの色を指定するには、2 つの境界頂点の値を線形内挿します。

'none'エッジは表示されません。

エッジは表示されません。

RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は [0,1] の範囲でなければなりません。たとえば [0.4 0.6 0.7] のようになります。あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、色の完全名および省略名のオプションと、等価の RGB 3 成分の値を示します。

オプション説明等価の RGB 3 成分
'red' または 'r'[1 0 0]
'green' または 'g'[0 1 0]
'blue' または 'b'[0 0 1]
'yellow' または 'y'[1 1 0]
'magenta' または 'm'マゼンタ[1 0 1]
'cyan' または 'c'シアン[0 1 1]
'white' または 'w'[1 1 1]
'black' または 'k'[0 0 0]

パッチのカラー データ。パッチ全体の単一の色、面ごとの 1 つの色または頂点ごとの 1 つの色として指定します。

関数 patchCData を解釈する方法は、与えられたデータの型に依存します。CData は次のいずれかの形式で指定します。

  • 現在のカラーマップに線形にマップするためにスケーリングされる数値。

  • 現在のカラーマップへのインデックスとして直接使用される整数値。

  • RGB 3 成分の配列。RGB 3 成分は、現在のカラーマップにはマッピングされず、定義された色として解釈されます。

CData の次元と XDataYDataZData プロパティの配列との関係について以下の図で説明します。

次の図は、インデックス カラーを使用する場合について示しています。

次の図は、トゥルーカラーを使用する場合について示しています。トゥルーカラーは単一の RGB 3 成分または RGB 3 成分の配列を必要とします。

CData に NaN が含まれている場合、patch の面には色は付きません。

パッチを定義する別の方法では、FacesVertices および FaceVertexCData プロパティを使用します。

例: [1,0,0]

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

面と頂点の色。パッチ全体の単一の色、面ごとの 1 つの色または内挿された面の色のための頂点ごとの 1 つの色として指定します。

インデックス カラーを使用する場合は、次のいずれかの形式で FaceVertexCData を指定します。

  • パッチ全体を単一の色にするには、単一の値を使用します。

  • 面ごとに 1 つの色にするには、m 行 1 列の列ベクトルを使用します。ここで m は Faces プロパティの行数です。

  • 内挿された面の色にするには、m 行 1 列の列ベクトルを使用します。ここで m は Vertices プロパティの行数です。

トゥルーカラーを使用する場合は、次のいずれかの形式で FaceVertexCData を指定します。

  • パッチ全体を単一の色にするには、RGB 3 成分を定義する 3成分の行ベクトルを使用します。

  • 面ごとに 1 つの色にするには、RGB 3 成分を表す m 行 3 列の 配列を使用します。ここで m は Faces プロパティの行数です。

  • 内挿された面の色にするには、m 行 3 列の配列を使用します。ここで m は Vertices プロパティの行数です。

次の図は、8 個の面と 9 個の頂点をもつパッチの FaceVertexCData プロパティのさまざまな型を示します。CDataMapping プロパティは、インデックス付き色を指定したときに、MATLAB®FaceVertexCData プロパティをどのように解釈するかを決定します。

直接的またはスケーリングによるカラー データ マッピング。'scaled' (既定値) または 'direct' で指定します。CData プロパティおよび FaceVertexCData プロパティにカラー データが含まれています。CData または FaceVertexCData でトゥルーカラーを指定する場合、このプロパティは影響しません。

  • 'direct' — 現在のカラーマップのインデックスとして値を解釈します。小数部分の値は、最近傍値の小さい方の整数に丸められます。

    • 値が double 型または single 型の場合、1 以下の値はカラーマップの最初の色にマッピングされます。カラーマップの長さ以上の値は、カラーマップの最後の色にマッピングされます。

    • 値が uint8uint16uint32uint64int8int16int32 または int64 型の場合、0 以下の値はカラーマップの最初の色にマッピングされます。カラーマップの長さ以上の値は、カラーマップの最後の色にマッピングされます (またはその型の範囲の上限値)。

    • 値が logical 型の場合、0 の値はカラーマップの最初の色にマッピングされ、1 の値はカラーマップの 2 番目の色にマッピングされます。

  • 'scaled' — 色の最小値と最大値の間の範囲に値がスケーリングされます。座標軸の CLim プロパティには色の範囲が含まれています。

透明度

すべて展開する

面の透明度。次の値のいずれかとして指定します。

  • 範囲 [0,1] のスカラー — すべての面に一様な透明度を使用します。値 1 は完全に不透明で、値 0 は完全に透明です。このオプションは FaceVertexAlphaData プロパティの透明度値を使用しません。

  • 'flat'FaceVertexAlphaData プロパティの値に基づいて面ごとに異なる透明度を使用します。まず、FaceVertexAlphaData プロパティを、面または頂点ごとに 1 つの透明度値を含むベクトルとして指定しなければなりません。面全体の透明度は、最初の頂点の透明度値によって決まります。

  • 'interp'FaceVertexAlphaData プロパティの値に基づいて面ごとに内挿された透明度を使用します。まず、FaceVertexAlphaData プロパティを、頂点ごとに 1 つの透明度値を含むベクトルとして指定しなければなりません。頂点の値を内挿することにより、各面に異なる透明度が使用されます。

エッジのラインの透明度。次の値のいずれかとして指定します。

  • [0,1] の範囲内のスカラー値 — すべてのエッジに一様な透明度を使用します。値 1 は完全に不透明で、値 0 は完全に透明です。このオプションは FaceVertexAlphaData プロパティの透明度値を使用しません。

  • 'flat'FaceVertexAlphaData プロパティの値に基づいてエッジごとに異なる透明度を使用します。まず、FaceVertexAlphaData プロパティを、面または頂点ごとに 1 つの透明度値を含むベクトルとして指定しなければなりません。エッジの透明度は最初の頂点の透明度値によって決まります。

  • 'interp'FaceVertexAlphaData プロパティの値に基づいて、エッジごとに内挿した透明度を使用します。まず、FaceVertexAlphaData プロパティを、頂点ごとに 1 つの透明度値を含むベクトルとして指定しなければなりません。エッジごとに異なる透明度を使用するには、それぞれの頂点の値を内挿します。

面と頂点の透明度値。スカラー、面ごとに 1 つの値をもつベクトル、頂点ごとに 1 つの値をもつベクトルのいずれかとして指定します。

  • すべての面またはエッジに一様な透明度を使用するには、スカラー値を指定します。その後、FaceAlpha または EdgeAlpha プロパティを 'flat' に設定します。

  • 面またはエッジごとに異なる透明度を使用するには、m 行 1 列のベクトルを指定します。ここで m は面の数です。その後、FaceAlpha または EdgeAlpha プロパティを 'flat' に設定します。面の数を判別するには、Faces プロパティにある行の数をクエリします。

  • 面またはエッジごとに透明度を内挿するには、n 行 1 列のベクトルを指定します。ここで n は頂点の数です。その後、FaceAlpha または EdgeAlpha プロパティを 'interp' に設定します。面の数を判別するには、Vertices プロパティにある行の数をクエリします。

AlphaDataMapping プロパティは、パッチが FaceVertexAlphaData プロパティ値を解釈する方法を指定します。

メモ

FaceAlpha および EdgeAlpha プロパティの両方がスカラー値に設定されている場合、パッチは FaceVertexAlphaData の値を使用しません。

FaceVertexAlphaData の値の解釈。次の値のいずれかとして指定します。

  • 'none' — 値を透明度値として解釈します。1 以上の値は完全に不透明に、0 以下の値は完全に透明に、0 と 1 の間の値は半透明になります。

  • 'scaled' — 値を Figure の alphamap にマッピングします。座標軸のアルファ値の範囲の最小値と最大値によって、alphamap の最初と最後の要素にマッピングされるアルファ データ値が決まります。たとえば、アルファ値の範囲が [3 5] の場合、3 以下のアルファ データ値は alphamap の最初の要素にマッピングされます。また、5 以上のアルファ データ値は、alphamap の最後の要素にマッピングされます。座標軸の ALim プロパティにはアルファ値の範囲が含まれています。Figure の Alphamap プロパティには alphamap が含まれています。

  • 'direct' — Figure の alphamap のインデックスとして値を解釈します。小数部分の値は、最近傍値の小さい方の整数に丸められます。

    • 値が double 型または single 型の場合、1 以下の値は alphamap の最初の要素にマッピングされます。alphamap の長さ以上の値は、alphamap の最後の要素にマッピングされます。

    • 値が整数型の場合、0 以下の値は alphamap の最初の要素にマッピングされます。alphamap の長さ以上の値は、alphamap の最後の要素 (またはその型の範囲の上限) にマッピングされます。整数型は uint8uint16uint32uint64int8int16int32int64 です。

    • 値が logical 型の場合、0 の値は alphamap の最初の要素に、1 の値は alphamap の 2 番目の要素にマッピングされます。

ライン スタイル

すべて展開する

ライン スタイル。次の表にリストされたオプションのいずれかとして指定します。

ライン スタイル説明結果として得られる線
'-'実線

'--'破線

':'点線

'-.'一点鎖線

'none'ラインなしラインなし

ライン幅。ポイント単位の正の値として指定します。ラインがマーカーをもつ場合、ライン幅はマーカー エッジにも影響します。

例: 0.75

垂直および水平のラインのシャープ化。'off' または 'on' として指定します。

関連付けられている Figure の GraphicsSmoothing プロパティが 'on' に設定されていて Renderer プロパティが 'opengl' に設定されている場合、Figure のプロットには平滑化技法が適用されます。場合によってはこの平滑化技法が原因で、垂直および水平のラインが均一でない太さや色で表示されることがあります。この不均一な外観を取り除くために AlignVertexCenters プロパティを使用します。

  • 'off' — 垂直または水平のラインをシャープ化しません。均一でない太さや色でラインが表示される場合があります。

  • 'on' — 垂直および水平のラインをシャープ化して不均一な外観を取り除きます。

メモ

この機能をサポートするグラフィックス カードがなければなりません。この機能がサポートされているかどうかを確認するには、「opengl info」と入力します。サポートされている場合は、返されたフィールドに SupportsAlignVertexCenters: 1 の行が含まれています。

マーカー

すべて展開する

マーカー記号。次の表に挙げる値のいずれかとして指定します。既定では、オブジェクトはマーカーを表示しません。マーカー記号を指定すると、各データ点または各頂点にマーカーが追加されます。

説明
'o'
'+'プラス記号
'*'アスタリスク
'.'
'x'十字
'square' または 's'正方形
'diamond' または 'd'菱形
'^'上向き三角形
'v'下向き三角形
'>'右向き三角形
'<'左向き三角形
'pentagram' または 'p'星形五角形
'hexagram' または 'h'星形六角形
'none'マーカーなし

マーカー サイズ。ポイント単位の正の値として指定します。

例: 10

マーカーの輪郭の色。'auto''flat'、RGB 3 成分、または表にリストされている色のオプションのいずれかとして指定します。

  • 'auto'EdgeColor プロパティと同じ色を使用します。

  • 'flat' — 頂点の CData の値を使用して色を設定します。

カスタム色を使用する場合は、RGB 3 成分を指定します。RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は [0,1] の範囲でなければなりません。たとえば [0.4 0.6 0.7] のようになります。あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、色の完全名および省略名のオプションと、等価の RGB 3 成分の値を示します。

オプション説明等価の RGB 3 成分
'red' または 'r'[1 0 0]
'green' または 'g'[0 1 0]
'blue' または 'b'[0 0 1]
'yellow' または 'y'[1 1 0]
'magenta' または 'm'マゼンタ[1 0 1]
'cyan' または 'c'シアン[0 1 1]
'white' または 'w'[1 1 1]
'black' または 'k'[0 0 0]
'none'色なし該当なし

マーカーの塗りつぶし色。'auto''flat'、RGB 3 成分、または表にリストされている色のオプションのいずれかとして指定します。

  • 'auto' — 座標軸の Color プロパティと同じ色を使用します。

  • 'flat' — 頂点の CData の値を使用して色を設定します。

カスタム色を使用する場合は、RGB 3 成分を指定します。RGB 3 成分は、色の赤、緑、青成分の強度を指定する 3 成分の行ベクトルです。強度値は [0,1] の範囲でなければなりません。たとえば [0.4 0.6 0.7] のようになります。あるいは、名前を使用して一部の一般的な色を指定できます。次の表に、色の完全名および省略名のオプションと、等価の RGB 3 成分の値を示します。

オプション説明等価の RGB 3 成分
'red' または 'r'[1 0 0]
'green' または 'g'[0 1 0]
'blue' または 'b'[0 0 1]
'yellow' または 'y'[1 1 0]
'magenta' または 'm'マゼンタ[1 0 1]
'cyan' または 'c'シアン[0 1 1]
'white' または 'w'[1 1 1]
'black' または 'k'[0 0 0]
'none'色なし該当なし

このプロパティは円、正方形、菱形、星形五角形、星形六角形、4 種類の三角形のマーカー タイプにのみ影響します。

例: [0.3 0.2 0.1]

例: 'green'

データ

すべて展開する

各面を定義する頂点の連結。各面を構成するための Vertices プロパティ内の頂点の結合を定義するベクトルまたは行列として指定します。FacesVertices プロパティは、多くの場合、XDataYData、および ZData 座標を使用する方法よりも、効率的なパッチの指定方法です。

配列 faces の各行は、1 つの面に対する連結を指定し、行内の NaN ではない要素の数が、その面の頂点の数を定義します。このため m 行 n 列の配列 Faces は、それぞれ最大 n 個の頂点を含む m 個の面を定義します。

たとえば、次のパッチを考えます。これは、9 個の頂点で定義した 8 個の三角形の面から成ります。対応する Faces および Vertices プロパティを、パッチの右側に示します。ある面がどのように他の面と頂点を共有するかを注意してください。たとえば、5 番目の頂点 (V5) は、面 1、2、3、6、7 および 8 にそれぞれ 1 回、計 6 回使われています。頂点を共有しない場合、これと同じパッチは 24 個の頂点を定義する必要があります。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

頂点の座標。各頂点の (x,y,z) 座標を定義するベクトルまたは行列として指定します。FacesVertices プロパティは、多くの場合、XDataYData、および ZData 座標を使用する方法よりも、効率的なパッチの指定方法です。頂点データの使用方法については、Faces プロパティを参照してください。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

パッチの頂点の x 座標。ベクトルまたは行列として指定します。XData が行列の場合、各列がパッチの 1 つの面の x 座標を表します。この場合、XDataYData、および ZData は、同じ次元でなければなりません。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

パッチを定義する y 座標。ベクトルまたは行列として指定します。YData が行列の場合、各列がパッチの 1 つの面の y 座標を表します。この場合、XDataYData、および ZData は、同じ次元でなければなりません。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

パッチの頂点の z 座標。ベクトルまたは行列として指定します。ZData が行列の場合、各列がパッチの 1 つの面の z 座標を表します。この場合、XDataYData、および ZData は、同じ次元でなければなりません。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

法線

すべて展開する

頂点の法線ベクトル。パッチの頂点ごとに 1 つの法線ベクトルをもつ法線ベクトルの配列として指定します。Vertices プロパティ値のサイズによって決まるパッチの頂点ごとに 1 つの法線を定義します。頂点の法線はパッチの形状と向きを決定します。このデータはライティングの計算に使用されます。

このプロパティの値を設定すると、対応するモード プロパティが manual に設定されます。法線ベクトルを指定しない場合、座標軸が light オブジェクトを含んでいるときにはパッチによってこのデータが生成されます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

VertexNormals の選択モード。次の値のいずれかとして指定します。

  • 'auto' — シーンにライトを追加したときに、関数 patch によって頂点の法線を計算します。

  • 'manual'VertexNormals プロパティで指定されている頂点の法線データを使用します。VertexNormals プロパティに値を代入すると、VertexNormalsMode'manual' に設定されます。

面法線ベクトル。パッチの面ごとに 1 つの法線ベクトルをもつ法線ベクトルの配列として指定します。Faces プロパティ値のサイズによって決まるパッチの面ごとに 1 つの法線を定義します。面法線はそれぞれのパッチの面の向きを決定します。このデータはライティングの計算に使用されます。

このプロパティの値を設定すると、対応するモード プロパティが manual に設定されます。法線ベクトルを指定しない場合、座標軸が light オブジェクトを含んでいるときにはパッチによってこのデータが生成されます。パッチの面法線は、Newell の方法を使用して計算されます。

データ型: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

FaceNormals の選択モード。次の値のいずれかとして指定します。

  • 'auto' — シーンにライトを追加したときに、関数 patch によって面法線を計算します。

  • 'manual'FaceNormals プロパティで指定されている面法線データを使用します。FaceNormals プロパティに値を代入すると、FaceNormalsMode'manual' に設定されます。

ライティング

すべて展開する

面に対する light オブジェクトの効果。次の値のいずれかとして指定します。

  • 'flat' — 各面にライトを一様に適用します。この値は小平面で構成されたオブジェクトを表示する場合に使用します。

  • 'gouraud' — 面のライトを変化させます。各頂点のライトを計算し、面上でライトを線形内挿します。この値は曲面を表示する場合に使用します。

  • 'none' — light オブジェクトのライトを面に適用しません。

light オブジェクトを座標軸に追加するには、関数 light を使用します。

メモ

'phong' は削除されました。代わりに 'gouraud' を使用してください。

頂点の法線がカメラと反対方向の場合の面のライティング方法。次の値の 1 つとして指定します。

  • 'reverselit' — 頂点法線がカメラに向かっているかのように面をライティングします。

  • 'unlit' — 面をライティングしません。

  • 'lit' — 頂点法線に従って面をライティングします。

このプロパティを使用すると、オブジェクトの内部と外部を見分けられます。例については、背面ライティングを参照してください。

エッジに対する light オブジェクトの効果。次の値のいずれかとして指定します。

  • 'flat' — 各エッジにライトを一様に適用します。

  • 'none' — light オブジェクトのライトをエッジに適用しません。

  • 'gouraud' — 各頂点のライトを計算し、エッジ上でライトを線形内挿します。

メモ

'phong' は削除されました。代わりに 'gouraud' を使用してください。

周囲光の強度。[0,1] の範囲のスカラー値として指定します。周囲光は場面全体を照らす方向性のない光です。周囲光が視覚可能であるためには、座標軸に対して少なくとも 1 つの視覚可能な light オブジェクトがなければなりません。

周囲光の色は座標軸の AmbientLightColor プロパティで設定します。座標軸のすべてのオブジェクトに同じ色が使用されます。

例: 0.5

データ型: double

拡散光の強度。[0,1] の範囲のスカラー値として指定します。拡散光は座標軸の light オブジェクトからの非鏡面反射です。

例: 0.3

データ型: double

鏡面反射の強度。[0,1] の範囲のスカラー値として指定します。鏡面反射は座標軸の light オブジェクトが照らす表面上の部分です。

例: 0.3

データ型: double

鏡面反射の膨張性。0 よりも大きいスカラー値で指定します。SpecularExponent は鏡面反射スポットのサイズを制御します。値を大きくすると鏡面反射は小さくなります。

ほとんどが、5 から 20 の範囲の指数です。

例: 17

データ型: double

鏡面反射の色。0 以上 1 以下のスカラーとして指定します。

  • 0 — 鏡面反射の色は、反射するオブジェクトの色と光源の色の両方に依存します。

  • 1 — 鏡面反射の色は、光源の色 (つまり、light オブジェクトの Color プロパティ) のみに依存します。

鏡面反射の色に対する光源の色とパッチの色の寄与は、01 の間で線形に変化します。

例: 0.5

データ型: single | double

凡例

すべて展開する

凡例ラベル。文字ベクトルまたは string スカラーとして指定します。legend コマンドを呼び出すまで、凡例は表示されません。テキストを指定しない場合、legend'dataN' 形式を使用してラベルを設定します。

このプロパティは読み取り専用です。

凡例にオブジェクトを含めるか除外するかの制御。Annotation オブジェクトとして返されます。基となる IconDisplayStyle プロパティを次のいずれかの値に設定します。

  • 'on' — 凡例にオブジェクトを含めます (既定)。

  • 'off' — 凡例にオブジェクトを含めません。

たとえば、グラフィックス オブジェクト go を凡例から除外するには、IconDisplayStyle プロパティを 'off' に設定します。

go.Annotation.LegendInformation.IconDisplayStyle = 'off';

あるいは、関数 legend を使用して、凡例内の項目を制御することもできます。最初の入力引数を、含めるグラフィックス オブジェクトのベクトルとして指定します。最初の入力引数に既存のグラフィックス オブジェクトを指定しない場合、それは凡例に表示されません。ただし、凡例が作成された後に座標軸に追加されたグラフィックス オブジェクトは凡例には表示されません。追加の項目を避けるには、すべてのプロットを作成した後に凡例を作成することを考慮してください。

対話機能

すべて展開する

可視性の状態。次の値のいずれかとして指定します。

  • 'on' — オブジェクトを表示します。

  • 'off' — オブジェクトを削除せずに非表示にします。非表示のオブジェクトのプロパティには引き続きアクセスできます。

コンテキスト メニュー。ContextMenu オブジェクトとして指定します。このプロパティは、オブジェクトを右クリックしたときにコンテキスト メニューを表示するために使用します。関数 uicontextmenu を使用して、コンテキスト メニューを作成します。

メモ

PickableParts プロパティが 'none' に設定されている場合または HitTest プロパティが 'off' に設定されている場合には、このコンテキスト メニューは表示されません。

選択状態。次の値の 1 つとして指定します。

  • 'on' — 選択されています。プロット編集モードでオブジェクトをクリックした場合、MATLAB は Selected プロパティを 'on' に設定します。SelectionHighlight プロパティも 'on' に設定されている場合、MATLAB はオブジェクトの周囲に選択ハンドルを表示します。

  • 'off' — 選択されていません。

選択時に選択ハンドルを表示。次の値の 1 つとして指定します。

  • 'on'Selected プロパティが 'on' に設定されているときに選択ハンドルを表示します。

  • 'off'Selected プロパティが 'on' に設定されている場合でも選択ハンドルを表示しません。

座標軸の範囲でのオブジェクトのクリップ。次の値のいずれかとして指定します。

  • 'on' — 座標軸の範囲に収まらないオブジェクトの部分を非表示にします。

  • 'off' — 座標軸の範囲に収まらない部分がある場合でもオブジェクト全体を表示します。プロットの作成、hold on の設定、座標軸のスケーリングの固定を行ってから、元のプロットよりも大きいオブジェクトを作成した場合、オブジェクトの一部が座標軸の範囲の外に表示されることがあります。

オブジェクトを含む座標軸の Clipping プロパティは 'on' に設定しなければなりません。そうしない場合、このプロパティの効果はありません。クリップ動作の詳細については、座標軸の Clipping プロパティを参照してください。

コールバック

すべて展開する

マウスクリック コールバック。次の値のいずれかとして指定します。

  • 関数ハンドル

  • 関数ハンドルと追加の引数を含む cell 配列

  • ベース ワークスペース内で評価される有効な MATLAB コマンドまたは MATLAB 関数の文字ベクトル (非推奨)

このプロパティは、オブジェクトをクリックしたときにコードを実行するために使用します。関数ハンドルを使用してこのプロパティを指定した場合、MATLAB はコールバックを実行するときに次の 2 つの引数をコールバック関数に渡します。

  • クリックしたオブジェクト — コールバック関数内から、クリックしたオブジェクトのプロパティにアクセスします。

  • イベント データ — 空の引数です。この引数が使用されないことを示すために、関数定義の中でこの引数をチルダ文字 (~) に置換します。

関数ハンドルを使用してコールバック関数を定義する方法についての詳細は、コールバック定義を参照してください。

メモ

PickableParts プロパティが 'none' に設定されている場合または HitTest プロパティが 'off' に設定されている場合には、このコールバックは実行されません。

作成コールバック。次の値の 1 つとして指定します。

  • 関数ハンドル

  • 関数ハンドルと追加の引数を含む cell 配列

  • ベース ワークスペース内で評価される有効な MATLAB コマンドまたは MATLAB 関数の文字ベクトル (非推奨)

このプロパティは、オブジェクトの作成時にコードを実行するために使用します。MATLAB は、オブジェクトを作成してそのプロパティをすべて設定した後にコールバックを実行します。既存のオブジェクトに CreateFcn プロパティを設定しても効果はありません。効果を得るには、オブジェクトの作成時に CreateFcn プロパティを指定しなければなりません。オブジェクトの作成時にプロパティを指定する 1 つの方法は、オブジェクトに既定のプロパティ値を設定することです。詳細については、既定のプロパティ値を参照してください。

関数ハンドルを使用してこのコールバックを指定した場合、MATLAB はコールバックを実行するときに次の 2 つの引数をコールバック関数に渡します。

  • 作成されたオブジェクト — コールバック関数内からオブジェクトのプロパティにアクセスします。グラフィックス ルート オブジェクトの CallbackObject プロパティを介してオブジェクトにアクセスすることもできます。これは関数 gcbo を使用してクエリできます。

  • イベント データ — 空の引数です。この引数が使用されないことを示すために、関数定義の中でこの引数をチルダ文字 (~) に置換します。

関数ハンドルを使用してコールバック関数を定義する方法についての詳細は、コールバック定義を参照してください。

削除コールバック。次の値の 1 つとして指定します。

  • 関数ハンドル

  • 関数ハンドルと追加の引数を含む cell 配列

  • ベース ワークスペース内で評価される有効な MATLAB コマンドまたは MATLAB 関数の文字ベクトル (非推奨)

このプロパティは、オブジェクトの削除時にコードを実行するために使用します。MATLAB はオブジェクトを破棄する前にコールバックを実行するため、コールバックはオブジェクトのプロパティ値にアクセスできます。

関数ハンドルを使用してこのコールバックを指定した場合、MATLAB はコールバックを実行するときに次の 2 つの引数をコールバック関数に渡します。

  • 削除されたオブジェクト — コールバック関数内からオブジェクトのプロパティにアクセスします。グラフィックス ルート オブジェクトの CallbackObject プロパティを介してオブジェクトにアクセスすることもできます。これは関数 gcbo を使用してクエリできます。

  • イベント データ — 空の引数です。この引数が使用されないことを示すために、関数定義の中でこの引数をチルダ文字 (~) に置換します。

関数ハンドルを使用してコールバック関数を定義する方法についての詳細は、コールバック定義を参照してください。

コールバック実行制御

すべて展開する

コールバックの割り込み。'on' または 'off' として指定します。Interruptible プロパティは実行中のコールバックが割り込み可能かどうかを決定します。

メモ

以下のコールバック状態について考えます。

  • "実行中" コールバックは、現在実行しているコールバックです。

  • "割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。

MATLAB がコールバックを呼び出すたびに、そのコールバックは実行中のコールバックに割り込もうとします。実行中のコールバックを所有するオブジェクトの Interruptible プロパティが、割り込みを許可するかどうかを決定します。割り込みが許可されない場合は、割り込みコールバックを所有するオブジェクトの BusyAction プロパティが、そのコールバックを破棄するかキューに入れるかを決定します。

Interruptible プロパティは、別のコールバックが Patch オブジェクトの ButtonDownFcn コールバックに割り込むことができるかどうかを決定します。Interruptible プロパティは 2 つの値をとります。

  • 'on' — 割り込み可能です。MATLAB が次にキューを処理するポイントで割り込みが発生します。たとえば、キューは drawnowfiguregetframewaitforpausewaitbar などのコマンドによって処理されます。

    • 実行中のコールバックにこれらいずれかのコマンドが含まれている場合、MATLAB はその場所でコールバックの実行を停止し、割り込みコールバックを実行します。割り込みコールバックが完了したときに MATLAB は実行中だったコールバックの実行を再開します。詳細については、コールバック実行の中断を参照してください。

    • 実行中のコールバックにこれらのコマンドが含まれていない場合、MATLAB はそのコールバックの実行を中断せずに終了させます。

  • 'off' — 割り込みできません。MATLAB は割り込みさせずに実行中のコールバックを終了させます。

コールバック キューイング。'queue' または 'cancel' として指定します。BusyAction プロパティは MATLAB による割り込みコールバックの実行の処理方法を決定します。

以下のコールバック状態について考えます。

  • "実行中" コールバックは、現在実行しているコールバックです。

  • "割り込み" コールバックは、実行中のコールバックに割り込もうとするコールバックです。

MATLAB がコールバックを呼び出すたびに、そのコールバックは実行中のコールバックに割り込もうとします。実行中のコールバックを所有するオブジェクトの Interruptible プロパティが、割り込みを許可するかどうかを決定します。割り込みが許可されない場合は、割り込みコールバックを所有するオブジェクトの BusyAction プロパティが、そのコールバックを破棄するかキューに入れるかを決定します。

Patch オブジェクトのコールバックが割り込み不可の実行中のコールバックに割り込もうとしている場合、BusyAction プロパティはそのコールバックを破棄するかキューに入れるかを決定します。BusyAction プロパティは次の値の 1 つとして指定します。

  • 'queue' — 割り込みコールバックをキューに入れ、実行中のコールバックが終了した後に処理されるようにします (既定の動作)。

  • 'cancel' — 割り込みコールバックを破棄します。

マウス クリック キャプチャ機能。次の値の 1 つとして指定します。

  • 'visible' — 表示されている場合にマウス クリックをキャプチャします。Visible プロパティが 'on' に設定されていなければならず、Patch オブジェクトの色が定義されている部分をクリックしなければなりません。関連付けられている色のプロパティが 'none' に設定されている部分をクリックすることはできません。プロットにマーカーが含まれている場合は、エッジまたは塗りつぶしのいずれかに色が定義されている場合にマーカー全体がクリック可能になります。Patch オブジェクトがクリックに応答するか、先祖がクリックに応答するかは、HitTest プロパティが決定します。

  • 'all' — 表示状態に関係なくマウス クリックをキャプチャします。Visible プロパティを 'on' または 'off' に設定でき、色が設定されていない Patch オブジェクトの一部をクリックできます。Patch オブジェクトがクリックに応答するか、先祖がクリックに応答するかは、HitTest プロパティが決定します。

  • 'none' — マウス クリックをキャプチャしません。Patch オブジェクトをクリックすると、Figure ウィンドウの現在のビュー内でその下にあるオブジェクトまでクリックが渡されます。HitTest プロパティは無効になります。

キャプチャしたマウス クリックへの応答。次の値の 1 つとして指定します。

  • 'on'Patch オブジェクトの ButtonDownFcn コールバックをトリガーします。UIContextMenu プロパティが定義されている場合は、コンテキスト メニューを呼び出します。

  • 'off'Patch オブジェクトの先祖のうち、次のいずれかの条件を満たす最も近い先祖のコールバックをトリガーします。

    • HitTest プロパティが 'on' に設定されている

    • PickableParts プロパティが、先祖によるマウス クリックのキャプチャを可能にする値に設定されている

メモ

PickableParts プロパティは、Patch オブジェクトがマウス クリックをキャプチャできるかどうかを決定します。キャプチャできない場合、HitTest プロパティは無効です。

このプロパティは読み取り専用です。

削除状態。'off' または 'on' として返されます。MATLAB はオブジェクトの削除関数が実行を開始したときに BeingDeleted プロパティを 'on' に設定します (DeleteFcn プロパティを参照)。オブジェクトが存在しなくなるまで BeingDeleted プロパティは 'on' に設定されたままです。

クエリや変更の前にオブジェクトが削除されようとしていないか確認する必要がある場合は、BeingDeleted プロパティの値をチェックします。

親/子

すべて展開する

親。AxesGroup または Transform オブジェクトとして指定します。

このオブジェクトには子がありません。このプロパティは設定できません。

親の Children プロパティ内でのオブジェクト ハンドルの可視性。次の値のいずれかとして指定します。

  • 'on' — オブジェクト ハンドルは常に表示されます。

  • 'off' — オブジェクト ハンドルは常に非表示です。このオプションは、他の関数による UI の意図しない変更を防止するために役立ちます。HandleVisibility'off' に設定すると、その関数の実行中にハンドルが一時的に非表示になります。

  • 'callback' — オブジェクト ハンドルはコールバック内から、あるいはコールバックにより呼び出される関数から参照できます。しかし、コマンド ラインから呼び出される関数からは参照できません。このオプションを使用すると、コマンド ラインからのオブジェクトへのアクセスがブロックされますが、コールバック関数からのアクセスは許可されます。

オブジェクトが親の Children プロパティ内にリストされない場合、オブジェクト階層の検索またはハンドル プロパティのクエリによってオブジェクト ハンドルを取得する関数は、そのオブジェクト ハンドルを返しません。こうした関数の例としては、関数 getfindobjgcagcfgconewplotclaclf、および close などが挙げられます。

非表示のオブジェクト ハンドルは有効なままです。ルートの ShowHiddenHandles プロパティを 'on' に設定すると、HandleVisibility プロパティの設定にかかわらず、すべてのオブジェクト ハンドルがリストされます。

識別子

すべて展開する

このプロパティは読み取り専用です。

グラフィックス オブジェクトのタイプ。'patch' として返されます。プロット階層内にある特定のタイプのすべてのオブジェクトを検出するためにこのプロパティを使用できます。たとえば findobj を使用してタイプを検索します。

patch オブジェクトに関連付けるタグ。文字ベクトルまたは string スカラーとして指定します。

このプロパティを使用して階層内の patch オブジェクトを検出します。たとえば、関数 findobj を使用して特定の Tag プロパティ値をもつ patch オブジェクトを検索できます。

例: 'January Data'

patch オブジェクトに関連付けるユーザー データ。たとえば、スカラー、ベクトル、行列、cell 配列、文字配列、table、構造体など、任意の MATLAB データとして指定します。MATLAB はこのデータを使用しません。

複数のデータセットを関連付ける場合またはデータにフィールド名を付加する場合は、関数 getappdata および setappdata を使用します。

例: 1:100

R2006a より前に導入