3

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

我的代码中的每件事都运行良好,但我只想知道是否可以在下面的代码中传递图像而不是符号。

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

如果是,我该怎么做?我试过传递图像路径和图像对象。没有任何效果..请帮帮我。

4

3 回答 3

5

这是一个相当老的帖子,但我在尝试解决这个问题时遇到了它,希望我收集的信息会有所帮助。@jlivni 是正确的,符号不能用图像替换。解决这个问题的方法是使用折线和标记。您可以用您的自定义标记图像替换标记图像并进行移动。

这种方法的好处是您可以使用新的标记点在标记之前/之后更改折线的外观,查看从标记到结束位置的 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。该文件中的语法看起来像是直接损坏了,但我使用的部分可以正常工作。如果需要,可能需要手动完成此操作以修复它。我还使用了谷歌论坛帖子中的 Elabel3.js(我认为这就是https://github.com/erunyon/ELabel)。它用于标记动画。开箱即用它对我不起作用。我不得不为我的程序更改 onAdd()、draw() 和 redraw()。更多信息在这里:https ://developers.google.com/maps/documentation/javascript/reference#OverlayView

于 2014-05-27T16:20:29.737 回答
1

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

于 2013-05-10T05:04:06.720 回答
0

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

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

于 2014-01-06T14:49:11.587 回答