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