谷歌映射Api 3符号

时间:2014-03-15 16:17:19

标签: google-maps google-maps-api-3 svg

我想在谷歌地图上显示我当前位置的标记,我可以根据用户的标题进行旋转。

目前只有符号可以附加到标记并旋转(更多https://developers.google.com/maps/documentation/javascript/symbols)。

我的挑战是我想使用看起来像这样的自定义符号(https://drive.google.com/file/d/0B5UD8mTDFqP7UHZ6bGpMeGpFR1U/edit?usp=sharing)。

我的问题是SVG文件用于定义PATH和CIRCLE的形状,但google API仅支持路径。

这是SVG标记:

<g> <g> <path fill-rule="evenodd" clip-rule="evenodd" fill="#ED6C61" d="M8.234,17.247c- .68,0-3.28-0.336-4.744-0.938c1.975,2.701,3.938,4.688,4.744,4.688s2.77-1.986,4.745-4.688C11.516,16.911,9.915,17.247,8.234,17.247z"/> </g> </g> <circle fill="#ED6C61" cx="8.235" cy="8.235" r="8.235"/>

如何仅使用路径获取此形状?

由于

1 个答案:

答案 0 :(得分:0)

创建两个对象的单个路径。

工作流程(使用inkscape):

  1. 打开SVG
  2. 选择圈子
  3. 将圈子转换为路径:
    CTRL + SHIFT + C (或菜单 - &gt;路径 - &gt;路径对象)

  4. 选择两个路径:
      CTRL + A

  5. 结合以下内容:
    CTRL + K (或菜单 - &gt;路径 - &gt;合并)
  6. 结果:

     m 16.469999,8.2349997 c 0,4.5480643 -3.686935,8.2349993 -8.2349993,8.2349993 C 3.6869349,16.469999 0,12.783064 0,8.2349997 0,3.6869349 3.6869349,0 8.2349997,0 12.783064,0 16.469999,3.6869349 16.469999,8.2349997 z M 8.234,17.247 c -1.68,0 -3.28,-0.336 -4.744,-0.938 1.975,2.701 3.938,4.688 4.744,4.688 0.806,0 2.77,-1.986 4.745,-4.688 -1.463,0.602 -3.064,0.938 -4.745,0.938 z
    

    演示:http://jsfiddle.net/doktormolle/LLH5s/