2013-05-30 99 views
0

在我的C#應用​​程序中,我想通過計算鼠標移動角度差來限制水平和垂直滾動。計算鼠標移動角度變化

刨角度大於60度的角度需要跟蹤爲垂直滾動。

我有初始的X,Y位置和當前的X,Y位置。如何計算鼠標移動的角度。

任何幫助將不勝感激。

+2

曾聽說過正弦和餘弦?檢查你的數學書... –

+0

你的意思是你想知道用戶在同一個地點停留時是否旋轉鼠標?恐怕這是不可能的。 – kramer65

+0

沒有線性移動 – PropertyChangedEventHandler

回答

0

這會給你的角弧度:

int dx = Math.Abs(x2 - x1); 
int dy = Math.Abs(y2 - y1); 

double angleRadians = Math.Atan2(dy, dx); 

double angleDegrees = (angleRadians * 180)/Math.PI; 

你可能會想忽略的角度爲其dxdy低於一定數量(像16將做到這一點)。