1
我很难理解我的代码出了什么问题。计算android中三个点之间的角度
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 2012-04-20 09:59:37
我没有检查你的触发,但相信你正确使用余弦规则。 – Elemental 2012-04-20 10:02:56