我想在Android应用程序的osmdroid地图中显示摩洛哥的旅游区。
首先,我一直在网上搜索获取可以定义区域(如数组或json)的坐标列表(经度和纬度)的方法,但没有运气。地图上只有一个点有解决方案。
其次,使用这些坐标,我如何在osmdroid上显示一个区域?感谢。
答案 0 :(得分:2)
首先,我强烈建议您通过Google Play服务使用Google Maps Api V2。这将更容易。你没有使用它的任何理由?
其次,要在地图上绘制多边形,请执行类似
的操作private void AddPolygon() {
int diff=1000;
GeoPoint pt1=new GeoPoint(13.002798, 77.580000);
GeoPoint pt2= new GeoPoint(pt1.getLatitudeE6()+diff, pt1.getLongitudeE6());
GeoPoint pt3= new GeoPoint(pt1.getLatitudeE6()+diff, pt1.getLongitudeE6()+diff);
GeoPoint pt4= new GeoPoint(pt1.getLatitudeE6(), pt1.getLongitudeE6()+diff);
GeoPoint pt5= new GeoPoint(pt1);
PathOverlay myOverlay= new PathOverlay(Color.RED, this);
myOverlay.getPaint().setStyle(Paint.Style.FILL);
myOverlay.addPoint(pt1);
myOverlay.addPoint(pt2);
myOverlay.addPoint(pt3);
myOverlay.addPoint(pt4);
myOverlay.addPoint(pt5);
map.getOverlays().add(myOverlay);
}