Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在谷歌地图静态链接上画一个圆圈_Android_Google Maps - Fatal编程技术网

Android 在谷歌地图静态链接上画一个圆圈

Android 在谷歌地图静态链接上画一个圆圈,android,google-maps,Android,Google Maps,我试图在静态地图上画一个圆,方法是向getCircleAsPolyline提供位置数据,然后根据这个答案使用PolyUtil.encode进行编码 不幸的是,输出不是一个圆,而是像这样奇怪的东西: 有谁能解释一下为什么会发生这种情况,有没有可能得到一个真正的圆,如果有,怎么做 谢谢 编辑 我很抱歉说得不太清楚,我忘了提到实际上我的getCircleAsPolyline与我链接的那条稍有不同,因为我使用了SphericalUtil.computeOffset来计算坐标;下面是我的getCircl

我试图在静态地图上画一个圆,方法是向getCircleAsPolyline提供位置数据,然后根据这个答案使用PolyUtil.encode进行编码

不幸的是,输出不是一个圆,而是像这样奇怪的东西:

有谁能解释一下为什么会发生这种情况,有没有可能得到一个真正的圆,如果有,怎么做

谢谢

编辑

我很抱歉说得不太清楚,我忘了提到实际上我的getCircleAsPolyline与我链接的那条稍有不同,因为我使用了SphericalUtil.computeOffset来计算坐标;下面是我的getCircleAsPolyline函数:

private static ArrayList<LatLng> getCircleAsPolyline(Location center, float radius) {
    ArrayList<LatLng> circlePath = new ArrayList<>();
    double step = 5.0;
    double centerLatitude = center.getLatitude();
    double centerLongitude = center.getLongitude();
    for (double angle = 0.0; angle < 360.0; angle += step) {
        LatLng circlePoint = SphericalUtil.computeOffset(
                new LatLng(centerLatitude, centerLongitude),
                radius,
                (90.0 - angle + 360.0) % 360.0
        );
        circlePath.add(circlePoint);
    }
    return circlePath;
}

但结果是图中所示的,对于那些来这里有同样问题的人,我只是避免了对多段线进行编码:事实上,只要我删除PolyUtil.encode并将点附加为| lat,long |我就能够画出一个完美的圆。

你们在Android应用程序中使用静态地图API吗?如果是这样,为什么不使用显示地图的静态图像?在本例中,您可以使用Circle类在lite模式下绘制圆形。谢谢xomena,我不知道lite模式,我会看看它。