如何使用 OSMDroid 检查当前位置和 KML 点之间的距离?

How to check distance between current position and KML points using OSMDroid?

因此,在我的项目中,我需要每分钟检查一次用户是否在指定 KML 的给定距离半径内。

我从 KmlDocument 和 FolderOverlay 中搜索了方法,但其中 none 给了我一个点列表或其他任何东西来与我的当前位置进行比较。

以下是我获取 KML 并将叠加层应用到地图的方法:

KmlDocument kmlDocument = new KmlDocument();
map.setTileSource(TileSourceFactory.DEFAULT_TILE_SOURCE);
if (trail.isDownloaded() && UtilsClass.getInstance().isNetworkAvailable(context) && trail.getFileKmlLocalPath() != null && 
!trail.getFileKmlLocalPath().isEmpty()) {
    File kmlFile = new File(trail.getFileKmlLocalPath());
    if (kmlFile.exists()) {
       kmlDocument.parseKMLFile(kmlFile);
    } else {
       kmlDocument.parseKMLUrl(trail.getFileKml()); 
    }
} else {
    kmlDocument.parseKMLUrl(trail.getFileKml());
}

FolderOverlay kmOverlay = (FolderOverlay) 
kmlDocument.mKmlRoot.buildOverlay(map, null, null, kmlDocument);
map.getOverlays().add(kmOverlay);

有没有办法完成我want/need?

提前致谢

每个 KmlPlacemark(点、线串和多边形)的点列表在 KmlPlacemark.mGeometry.mCoordinates