1
私のコードに何が問題なのかよく分かりません。アンドロイドの3点間の角度を計算する
Point A = new Point((int)CENTER_X, (int)CENTER_Y);
Point B = new Point((int)me.getX(), (int)me.getY());
Point C = new Point((int)CENTER_X, (int)B.y);
double AB;
double AC;
double BC;
AB = Math.sqrt(Math.pow(B.x - A.x, 2) + Math.pow(B.y - A.y, 2));
AC = Math.sqrt(Math.pow(C.x - A.x, 2) + Math.pow(C.y - A.y, 2));
BC = Math.sqrt(Math.pow(C.x - B.x, 2) + Math.pow(C.y - B.y, 2));
degre = (AB * AB - AC * AC - BC * BC) /(2 * AC * AB);
degre = Math.acos(degre*(180/Math.PI));
私はいつもdegre = 0
またはNaN
を取得しています。何故ですか ?
最初の行はセロ... (AB * AB - AC * AC - BC * BC)/(2 * AC * AB) 私は間違ったeqを使用していますか? – roiberg
私はあなたのトリグをチェックしませんでしたが、コサインルールを正しく使用していると思います。 – Elemental