Main Content

nearestNeighbor

(非推奨) 指定の点に最も近い頂点

nearestNeighbor(DelaunayTri) は推奨されません。代わりに nearestNeighbor(triangulation) を使用してください。

DelaunayTri は推奨されません。代わりに delaunayTriangulation を使用してください。

説明

PI = nearestNeighbor(DT,Q) は、行列 Q のクエリ点の位置ごとに DT.X に最近傍点のインデックスを返します。

メモ

nearestNeighbor では、制約されたエッジをもつ 2 次元の三角形分割はサポートされません。

PI = nearestNeighbor(DT,QX,QY)PI = nearestNeighbor(DT,QX,QY,QZ) は、2 次元と 3 次元で機能する場合、クエリ点を列ベクトルの形式で指定することができます。

[PI,D] = nearestNeighbor(___) は、クエリ点と最近傍点間の対応するユークリッド距離を D に返します。

すべて折りたたむ

一連の乱数点から Delaunay 三角形分割を作成します。

rng default
x = rand(10,1);
y = rand(10,1);
dt = DelaunayTri(x,y);

2 次元のクエリ点の行列を作成します。

Q = [0.25 0.25; 0.5 0.5];

クエリ点の最近傍点を検出します。

pid = nearestNeighbor(dt,Q)
pid = 2×1

     7
     7

入力引数

すべて折りたたむ

Delaunay 三角形分割の表現。DelaunayTri オブジェクトとして指定します。

クエリ点。行列として指定します。Q は、mptsndim 列のサイズです。ここで、mpts はクエリ点数で、ndim は点のある空間の次元です。

クエリ点。個別の列ベクトルとして指定します。QX および QY を指定して 2 次元クエリ点の座標を示すか、QXQY および QZ を指定して 3 次元クエリ点の座標を示します。

出力引数

すべて折りたたむ

最近傍点のインデックス。列ベクトルとして返されます。PI は、点 DT.X のインデックスを示す点のベクトルです。PI の長さは、クエリ点 mpts の数と等しくなります。

ユークリッド距離。列ベクトルとして返されます。D の各要素は、クエリ点とその最近傍点の間のユークリッド距離の値を示します。

拡張機能

スレッドベースの環境
MATLAB® の backgroundPool を使用してバックグラウンドでコードを実行するか、Parallel Computing Toolbox™ の ThreadPool を使用してコードを高速化します。

バージョン履歴

R2009a で導入