仮面ライダー系同人ゲーム
レス数が900を超えています。1000を超えると表示できなくなるよ。
0931Vitch=N=Hodh ◆vM88wvQgLo
2006/01/16(月) 23:12:58ID:vEvBQ79A上記の式は0°〜90°の場合においてのみ有効です。
270>a>90の場合、cos(a)がマイナスになってしまうので、
cos(a)の解に対して絶対値を求めます
また、180>a>360の場合においても、sin(a)がマイナスになってしまうので、
これもまた絶対値を求めます。
float num ;
float sin_a, cos_a ;
sin_a = fabs(sin(a)) ;
cos_a = fabs(cos(a)) ;
num = ( sin_a*( (float)x1 ) + cos_a*( (float)y1 ) ;
y2 = (int)( num + ( num > (int)num ) ) ;
num = ( sin_a*( (float)y1 ) + cos_a*( (float)x1 ) ;
x2 = (int)( num + ( num > (int)num ) ) ;
…とするといいでしょう。
aが360°以上である場合、一回りしてしまうので、
360°で割ったあまりをaに入れましょう。
レス数が900を超えています。1000を超えると表示できなくなるよ。