作业帮 > 综合 > 作业

一道java算法编程题

来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/11/14 13:06:57
一道java算法编程题
已知一线段AB的两端点坐标,以及线段外一点P,写一个函数,求P到线段AB投影的距离:
public static double getDistance(List ab,double[] p);
/**
*其中ab中包含两个端点的坐标(xa,ya),(xb,yb),p(xp,yp)为线段外任意一点的坐标.
*/
一道java算法编程题
public static double getDistance(java.util.List ab, double[] p){
double x1,y1,x2,y2;
x1=ab.get(0)[0];
y1=ab.get(0)[1];
x2=ab.get(1)[0];
y2=ab.get(1)[1];
double k=(y2-y1)/(x2-x1);
double b=y1-k*x1;
return (k*p[0]-p[2]+b)/java.lang.Math.sqrt(k*k+1);
}