首页 > 其他 > 详细

判断地图某一点在不在范围内

时间:2020-01-07 15:33:21      阅读:69      评论:0      收藏:0      [点我收藏+]
 1 /**
 2      * 判断当前的坐标咋不在圆范围内
 3      * @param longitude 当前经度
 4      * @param latitude  当前纬度
 5      * @return boolean
 6      * true:在
 7      * false:不在
 8      */
 9     public boolean isInPolygon(double longitude, double latitude) {
10         double R = 6378137.0;
11        
12         double dLat = (纬度- latitude) * Math.PI / 180;
13         double dLng = (经度- longitude) * Math.PI / 180;
14 
15         double a = Math.sin(dLat / 2) * Math.sin(dLat / 2) + Math.cos(latitude * Math.PI / 180) * Math.cos(纬度* Math.PI / 180) * Math.sin(dLng / 2) * Math.sin(dLng / 2);
16         double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
17         double d = R * c;
18         double dis = Math.round(d);
19 
20         if (dis <= 半径) {
21             return true;
22         } else {
23             return false;
24         }
25     }

 




判断地图某一点在不在范围内

原文:https://www.cnblogs.com/mzc--/p/12161758.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!