多點觸控與Ink

先前介紹過Silverlight 3中的多點觸控機制另一個典型的多點觸控範例則是配合Ink機制在場景中自由繪圖,我們可以透過InkPresenter來呈現使用者在觸摸板上繪製的每一點。要達成這樣的效果並不困難:

 

您會發現我們只是在觸控點被按下(Down)時,建立Stroke對象,並將其加入場景上的InkPresenter1中。接着,我們只需要在每一個觸控點移動時,取得觸控點的每一個座標,加入Stroke對象即可,相當輕鬆容易。

  

這邊請特別注意一個狀況,由於FrameReported事件一次是傳回多個點,所以您會發現我們總是在For Each循環中處理這個事件,而For Each循環是依序的傳入每一個點,所以您會看到在上面兩個例子當中,我們都利用到數組來保留每一個點的信息,而數組的個數當然就會影響可同時處理的觸控點數。

 

這也是我們前面所說過的,從Silverlight Touch API的角度來看,只要硬設備支持的觸控點數沒有上限,則Silverlight都可以抓取到,接下來就看抓取到之後要怎麼處理了。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章