如何计算经度和纬度坐标以在用户位置周围创建1英里半径?我不介意它需要多少个坐标,但我想围绕一个位置创建一个圆形半径。
例如:
如果用户的位置=
Latitude: 44.947 Longitude: -93.098
如何确定 8 的经度和纬度坐标组在上述位置周围创建1英里半径。
(上面例子中的8是斜体,因为我不介意它是否小于或大于8)
我该怎么做?
到目前为止代码:
LocationManager lm = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
Location location = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
double longitude = location.getLongitude();
double latitude = location.getLatitude();
虽然我很高兴人们正在努力帮助,但下面给出的答案并没有回答这个问题。
答案 0 :(得分:0)
请记住,我在Android方面没有经验,所以如果不适用,请忽略我。
使用网络版,实现您正在寻找的内容的最简单方法是使用绘图API创建一个您正在查找的半径圆(在这种情况下为一英里),以您的用户位置为中心。然后,您可以使用内置方法查找此对象的角点边界(不幸的是矩形),以便为您提供所需的长/拉。
答案 1 :(得分:0)
如果您想在地图上创建一个圆圈,请执行以下操作:
1)获取地图片段的参考:
GoogleMap = MyMap;
MyMap = ((SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map_id)).getMap();
2)画圆圈:
MyMap.addCircle(new CircleOptions().center(new LatLng(latitude,longitude)).radius(0.00062).fillColor(0x88000000).strokeColor(0x44000000).strokeWidth(2));
1米= 0.000621371英里
如果您不知道如何使用Google Maps API v2,请按照this link
进行操作