Google Maps API v3:为symbolPath传递图像而不是内置符号

我刚刚了解了Google API提供的符号动画 。

我的代码中的每一件事都运行正常,但我只是想知道我是否可以在下面的代码中传递一个Image而不是一个符号。

var lineSymbol = { path: google.maps.SymbolPath.CIRCLE, scale: 8, strokeColor: '#393' }; 

如果是的话,我该怎么做? 我尝试过传递Image路径和Image对象。 什么工作..请帮帮我。

这是一个相当古老的post,但我试图解决这个问题时遇到了它,希望我收集的信息将有所帮助。 @jlivni是正确的,Symbol无法替换为图像。 解决这个问题的方法是使用Polyline和Marker。 您可以使用自定义标记替换标记图像并进行该移动。

这种方法的好处是你可以使用新的标记点在标记之前/之后更改折线的外观,查看从标记到结束位置的eta信息等。


这些有助于查看,但其中许多使用GMaps API v2:
http://econym.org.uk/gmap/
– 特别:
—- http://econym.org.uk/gmap/example_cartrip.htm (简单,只是去目的地)
—- http://econym.org.uk/gmap/example_cartrip2.htm (背后有一条可见的折线线索)
—- http://econym.org.uk/gmap/example_cartrip3.htm (旋转所以它总是面向道路,这就是我想要的)

http://www.geocodezip.com/
– – 特别:
—- http://www.geocodezip.com/v3_animate_marker_directions.html (这是API v3)
—- http://www.geocodezip.com/v3_animate_marker_xml.html (也是API v3通过xml动画而不是折线)


有用的脚本:v3_epoly.js取自http://www.geocodezip.com/scripts/v3_epoly.js 。 这个文件中的语法看起来像是直接破坏了,但我使用过的部分工作。 如果你需要的话,可能想通过手工修复它。 我还使用了谷歌小组论坛post中的Elabel3.js(我认为这是https://github.com/erunyon/ELabel )。 它用于标记动画。 它不适合我开箱即用。 我必须为我的程序更改onAdd(),draw()和redraw()。 有关详细信息,请访问: https : //developers.google.com/maps/documentation/javascript/reference#OverlayView

否 – 符号仅限于SVG路径,而不是任意图像。 请参阅https://developers.google.com/maps/documentation/javascript/3.exp/reference#Symbol

您可以将图片url传递给google.maps.Icon对象,但google.maps.Symbol对象使用google.maps.SymbolPath或SVG路径。 查找SVG路径语法。 这是CS和InkScape等许多工具可以为您生成的标准。

请参阅提供SVG坐标的官方自定义SymbolPath 示例 。