/**
* 求由x3, y3定义的点到由x1, y1 和 x2, y2定义的线段的垂直距离
* @param x1 - 线段的第一个端点的x坐标
* @param y1 - 线段的第一个端点的y坐标
* @param x2 - 线段的第二个端点的x坐标
* @param y2 - 线段的第二个端点的y坐标
* @param x3 - 要判断的点的x坐标
* @param y3 - 要判断的点的y坐标
* @return 距离
*/
public static double pointToLineDistance(double x1, double y1, double x2, double y2, double x3, double y3) {
double normalLength = Math.sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
return Math.abs((x3-x1)*(y2-y1)-(y3-y1)*(x2-x1))/normalLength;
}