2013-01-12 50 views
0

我试图从谷歌地图静态图像API得到一个远足径的静态图像,我看到一些奇怪的行为。有时,它工作得很好,然后其他时候,它或者根本不显示路径,或者以奇怪的方式渲染它。奇怪的行为与谷歌地图中的路径静态图像api

这里不显示-了,我所希望的方式路径的一个例子:jagged path

当我从这些相同的坐标建立一个KML,一切都显示,高达只是我所期望的方式。但是当它发送到静态图像API时,某些事情会变得混乱起来。

我已经玩过调整地图中心和变焦没有明显效果。为了适应URL字符限制,我必须减少路径中的坐标数量。我已经尝试调整路径中的点数,但我仍然得到一个奇怪的锯齿状路径,而不是从我的KML文件中看到的路径。

我也试图从上面的URL中删除坐标,直到找到罪魁祸首,但后来我遇到了不同的问题。试试这张图片:no points at all。你会注意到这个图像中根本没有显示路径。

有时,调用工作得很好(我没有得到我想要的粒度,因为我必须在URL长度限制内修剪坐标 - 但我可以忍受这一点)。你可以在这里看到一个例子:working example

这是怎么回事?我是否犯了一个我看不见的简单错误,或者这是谷歌的一个结局?谢谢!

回答

0

我想通了。我没有正确地转义URL。我通过API网站浏览太快(发现here),当我回去并再次浏览指南时,我注意到了一些我第一次错过的东西。我使用的是python的url转义函数,它不会逃离那些需要转义和转义的东西,而这些东西不需要转义。

这里的工作路径的一个例子:

http://maps.googleapis.com/maps/api/staticmap?format=jpg-baseline&maptype=terrain&size=320x320&sensor=true&path=color:0xff0000ff%7Cweight:2%7C34.680923,-83.998035%7C34.682763,-83.996703%7C34.684612,-83.995759%7C34.685855,-83.994969%7C34.687478,-83.993794%7C34.689339,-83.99301%7C34.691484,-83.992649%7C34.693114,-83.991636%7C34.695631,-83.991983%7C34.697488,-83.990639%7C34.698856,-83.988732%7C34.700114,-83.986356%7C34.701881,-83.985913%7C34.703546,-83.98486%7C34.705588,-83.984205%7C34.707439,-83.985204%7C34.709409,-83.98474%7C34.710815,-83.982891%7C34.713098,-83.982932%7C34.715471,-83.981058%7C34.715643,-83.97896%7C34.716061,-83.976655%7C34.718408,-83.975622%7C34.718576,-83.972885%7C34.720504,-83.972258%7C34.722156,-83.970446%7C34.723245,-83.970965%7C34.724158,-83.968403%7C34.725936,-83.96585%7C34.727591,-83.963934%7C34.729219,-83.962787%7C34.730165,-83.960224%7C34.730464,-83.957465%7C34.731384,-83.954936%7C34.733571,-83.952937%7C34.735248,-83.951872%7C34.736235,-83.94911%7C34.738577,-83.94717%7C34.740465,-83.946156%7C34.741132,-83.943978%7C34.743225,-83.944512%7C34.745393,-83.943994%7C34.742783,-83.942916%7C34.742451,-83.941822%7C34.741552,-83.940703%7C34.740811,-83.939462%7C34.74023,-83.937804%7C34.738605,-83.936371%7C34.736056,-83.935923%7C34.734862,-83.935931%7C34.736535,-83.934433%7C34.737494,-83.932963%7C34.738196,-83.931812%7C34.737864,-83.9307%7C34.735883,-83.930629%7C34.735412,-83.928034%7C34.736785,-83.925242%7C34.737286,-83.922985%7C34.735846,-83.918937