none
關於Win視窗的滑鼠感應? RRS feed

  • 問題

  •  

    各位前輩您們好,小弟有一個關於滑鼠感應的小問題...


    在二度空間中(x y軸),以電腦來說,若用滑鼠在螢幕上畫條 直線 以及 橫線,該怎樣做可以讓電腦
    察覺所畫的線條是值得或橫的?

    目前小弟想要仿效wii感應的方式,將動作簡單化,只分成 橫向 縱向 前後 三種訊號做分析,但是不知道
    該如何才能夠讓電腦知道你現在在做的動作屬於哪個?(個人覺得似乎可以從加速度下手(?))
    ,但是因為目前還沒有任何頭緒,所以想先退到二維視窗介面上的辨識...

    想請教各為先進是不是有什麼想法或是應該採用哪種方式,才能讓電腦辨識出滑鼠畫出來軌跡所屬哪類?
    (靠座標?加速度?....?)那如果二維的方式作得到三維也可以用類似的方式嗎?


    不好意思,打擾各位了,還有勞大家多多幫忙,分享經驗與想法(或是該去哪邊找類似文章或討論區等等),先謝謝前輩的解答^^

    2007年8月31日 上午 07:05

解答

  • 先前站管有貼個範例:

    .NET 與 任天堂Wii的結合

     

    是 .Net 支援 Wii 搖桿的範例程式,可以先參考一下。

     

    一般滑鼠沒有內建陀螺儀,不能直接取得加速度、速度與位置,所以操作你只能就某段為小時間座標的變化為依據,再除以 dt (對時間微分) ,算出速度、加速度。

    2007年8月31日 上午 08:01
    版主

所有回覆

  • 先前站管有貼個範例:

    .NET 與 任天堂Wii的結合

     

    是 .Net 支援 Wii 搖桿的範例程式,可以先參考一下。

     

    一般滑鼠沒有內建陀螺儀,不能直接取得加速度、速度與位置,所以操作你只能就某段為小時間座標的變化為依據,再除以 dt (對時間微分) ,算出速度、加速度。

    2007年8月31日 上午 08:01
    版主
  • 先感謝您的回答^^

     

    這支程式我本身也有玩過, 不過似乎只有單純的偵測出Wiimote的一些動作(?)

    小弟目前可以透過藍芽裝置將訊號送給電腦, 並且將波形畫出來, 所以前輩您的意思是, 分別對x y z軸各做一次 ,將我抓到的座標點, 對時間作微分得到速度, 接著再對時間做微分 得到加速度, 然後根據加速度的變化(還沒想清楚是怎樣的變化??), 來判定移動的方向是x或y或z嗎?

     

    小弟懂得東西不多,還請多多指教Smile

    2007年8月31日 上午 09:26
  • 你如果只是要決定方向:

    Max(Abs(x2 - x1), Abs(y2 - y1), Abs(z2 - z1))

    即可。

     

    假設你有主方向,則主方向必定很大,但是二維或三維的東西,只用單一方向會滿怪的。

     

    會說到對時間微分,是你先前有提到速度跟加速度的關係。

     

    像是觸控板有提供一個鎖定方向的功能,可透過熱鍵決定滑鼠只有左右移或上下移,這個只會用在特殊狀況,或是繪圖軟體提供,比如說 Visio 也有這類功能。

     

    另外由座標去換算速度或加速度,解析度會比你想像中差,我們做量測觀測時,不會直接由座標換算,而是由陀螺儀的數據去讀,因為陀螺儀可得到瞬間值,但座標受取樣率影響,得到的是單位時間的平均值。

    2007年8月31日 上午 10:13
    版主