2013-08-31 42 views
-2

我已經隨機產生罪惡值使用角度:如何抵消整個隨機正弦角度?

sin(12) 
sin(33) 
sin(75) 
sin(125) 
... 

我想一個固定的旋轉添加到所有的這些,不知道是否有一個優雅的方式來做到這一點?我正在考慮進行一些比較和檢查,以查看角度+ my_additional_angle是否爲負值並且大於某些值,以便適當增加我的固定角度,但是首先想要一個更簡單的方法。

這也必須在這些限制內解決,即我不能使用矩陣等,因爲定義這些的應用程序非常有限。

最後,隨機角度介於0和180之間。我添加的角度可以是任何東西。

+0

線性代數? – 2013-09-01 01:32:44

回答

2

首先,三角函數弧度,不度工作,所以你幾乎可以肯定想:

sin(radians(12)) 
sin(radians(33)) 
# etc 

要添加的角度,如果你這樣做,你拿那麼前sin它真的很容易,只是

sin(radians(12+angle)) 
sin(radians(33+angle)) 

它應該沒有關係,如果負角度或大於360,sin仍然會正常工作,以便sin(radians(12)) == sin(radians(12+360)) == sin(radians(12-360))

+0

謝謝,我忘了提及這個應用程序,當他們實現他們的腳本API時,他們添加了像他們自己的sin/cos這樣需要度數的新功能。這不是很重要,但我做了你用度來解釋的內容,但是當我增加角度值時,我發現有些值的旋轉速度比其他值快,所以不知道這是錯誤的還是另一個問題。 –

+0

你會期望如果你添加一個恆定的角度,'sin'會根據初始角度以不同的速率增加。例如,對於較小的附加角度,在90度時,「罪」將變化非常緩慢,並且在0度時,罪將迅速改變。 (一般在接近0時變化最快,當接近1或-1時變化最快) – tom10

+0

這聽起來似乎值得做一些檢查以確保你使用的是正確的。例如,sin(A + 90)= cos(A),sin(A + 180)= - sin(A)等。 – tom10