加上臨時的標註
[info] 小提示:
程式碼連結:我是連結
現在我們要在地圖上畫一些自訂的圖案、文字等等自訂標註。
首先先建立一個VectorLayer
var custom = mapDoc.NewVectorLayer("Custom")
再來讓我們新增一個藍色的點
var p0 = new GeoPoint(-2400000.0, 8000000.0);
var id0 = custom.NewPoint({ 'Point': p0, 'FillColor': 'rgb(0,0,255)', 'Radius': 10 });
[info] 小提示:
目前程式碼所用的坐標為世界坐標,其意義為直接指向某個地點。 後面會說明如何把使用者輸入的點轉換成世界坐標。
接下來加快進度,一口氣新增各種類型的標註
var buffer1 = []
buffer1.push(new GeoPoint(-1600000.0, 9000000.0));
buffer1.push(new GeoPoint(-1100000.0, 9000000.0));
buffer1.push(new GeoPoint(-1100000.0, 8500000.0));
buffer1.push(new GeoPoint(-1600000.0, 8500000.0));
var id1 = custom.NewPolygon(new GeoPolygon(buffer1), '#FFFFFF', 3, 'rgb(255,0,0)' );
//白框紅底方形
var buffer2 = []
buffer2.push(new GeoPoint(2100000.0, 7000000.0));
buffer2.push(new GeoPoint(2400000.0, 7500000.0));
buffer2.push(new GeoPoint(1800000.0, 7500000.0));
buffer2.push(new GeoPoint(2100000.0, 7000000.0));
var id2 = custom.NewPolyline(new GeoPolyline(buffer2), '#00FF00', 5);
//綠色三角形
var p1 = new GeoPoint(-2100000.0, 7000000.0);
var id3 = custom.NewText(p1, "PilotGaea");
//文字