2016-03-23 15 views
-1

Bir görüntüyü, bir dereceden dönüştürülmüş bir radyan olarak depolanan dönüşüne bağlı olarak ileriye taşımaya çalışıyorum (bottomRotation).Nesneyi rotasyona göre hareket ettirme

Ne var bugüne kadar bunu pozisyonunu almak için:

double rotation = bottomRotation * (3.14159/180); 
posX += speed * cos(rotation); 
posY += speed * sin(rotation); 

Sorunum görüntü radyan dik hareket etmesini sağlar. Yerine 90 deneyin işe yaramazsa

+1

Radian, açılar için bir birimdir. "Radyana dik" ile ne demek istiyorsun? – zahir

cevap

-2

double rotation = bottomRotation * (3.14159/270); 

deneyin (veya ters yönde hareket etmiştir).

+0

Bir daire içinde kaç radyan var? – immibis

+0

Two Pi. Benim önerim, bir veya diğeri muhtemelen yolunu düzeltebileceğinden, dikey hareket eden meseleyi düzeltmeye çalışmak için pi/2 eklemek veya kaldırmaktır. Birisi 7 kez görüntülendi ve bir soruya yardım etmeye çalışmak için özür dilerim. –

+0

Bir daire içinde 2 * pi radyan varsa, çözümünüz bir daire içinde 480 derece olduğunu düşünür. Veya bir daire içinde 360 ​​derece varsa, çözümünüz sadece 1,5 * pi radyan olduğunu düşünür. – immibis

İlgili konular