setConstrainedPosition
ROI オブジェクトに新しい位置を設定する
setConstrainedPosition は推奨されません。位置制約の設定方法の詳細については、バージョン履歴を参照してください。
説明
setConstrainedPosition( は、ROI オブジェクト h,pos)h の位置を新しい位置に設定します。候補位置 pos は、setPositionConstraintFcn で指定される位置制約関数に従います。
入力引数
ROI オブジェクトの候補位置。数値配列として指定します。配列の形状は ROI オブジェクトのタイプで異なります。さらに関数 setPosition で返される形式と整合性があります。
| ROI オブジェクト | 位置 |
|---|---|
imellipse | [xmin ymin width height] 形式の 4 要素のベクトル。楕円を囲む境界ボックスの新しいサイズと位置を表します。境界ボックスの新しいサイズは width x height ピクセルです。ボックスの左上隅の新しい (x,y) 座標は (xmin,ymin) です。 |
imline | [x1 y1; x2 y2] 形式の 2 行 2 列の行列。ラインの 2 つの端点の新しい位置を表します。 |
impoint | [x y] 形式の 1 行 2 列ベクトル。 |
impoly | n 行 2 列の行列。2 つの列は、n 個の各頂点に対して、新しい x と y 座標を定義します。 |
imrect | [xmin ymin width height] 形式の 4 要素ベクトル。四角形の新しいサイズは width x height ピクセルです。四角形の左上隅の新しい (x,y) 座標は (xmin,ymin) です。 |
バージョン履歴
R2008a で導入R2018b 以降、既存の ROI オブジェクトのセットが新しい ROI オブジェクトのセットに置き換えられています。新しいオブジェクトは、面の色の透明度など、さらに便利な機能を提供します。新しいクラスでは、移動やクリックなどの ROI の変化に応答するために使用できるイベントもサポートされています。現時点では、以前の ROI オブジェクトを削除する予定はありませんが、追加された機能や柔軟性を活用するために、新しい ROI に切り替えてください。新しい ROI 関数を使用した ROI の作成方法の詳細については、ROI の形状の作成を参照してください。
既存の ROI では、makeConstrainToRectFcn を使用して、ROI を描画または移動できる範囲を指定する関数を作成します。その後、この関数を ROI に登録します。オブジェクト関数 setPosition を使用すると、制約された範囲の外側であっても指定したすべての場所に ROI を移動できます。setConstrainedPosition を使用する場合、ROI は、制約位置関数によって設定された範囲に従います。
新しい ROI では、ROI の DrawingArea プロパティを使用して、ROI を描画または移動できる範囲を指定します。Position プロパティを使用して位置を設定した場合は、DrawingArea プロパティで設定された範囲に従いません。
setConstrainedPosition のすべてのインスタンスを更新してください。
| 非推奨の使用方法 | 推奨される代替案 |
|---|---|
この例では、関数 imshow('cell.tif') h = impoint(gca,20,60); % Make a function that constrains movement of the point x = get(gca,'XLim'); y = get(gca,'YLim'); fcn = makeConstrainToRectFcn('impoint',x,y);; % Apply the constraint function to the ROI. setPositionConstraintFcn(h,fcn); % Try to specify a Position value outside the limits. setConstrainedPosition(h,[1 51]); % Note how ROI does not honor value outside of limits. | 新しい ROI では、 I = imread('cell.tif'); imshow(I) h = drawpoint(gca,'Position',[20 60]) [height width] = size(I); %Get image dimensions h.DrawingArea = [20,20,(width-40),(height-40)]; |
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)