2019年8月27日

用Javascript製作視野測定的程式

上週一個研究人員來詢問我十幾年前寫的一篇文章細節,他想知道《視野測定》的一些資料。詢問之後知道他是要做一些比較的實驗,不過用我當初寫的方式,做出來的結果我覺得會太粗糙。

於是週末的時候我就想應該可以寫個程式用電腦來進行測試。概念很簡單,就是讓螢幕先呈現一個小點,單眼靠近盯著它看,然後從旁邊慢慢移入一個色點,等到色點進入眼睛的視野時,就由測試者按鍵標定座標。重複上述步驟之後,再把這些色點的座標連起來就完成了。

不過要用什麼環境來做程式呢?一開始想到用python,不過應該找更容易操作的環境,後來就想到了用HTML5由Javascript來實現。

寫程式的過程其實是有趣的,因為沒寫過類似的程式,所以都要在網路上找程式寫法,找到答案之後,改寫成自己要的部份實作出來,成功了就很有成就感。可是要找答案,絕對不可能就把「視野測定」這樣的詞丟到論壇去找答案,我得先在腦中拆解問題,像是:
  • 用鍵盤移動螢幕圓點
  • Javascript的陣列操作方式
  • Javascript的資料呈現在html標籤內的方式
  • 資料儲存成檔案,和載入檔案的方式
最後就整理出了一個檔案,就像下圖這樣,可以設定每次測量的角度間隔,預設值是30度,所以總共會測試12個點。共會測試紅綠藍白四種顏色,然後紀錄的座標點都會顯示在螢幕上,最後可以按鍵作圖出來。
而考量實際做實驗的需求,有可能會要比較前次的實驗結果,所以我也做了存檔和載入檔案的功能。

唯獨要注意的是,如果是用這種手工《視野測定》的方法,紀錄的點就是視角,但這個看平面螢幕的紀錄方法,就單純是距離而已。

視野測定:檔案連結



使用方式則錄製成影片