【问题标题】:Building google map v3 polygon path from array of co-ordinates从坐标数组构建谷歌地图 v3 多边形路径
【发布时间】:2012-08-31 08:08:12
【问题描述】:

我正在尝试在美国县周围构建一个多边形。多边形的坐标来自数据库和 json 编码以在 javascript 中使用。这是来自 php 代码的 json 编码数组

{"Abbeville-sc":[["34.02593","-82.59388"],["34.02629","-82.59383"],["34.03162","-82.5975"],["34.04056","-82.60997"],["34.05677","-82.62081"],["34.06238","-82.62598"],["34.0649","-82.63427"],["34.06788","-82.64052"],["34.07661","-82.64548"],["34.08025","-82.64416"],["34.08676","-82.64022"],["34.09155","-82.64131"],["34.0947","-82.64426"],["34.09827","-82.64744"],["34.09987","-82.65131"],["34.10116","-82.65488"]]}

我构建多边形的方式如下:

    var points = []
    for(j=0;j < counties[i].length;j++)
    {
        var Latit =  parseFloat(counties[i][j][0]);
        var Longit = parseFloat(counties[i][j][1]);
        var ll = new google.maps.LatLng(Latit,Longit);
        points.push(ll);
    }

      var county = new google.maps.Polygon({
        paths: points,
        strokeColor: '#000',
        strokeOpacity: 0,
        strokeWeight: 2,
        fillColor:  '#000',
        fillOpacity: 0
      });

其中counties[i] 是abbeville-sc。我遇到的问题是它没有按预期创建多边形。任何形式的帮助将不胜感激。

【问题讨论】:

    标签: php javascript json google-maps-api-3


    【解决方案1】:

    看起来您的多边形是用不可见的边框和填充创建的。不透明度的作用类似于百分比的十进制表示。

    1 = 100% = opaque
    0 = 0% = transparent
    

    将不透明度值设置为大于 0 但不大于 1。

    【讨论】:

    • 这不是问题。当我 console.log(points) 它作为一个数组出现。可能这就是问题所在。想不通。
    • 一个数组是正确的。这是我使用您发布的代码制作的示例:jsfiddle.net/85Dhm。由于您没有发布完整的示例,因此我不得不对其稍作修改,因此问题可能出在您未发布的代码中。
    • 我注意到一件事,确保在 PolygonOptions 中指定 map 属性,或调用 county.setMap(map)
    • 感谢您的意见。我唯一需要在上面的多边形代码中添加的是地图。现在可以正常使用了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-23
    • 1970-01-01
    • 1970-01-01
    • 2012-02-22
    • 1970-01-01
    • 2012-07-22
    • 2023-03-04
    相关资源
    最近更新 更多