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に表示する。