このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
impoint
(非推奨) ドラッグ可能な点の作成
関数 impoint
は推奨されません。代わりに、新しい Point
ROI オブジェクトを使用してください。新しい ROI 作成簡易関数 drawpoint
を使用することもできます。詳細については、互換性の考慮事項を参照してください。
説明
impoint
オブジェクトはイメージ上に対話型で点をカプセル化します。
マウスを使用して、点の位置を調整できます。点には、その外観や動作などを制御するコンテキスト メニューもあります。詳細については、使用方法を参照してください。
作成
構文
説明
h = impoint
は、現在の座標軸で点の対話型の配置を開始し、impoint
オブジェクトを返します。
h = impoint(
は、hparent
)hparent
で指定されるオブジェクトに点の対話型の配置を開始します。
h = impoint(___,
は、点の動作をコントロールする名前と値のペアを指定します。Name,Value
)
入力引数
プロパティ
使用法
対話型構文で impoint
を呼び出すと、ポインターはイメージ上で十字形 に変わります。マウスをクリック アンド ドラッグして、点の位置を指定します。点では、その外観や動作などを制御するコンテキスト メニューがサポートされています。
表に impoint
がサポートしている対話型動作を示します。
対話型動作 | 説明 |
---|---|
点の移動。 | マウス ポインターを点上に移動します。マウス ポインターが花形 ![]() |
点の表示に使用する色の変更。 | マウス ポインターを点上に移動します。右クリックで表示されるコンテキスト メニューから [色の設定] を選択し、使用する色を指定します。 |
点の座標の取得。 | マウス ポインターを点上に移動します。右クリックで表示されるコンテキスト メニューから [位置のコピー] を選択し、点の座標 [X Y] を指定する 1 行 2 列の配列をクリップボードにコピーします。 |
点の削除。 | ポインターを点の上に移動します。右クリックして、コンテキスト メニューから [削除] を選択します。コンテキスト メニューからこのオプションを削除するには、Deletable プロパティを false に設定します。h = impoint(); h.Deletable = false; |
オブジェクト関数
各 impoint
オブジェクトは、多数の関数をサポートしています。詳細なリストを参照するには、methods impoint
を入力してください。
addNewPositionCallback | ROI オブジェクトに新しい位置のコールバックを追加する |
createMask | イメージ内にマスクを作成する |
delete | ハンドル オブジェクトの削除 |
getColor | ROI オブジェクトの描画に使用する色を取得する |
getPosition | ROI オブジェクトの現在の位置を返す |
getPositionConstraintFcn | 現在の位置制約関数への関数ハンドルを返す |
removeNewPositionCallback | ROI オブジェクトから新しい位置のコールバックを削除する |
resume | (非推奨) MATLAB コマンド ラインの実行の再開 |
setColor | (非推奨) ROI オブジェクトの描画に使用する色の設定 |
setConstrainedPosition | ROI オブジェクトに新しい位置を設定する |
setPosition | (非推奨) ROI オブジェクトを新しい位置に移動 |
setPositionConstraintFcn | ROI オブジェクトの位置制約関数の設定 |
setString | 点 ROI オブジェクトのテキスト ラベルを設定する |
wait | (非推奨) ROI の作成が完了するまで MATLAB コマンド ラインをブロックする |
例
点を移動したときの境界制約の実行
関数 impoint
を使用してカスタム色の設定、ラベルの設定、境界の強制的な制約、点の移動に伴うタイトル内の位置の更新を行います。
imshow('rice.png')
h = impoint(gca,100,200);
addNewPositionCallback
を使用して、新しい位置でタイトルを更新します。
addNewPositionCallback(h,@(h) title(sprintf('(%1.0f,%1.0f)',h(1),h(2))));
makeConstrainToRectFcn
を使用して境界制約関数を作成します。
fcn = makeConstrainToRectFcn('impoint',get(gca,'XLim'),get(gca,'YLim'));
setPositionConstraintFcn
を使用して境界制約関数を実行します。
setPositionConstraintFcn(h,fcn); setColor(h,'r'); setString(h,'Point label');
クリック アンド ドラッグによる点の移動
点を対話形式で配置します。wait
を使用して MATLAB® コマンド ラインをブロックします。resume
を使用して MATLAB コマンド ラインの実行を再開するには、点をダブルクリックします。
imshow('pout.tif')
h = impoint(gca,[]);
position = wait(h);
ヒント
image オブジェクトを含んでいる axes で impoint
を使用し、ドラッグ制約関数を指定しない場合、イメージの範囲外に点をドラッグすると、それが失われることがあります。関数 plot
で作成した座標軸で使用すると、座標軸の範囲は点の動きに合わせて自動的に拡張されます。