使用 getPlacemarks 遍历 KML
Iterate through KML using getPlacemarks
所以我有一个像这样创建的 KML 图层:
inputStream = new URL("url here").openStream();
layer = new KmlLayer(mMap, inputStream, getApplicationContext());
图层 no 包含许多不同的地标,我可以使用 layer.getPlacemarks()
检索这些地标。我的问题是我想要一个为什么要以某种方式遍历地标,检查它们是否与我当前位置有一定距离,然后是否在地图上显示该标记。我很好地找到距离,我只是不明白如何访问地标并使用其中的特定信息来计算距离等。
for (KmlPlacemark placemark: layer.getPlacemarks()) {
if (placemark instanceof KmlPoint) {
KmlPoint point = (KmlPoint) placemark;
LatLng latLng = point.getGeometryObject();
// https://github.com/googlemaps/android-maps-utils/tree/master/library/src/com/google/maps/android/kml
}
}
地标也可以是其他类型。查看 github 上的来源,了解如何从其他类型获取坐标。
所以我有一个像这样创建的 KML 图层:
inputStream = new URL("url here").openStream();
layer = new KmlLayer(mMap, inputStream, getApplicationContext());
图层 no 包含许多不同的地标,我可以使用 layer.getPlacemarks()
检索这些地标。我的问题是我想要一个为什么要以某种方式遍历地标,检查它们是否与我当前位置有一定距离,然后是否在地图上显示该标记。我很好地找到距离,我只是不明白如何访问地标并使用其中的特定信息来计算距离等。
for (KmlPlacemark placemark: layer.getPlacemarks()) {
if (placemark instanceof KmlPoint) {
KmlPoint point = (KmlPoint) placemark;
LatLng latLng = point.getGeometryObject();
// https://github.com/googlemaps/android-maps-utils/tree/master/library/src/com/google/maps/android/kml
}
}
地标也可以是其他类型。查看 github 上的来源,了解如何从其他类型获取坐标。