次の例では、ボタンを押した際に図形の形や色を変更します。
図形の形や色を変更するには、ZDC.PolylineクラスとZDC.OvalクラスのsetShapeStyle()とredraw()を利用します。
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP"> <script src="//api.its-mo.com/v3/webgl-loader?key=JSZddc5111626c8|Zo4wz&ver=bldg_w_tex&api=webgl.js&enc=EUC&force=1" type="text/javascript"></script> <script type="text/javascript"> "use strict"; var map, pl, ov, lat = 35.66297325982054, lon = 139.76598186955528; function loadMap() { map = new ZDC.Map( document.getElementById('ZMap'), { latlon: new ZDC.LatLon(lat, lon), zoom: 14.5, heading: 155, tilt: 70 } ); /* スケールバーを作成 */ var scale = new ZDC.ScaleBar(); /* スケールバーを表示 */ map.addWidget(scale); /* 線の頂点を作成 */ var latlons = []; latlons.push(new ZDC.LatLon(35.66297325982054,139.76598186955528)); latlons.push(new ZDC.LatLon(35.66397325982054,139.76648186955528)); latlons.push(new ZDC.LatLon(35.66197325982054,139.76698186955528)); /* 線を作成 */ pl = new ZDC.Polyline(latlons); /* 線を地図に追加 */ map.addWidget(pl); /* 楕円を作成 */ ov = new ZDC.Oval( { latlon: new ZDC.LatLon(35.660973,139.76498), x: 200, y: 200 },{ fillColor: '#000000' } ); /* 楕円を地図に追加 */ map.addWidget(ov); }; function redrawShape() { /* 線を多角形に変更してスタイルを編集 */ pl.setShapeStyle( { strokeColor: '#00FF00', strokeWeight: 2, fillColor: '#FF0000', lineOpacity: 0.4, fillOpacity: 0.4, closePath: true }); /* 線の変更を反映する */ pl.redraw(); /* 円のスタイルを編集 */ ov.setShapeStyle( { strokeColor: '#FF00FF', strokeWeight: 2, fillColor: '#0000FF', lineOpacity: 0.4, fillOpacity: 0.4, circle:true }); /* 円の変更を反映する */ ov.redraw(); }; </script> </head> <body onload="loadMap();"> <div id="ZMap" style="border:1px solid #777777; width:750px; height:500px; top:0px; left:20px; position:absolute;"></div> <div id="IBox" style="top:20px; right:40px; position:absolute;"> <input type="button" value="再描画" onclick="redrawShape();"> </div> </body> </html>