2015-09-28 27 views
0

我正在尝试使用http://ngmap.github.io/绘制多边形。如果我使用下面的代码它完美的作品:ngMap - 如何使用数组绘制多边形

<map center="<% latitude %>, <% longitude %>" zoom="2"> 
     <marker 
      ng-repeat="marker in GoogleMap.markers" 
      on-click="showInfoWindow(event, marker)" 
      icon="/images/<% marker.icon %>" 
      position="<% marker.latitude %>, <% marker.longitude %>" 
     > 
     </marker> 
     <shape 
      paths="[[25.774252, -80.190262],[18.466465, -66.118292],[32.321384, -64.75737],[25.774252, -80.190262]]" 
      name="polygon" 
      stroke-color="#FF0000" 
      stroke-opacity="0.8" 
      stroke-weight="2" 
      fill-color="#FF0000" 
      fill-opacity="0.35" 
     > 
     </shape> 
    </map> 

但是,如果我给你的多边形坐标到我的控制器内的范围变量它与“不是数组”崩溃如下

<map center="<% latitude %>, <% longitude %>" zoom="2"> 
     <marker 
      ng-repeat="marker in GoogleMap.markers" 
      on-click="showInfoWindow(event, marker)" 
      icon="/images/<% marker.icon %>" 
      position="<% marker.latitude %>, <% marker.longitude %>" 
     > 
     </marker> 
     <shape 
      paths="polgon" 
      name="polygon" 
      stroke-color="#FF0000" 
      stroke-opacity="0.8" 
      stroke-weight="2" 
      fill-color="#FF0000" 
      fill-opacity="0.35" 
     > 
     </shape> 
    </map> 

。 ..其中多边形是在我的控制器内定义为

$scope.polygon = [[25.774252, -80.190262],[18.466465, -66.118292],[32.321384, -64.75737],[25.774252, -80.190262]]; 

我是否缺少明显的东西?任何帮助表示赞赏。

+0

可能是因为它的路径=“多边形”字符串,而不是你在控制器中定义的。尝试将其更改为paths = polygon。 – Shivi

+0

谢谢,非常接近!我需要在星期一发生的时候附上一个角度支架(doh!),我还在睡觉。 –

+0

Hahaaaa ...是啊....:D – Shivi

回答

0

问题是路径的值以“多边形”字符串形式出现,而不是数组。

它通过添加大括号来解决。