我真正想要做的是允许用户使用谷歌地图创建地图并保存图像。我试图通过使用谷歌地图api V3和静态地图api来解决这个问题。
用户可以使用动态谷歌地图滚动,缩放等,并找到他们喜欢的地图。然后,用户应按下一个按钮,该按钮从谷歌地图(中心,缩放级别等)中提取数据,该数据将查询发送到静态谷歌地图API。静态谷歌地图api将返回可以保存的图像。
我有这个全部工作*除了它并不总是有效。有时,静态谷歌地图返回的图像将完全是用户在动态地图中看到的图像。其他时候图像可能会偏离几米(我相信这是因为动态谷歌地图api使用比静态api更高的经度和纬度精度),甚至数千公里(我不知道为什么会发生这种情况)。图像通常在缩放级别越大(因为精度差异)。
我想知道是否有人尝试将动态地图转换为静态地图,并想出了一个非错误的解决方案,或者是否有更好的解决方案可行。
答案 0 :(得分:1)
“...我相信这是因为动态谷歌地图api使用更多 经度和纬度的精度高于静态api ......“
AFAIK在谷歌地图V3和静态地图api中,纬度和经度精确到小数点后6位。小于6位小数的精度被忽略。这似乎是这两个文档中提出的观点,尽管与地图api的状态有关(我的重点)。
“使用Google地图的当前缩放功能,您应该只是 小数点后需要6位精度“
静态http://code.google.com/apis/maps/documentation/staticmaps/#Usage
常规http://code.google.com/apis/maps/articles/phpsqlajax_v3.html
如果没有看到您正在使用的代码,很难说出问题的根本问题是什么。
答案 1 :(得分:0)
This wizard是一个非常好的开始。它允许用户构建地图,然后将所有内容(叠加等)转换为合适的静态地图URL。
它使用Maps API V2,但不推荐使用。您需要使用V3 Maps API。
另一个做类似事情的向导是Styled Maps Wizard。它没有任何叠加层,但允许用户设置地图样式,重新居中,指定缩放,然后生成样式化地图URL。