- 对曲线的首末点虚连一条直线,求曲线上所有点与直线的距离,并找出最大距离值dmax,用dmax与事先给定的阈值D相比
- 若dmax<D,则将这条曲线上的中间点全部舍去;则该直线段作为曲线的近似,该段曲线处理完毕。
- 若dmax≥D,保留dmax对应的坐标点,并以该点为界,把曲线分为两部分,对这两部分重复使用该方法,即重复1,2步,直到所有dmax均<D,即完成对曲线的抽稀
/*** 计算两点距离** @param point1* @param point2* @return*/private static double calculationDistance(double[] point1, double[] point2) {double lat1 = point1[0];double lat2 = point2[0];double lng1 = point1[1];double lng2 = point2[1];double radLat1 = lat1 * Math.PI / 180.0;double radLat2 = lat2 * Math.PI / 180.0;double a = radLat1 - radLat2;double b = (lng1 * Math.PI / 180.0) - (lng2 * Math.PI / 180.0);double s = 2 *
本文发布于:2024-01-30 05:07:53,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170656247519441.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |