嘿,我的圈子如下。 圆有两个点A(纬度1,经度1)和B(纬度2,经度2)。 和两个(纬度,经度)对。其中一个是(Say A)是圆的中心点。现在我想通过计算角度在圆(B)上加上另一个点。 请问如何在Android画布中执行此操作? 现在我想使用以下功能:
public double getAngle(double lat1, double lon1, double lat2, double lon2)
{
double dx = lat2 - lat1;
// Minus to correct for coord re-mapping
double dy = Math.cos(Math.PI/180*lat1)*(lon2 - lon1);
double inRads = Math.atan2(dy,dx);
if (inRads < 0)
inRads = Math.abs(inRads);
else
inRads = 2*Math.PI - inRads;
return inRads;
}
以上功能是否正确获取角度?如果是,那么现在如何在画布上显示该点?
答案 0 :(得分:-1)
Math.cos()
非常可疑。为什么dy
不是lon2 - lon1
?一旦你有inRads,你为什么要摆弄它? Math.atan2()
在-Pi和+ Pi之间返回正确的角度。