JavaScriptを用いることにより,ある一定の周期で計測データの要求も行える。
本研究では,以下のようなスクリプトにより計測データの要求を実現している。
function getStream1()//urlからのデータをうけとる { var url='cgi-bin/svg_data.cgi'; getURL(url,handleStream1); } setInterval("getStream1();",100);//ms毎に実行 |
まず,function関数により,getStream1というオブジェクトを作成 する。このオブジェクトはgetURL関数により,ネットワーク上のサーバに リクエストを送る。送信されてきたデータは,handleStream1オブジェク トに渡される。
setInterval関数はgetStream1オブジェクトの実行周期を設定し, 実行をはじめる。
次に,画像の描画は以下のスクリプトにより実現している。
function handleStream1(data)//受け取ったデータから絵を作る { var msg =''; if(data.success){ msg = data.content; } else { msg = 'failed'; } k= k+6; rect1 = svgDocument.createElement('rect'); rect1.setAttribute("x", k); rect1.setAttribute("y", msg); rect1.setAttribute("height", 5); rect1.setAttribute("width", 5); rect1.setAttribute("id", 12); svgDocument.getElementById('111') .appendChild(rect1); } |
受信データはdataに格納されており, 受信の成功の確認は,data.successの値で判断できる。 受信データの本体は,daata.contentに格納されている。
画像の描画はsvgDocument.createElementにより実現しており, パラメータの設定はsetAttributeで行い, 最後にappendChildにより,Windowに表示する。