日別アーカイブ: 2020/02/12

Speakedraw(3) – 反射角度


前回からの続きです。

関数「move」からも呼ばれていますが、前回説明したisTouchでも出てくる関数「setAngle」を解説します。
こちらは見ての通りオブジェクトが進む角度を設定します。壁にぶつかったり、他のオブジェクトと接触した時に進行方向が変わるときに使います。ただしこちらは垂直面で接触した際に設定される反射角です。
元の角度が正数の場合は180度を減算、負数の場合は-180度減算します。
例)
30度の場合
30 – 180 = -150度
-150度の場合
-150 – (-180) = 30度 ※-と-で実際は加算になります。

また水平面で接触した場合は元の角度に-1をかけることで反射角が設定できます。
30度の場合は-30度、120度の場合は-120度になります。
動作するプログラムはこちらです。
続きを読む