2012-09-06 35 views
2

我試圖在美國各州建立一個多邊形。多邊形的座標來源於數據庫,json編碼用於javascript。下面是從PHP代碼從座標陣列構建谷歌地圖v3多邊形路徑

{"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"]]} 

我建立多邊形的方式是如下的JSON編碼數組:

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 
     }); 

其中縣[i]是阿布維爾-SC。我遇到的問題是它沒有按預期創建多邊形。任何形式的幫助將不勝感激。

回答

1

看起來你的多邊形是用不可見的邊框和填充來創建的。不透明度就像百分比的十進制表示。

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

設置你的不透明度值的東西大於0但不大於1

+0

這不是問題。當我console.log(點)它出來作爲一個數組。可能是這個問題。無法弄清楚。 – ash

+0

一個數組是正確的。以下是我用你發佈的代碼所做的一個例子:http://jsfiddle.net/85Dhm/。既然你沒有發佈完整的例子,我不得不稍微修改它,所以問題可能在你沒有發佈的代碼中。 –

+1

我注意到的一件事,確保你要麼指定PolygonOptions中的map屬性,要麼調用'county.setMap(map)'。 –