2012-11-19 72 views
0

我想用C#窗體來製作一個側面滾動遊戲,爲此我需要爲二維向量創建一個類。在搜索網頁時,我發現所有的三維向量都超出了我所需要的範圍,只要向查詢添加「二維」,我就只能得到多維數組的結果。二維向量

所有我需要的類做的是能夠得到矢量(大小和角度)的極化表達式並返回它的笛卡爾表達式(X,Y)&反之亦然。我試着用Math.Sin和Math.Cos來做,但我總是得到奇怪的結果。任何人都可以幫我解釋或準備好的代碼嗎?

+1

也許你正在考慮'Math.Sin'和'Math.Cos'工作度;他們實際上使用弧度。否則,很容易推出自己的PolarCoordinate類。我有一個(與其他一些東西)在這裏,你可以從我想的靈感:http://stackoverflow.com/questions/12126907/when-should-i-define-a-explicit-or-implicit-conversion -operator-in-c/12232002#12232002 –

+0

謝謝,我會研究一下 –

回答

1

您可以使用Vector結構,該結構在System.Windows命名空間中可用。如果您添加對WindowsBase.dll的引用,則可以使用它。向量結構有許多有用的靜態方法,但你無法獲得簡單的向量角度。你可以使用Vector.AngleBetween來達到這個目的。

+0

謝謝,我也會試試 –