‘壹’ 求一个java方法类,知道当前坐标(x,y),求其它任意坐标在这个坐标的角度及距离
public static double getDistance(GPoint pt1,GPoint tpp2){
return Math.sqrt((pt2.getx()-pt1.gerx())*(pt2.getx()_pt1.getx())+(pt2.gety()-pt1.gety())*(pt2.gety()-pt1.gety()));
}
求距离的方法
‘贰’ java两点间距离公式
哈哈,小伙愁了把,两点距离这个就要用到数学的直角三角形的一个算法了,
直角三角形的公式:直角边A的平方 + 直角边B的平方 = 斜边C的平方
可以算出:
10 - 0 = 10 (直角边A)
a点的x坐标 - b点的x坐标 = a点到b点的横向直线距离 (直角边A)
30.5 - 0 = (直角边B)
a点的y坐标 - b点的y坐标 = a点到b点的竖向直线距离 (直角边B)
那么 (10*10 + 30.5*30.5)开平方 就是斜边距离了
java的API有开平方方法 java.lang.Math.sqrt() 这个就是开平方
编程写法:
double x1=0, y1=0, x2=10, y2=30.5;
double temp_A, temp_B;
double C; // 用来储存算出来的斜边距离
temp_A = x1>x2 ? (x1-x2) : (x2-x1); // 横向距离 (取正数,因为边长不能是负数)
temp_B = y1>y2 ? (y1-y2) : (y2-y1); // 竖向距离 (取正数,因为边长不能是负数)
C=java.lang.Math.sqrt(temp_A*temp_A + temp_B*temp_B); // 计算
最后算出来的C的值 就是斜边距离