1
获得国家,我有文件与各国从中我获得功能,然后做简单的标记列表:展开地图如何为点位置
// Load country polygons and adds them as markers
countries = GeoJSONReader.loadData(this, "countries.geo.json");
countryMarkers = MapUtils.createSimpleMarkers(countries);
现在我要检查在哪个国家给定的点。所以,我投简单的标记在AbstractShapeMarker,然后检查是否isInsideByLocation:
for (Marker country: countryMarkers) {
AbstractShapeMarker cou = (AbstractShapeMarker)country;
if (cou.isInsideByLocation(place.getLocation())) {
System.out.println("country!:" + country.getLocation() + "" +country.getProperties().get("name"));
}
}
这工作正常形状简单的国家,但它是国家包含几个多边形(如美国例如这样),这是行不通的。
在文档http://unfoldingmaps.org/javadoc/de/fhpotsdam/unfolding/data/MarkerFactory.html说做标记工厂:
MarkerFactory markerFactory = new MarkerFactory();
markerFactory.setPolygonClass(MyPolygonMarker.class);
List<Marker> markers = markerFactory.createMarkers(features);
map.addMarkers(markers);
但我不明白我怎么能创建类,这样我只获得多边形。
或者这可能是另一种方法检查未折叠地图的位置位置。
谢谢你提前!
谢谢,thagel,但这不是我需要的。我需要获取国家名称没有任何地图迭代 - 否则我可以使用country.isInside(arg0,arg1,arg2).. 国家的名称是其他计算所必需的.. –