我正在尝试通过api v3将多边形的融合层导入Google地图。地图和融合层可以正常使用,但是在保存融合表或maps api之后,fillOpacity和fillColour不会生效:

    var fusionTableId = "1Rd2LBEusHQsjsMAVsgYm_E_4OlpqgSb07ojJRL3O";
    fusionLayer = new google.maps.FusionTablesLayer(fusionTableId,{
        suppressInfoWindows: true,
        map: map,
        styles: [{
            polygonOptions: {
                fillColor: "#00FF00",
                fillOpacity: 0.3
            }
        }]
    });
    fusionLayer.setMap(map);


多边形以默认的红色显示,似乎无法组合更改颜色。

理想情况下,我只希望将不透明度降低到1%,但是我尝试不高兴地更改颜色(如上所述)。

有任何提示/提示吗?

非常感谢

最佳答案

您正在使用“旧的” FusionTablesLayer语法FusionTablesLayer(FusionTableId, options:FusionTablesLayerOptions)

var fusionTableId = "1Rd2LBEusHQsjsMAVsgYm_E_4OlpqgSb07ojJRL3O";
fusionLayer = new google.maps.FusionTablesLayer(fusionTableId,{
    suppressInfoWindows: true,
    map: map,
    styles: [{
        polygonOptions: {
            fillColor: "#00FF00",
            fillOpacity: 0.3
        }
    }]
});
fusionLayer.setMap(map);


current syntax是:
 FusionTablesLayer(options:FusionTablesLayerOptions)(它支持您尝试使用的动态样式)将是:

var fusionTableId = "1Rd2LBEusHQsjsMAVsgYm_E_4OlpqgSb07ojJRL3O";
fusionLayer = new google.maps.FusionTablesLayer({
    suppressInfoWindows: true,
    map: map,
    query: {
      from: fusionTableId,
      select: "geometry"
    },
    styles: [{
        polygonOptions: {
            fillColor: "#00FF00",
            fillOpacity: 0.3
        }
    }]
});
fusionLayer.setMap(map);


(如您所发现)

09-12 13:46