1

ここに私のコードの一部があります:

double tmp = OP.innerProduct(OQ);
double tmp2 = -1;

tmpandの値は次のtmp2とおりです: (バイナリ)

tmp = 0b1011111111110000000000000000000000000000000000000000000000000001
tmp2= 0b1011111111110000000000000000000000000000000000000000000000000000

を使用した場合はacos(tmp)、 が返されnanます。

値は必要ありませんnan。小さなエラーを無視してtmp[-1,1] の範囲に収めたいと考えています。

その方法は?

編集:

球座標で与えられた2つの点があります。(たとえば、 (r,45,45) (r,225,-45) )

次に、それらをデカルト座標に変更する必要があります。(ここで小さなエラーが発生します!)

次に、2 点間の角度を計算します。

解析解はコンピュータ解とは異なります(誤差が小さいため)。2つのソリューションを同じにしたいと思います。

4

1 に答える 1