我在http://www.choptankelectric.com/outages/google/cec_create_xml.html有一个页面,其中有几个多边形,其中一些包含“甜甜圈”孔,这些孔应该是透明的,但显示为灰色。
坐标来自一个 XML 文件,应该看起来像http://www.choptankelectric.com/outages/index.html,它使用了一个非常庞大的包含文件并且不优雅。XML 是根据保存在 mySQL DB 表中的坐标生成的。每个多边形都有一个多边形ID 和(在内部多边形的情况下)一个显示包含它的父外部多边形的字段。
我怎样才能让它显示透明的甜甜圈孔?
因此,代码是:
var phpscript = "cec_create_xml.php"; // creates xml data for polygons
downloadUrl(phpscript, function(data) {
var polygons = data.documentElement.getElementsByTagName("polygon");
for (var a = 0; a < polygons.length; a++) {
//for (var a = 0; a < 1; a++) {
var Parent = polygons[a].getAttribute("Parent");
var strokeColor = polygons[a].getAttribute("strokeColor");
var strokeOpacity = polygons[a].getAttribute("strokeOpacity");
var strokeWeight = polygons[a].getAttribute("strokeWeight");
var fillColor = polygons[a].getAttribute("fillColor");
var fillOpacity = polygons[a].getAttribute("fillOpacity");
var pts = [[]];
var points = polygons[a].getElementsByTagName("point");
for (var i = 0; i < points.length; i++) {
pts[i] = new google.maps.LatLng(parseFloat(points[i].getAttribute("lat")),
parseFloat(points[i].getAttribute("lng")));
}
var polyOptions = {
paths: pts,
strokeColor: strokeColor,
strokeOpacity: strokeOpacity,
strokeWeight: strokeWeight,
fillColor: fillColor,
fillOpacity: fillOpacity
}
varCECarea = new google.maps.Polygon(polyOptions);
CECarea.bindTo('map',map,'polymap');
}
});