46. 2.訊息視窗
46
• 訊息視窗 --- TGInfoWindow(string content, Point position,
TGInfoWindowOptions opts)
TGPoint()訊息內容 + = TGInfoWindow()
var info = new TGOS.TGInfoWindow(“訊息內容”, new TGOS.TGPoint(x,y));
info.open(pMap);
47. 2.訊息視窗-建立視窗
47
var infotext = [‘<B>臺中市政府']; //訊息視窗的內容,
var imgUrl ='https://pixabay.com/static/uploads/photo/2014/04/02/10/45/location-
304467_960_720.png'; //標記點圖示來源
//建立點資料結構
var markerPoint = new TGOS.TGPoint(214192, 2673102) ; //填入地標坐標位
置
var markerImg = new TGOS.TGImage(imgUrl, new TGOS.TGSize(33, 38), new
TGOS.TGPoint(0, 0), new TGOS.TGPoint(10, 33)); //標記點圖片及尺寸大小
//建立標記點
var pTGMarker = new TGOS.TGMarker(pMap, markerPoint,'',markerImg);
//設定訊息視窗
var InfoWindowOptions = {
maxWidth:4000, //訊息視窗的最大寬度
opacity:0.8, //訊息視窗的透明度
pixelOffset: new TGOS.TGSize(5, -30)//訊息視窗錨點平移量
};
//建立訊息視窗
messageBox= new TGOS.TGInfoWindow(infotext, markerPoint,
InfoWindowOptions);
73. 73
heatmap = new TGOS.TGHeatmapLayer({
data: createData(), //指定繪製熱區圖之資料
map: pMap //指定要繪製熱區圖的地圖物件
});
var createData = function () { //本範例將隨機生成資料
var count = 500;
var data = [ ];
while (count -- ) {
var xy = BoxMullerPolar(23.480, 23.485, 120.450, 120.455);
var y = xy.x;
var x = xy.y;
if (isNaN(x) || isNaN(y))
continue;
var pt;
if (coordSys == TGOS.TGCoordSys.EPSG3826) {
var twd97 = TGOS.WGS84toTWD97(x, y);
pt = new TGOS.TGPoint(twd97.x, twd97.y); //建立點資
料
}
else
pt = new TGOS.TGPoint(x, y);
data.push(pt);
}
74. 74
var setData = function () {
heatmap.setOptions({
data: createData()
});
}
var changeRadius = function () {
heatmap.setOptions({
radius: document.getElementById("radius").value
});
}
var changeOpacity = function () {
heatmap.setOptions({
opacity: document.getElementById("opacity").value
});
}