2016-08-29 3 views
1

ジオメトリによって空間内の点を求めたいと思っています。私はいくつかのtheta値を与える数学計算をしています。シータ値を評価した後、N 1×3次元行列を得ることができ、ここでNは評価されたシータの数である。私は目標点を持っているので、3つの座標(x、y、z)に適切な焦点を当てて、どの行列がターゲットに最も近いかを決定するだけでよい。1次元行列の値の基数の順序付け方法

Fig 1
図1: 下図に分析のビューを取るすべてのポイントは、簡単に第三のマトリックスが最も近いことがわかる

最小の誤差を有する最も近い点を決定しますsum(abs(Matrix[x,y,z])).を使用します。ただし、以下の別の図にこの方法を適用すると、明らかに結果が間違っています。

Fig 2
図2:一点、B点を見て、基準点

の2軸で最も近い値を持ち、それがY、Z軸上の基準点に近いですそれはx軸上に大きく外れているということだけです。

どのようにして行列を評価し、最も近い参照点を選択すれば十分な強調がすべての座標(x、y、z)の誤差の差になるでしょうか?

+0

私は順序が必要なもの、本当にあるとは思いません。あなたが本当に求めているのは、「空間インデックス作成」(https://en.wikipedia.org/wiki/Spatial_database#Spatial_index)です。例:https://en.wikipedia.org/wiki/R-tree。 –

答えて

0

結果が(x、y、z)という点では、基準点から得られた各行列のユークリッド距離を評価しないのはなぜですか? MATLABコードの

並べ替え:

Ref_point = [48.98, 20.56, -1.44]; 
Curr_point = [x,y,z]; 
Xd = (x-Ref_point(1))^2 ; 
Yd = (y-Ref_point(2))^2 ; 
Zd = (z-Ref_point(3))^2 ; 
distance = sqrt(Xd + Yd + Zd); 
%find the minimum distance 
関連する問題