geometry - 如何使用 OSMDROID 制作 161 米/528 英尺的圆圈?

标签 geometry osmdroid markers

我在 OpenStreetMaps 上使用 OsmDroid 并且可以制作标记和折线,但我找不到任何关于如何在标记周围制作 161m/528ft 圆圈的示例。

a) 我如何制作圆圈?
b) 我如何使它们的尺寸为 161m/528ft?

最佳答案

感谢MKer,我对如何解决问题有了一个想法并制作了这段代码,它有效:

oPolygon = new org.osmdroid.bonuspack.overlays.Polygon(this);
final double radius = 161;
ArrayList<GeoPoint> circlePoints = new ArrayList<GeoPoint>();
for (float f = 0; f < 360; f += 1){
    circlePoints.add(new GeoPoint(latitude , longitude ).destinationPoint(radius, f));
}
oPolygon.setPoints(circlePoints);
oMap.getOverlays().add(oPolygon);`

我知道这可以优化。我正在绘制 360 点,无论缩放比例如何!

Black 161meter circle made with Omsdroid on OpenStreetMap

关于geometry - 如何使用 OSMDROID 制作 161 米/528 英尺的圆圈?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23311810/

相关文章:

reactjs - 标记不适用于 google-map-react

math - 电子围栏的局部最优

java - 如何在java中求解两个具有两个变量的线性方程..?

rotation - 将旋转分解为围绕任意正交轴的旋转的更快方法

android - osmdroid 覆盖以当前位置为中心

javascript - 绘图库 : Dynamically drawing different markers in Google maps api 3

java - eclipse PDE : Custom QuickFix only available in Problems View?

javascript - 将 SVG 多边形路径转换为纬度和经度坐标

android - 获取osmdroid map 上点击位置的经纬度

android - 创建 Osmdroid Mapview 的屏幕截图