三角関数をつかって移動処理をしているのですが、6パターンくらいの角度しかうごきません
Re:三角関数をつかって移動処理をしているのですが、6パターンくらいの角度しかうごきません
ただの推測ですが、360°を一周とする度数法でやってませんか?
プログラミングで使うのは、2πを一周とする孤度法です。
プログラミングで使うのは、2πを一周とする孤度法です。
Re:三角関数をつかって移動処理をしているのですが、6パターンくらいの角度しかうごきません
今自分も同じ事をしています
もし自分の思い違いでなければ
これで角度はでます
自分はアークタンジェントを使ってます
atan2( 物.y - 物.y, 物.x - 物.x );
もし自分の思い違いでなければ
これで角度はでます
自分はアークタンジェントを使ってます
atan2( 物.y - 物.y, 物.x - 物.x );
Re:三角関数をつかって移動処理をしているのですが、6パターンくらいの角度しかうごきません
6パターンくらいの角度というのが解りませんが、三角関数ですからまず角度を与えるものだと思うのですが。
難しく考えすぎではありませんか? 単純に公式に当てはめればいいだけだと思いますよ。
下記のコードは45度の角度で1移動したときのx座標とy座標をもとめています。
難しく考えすぎではありませんか? 単純に公式に当てはめればいいだけだと思いますよ。
下記のコードは45度の角度で1移動したときのx座標とy座標をもとめています。
#define PI 3.141592 main { double r = 45 * PI / 180; //45度 double y = sin(r); double x = cos(r); printf("x = %f, y = %f\n", x, y); }
Re:三角関数をつかって移動処理をしているのですが、6パターンくらいの角度しかうごきません
#define RAD (3.14159265/180)
float angle=30.0f;
x+=cos(angle*RAD)*Speed;
y-=sin(angle*RAD)*Speed;
これでどうでしょうか?
float angle=30.0f;
x+=cos(angle*RAD)*Speed;
y-=sin(angle*RAD)*Speed;
これでどうでしょうか?
Re:三角関数をつかって移動処理をしているのですが、6パターンくらいの角度しかうごきません
もしかして、STGの自機の動きでしょうか?
左上↑右上
← →
左下↓右下
だとすると、普通8パターンくらいしか動きませんよ。
前に回答者さんが言っていましたが、詳しく状況を書かないと詳しい回答が得られません。
詳しく開発環境から疑問している部分とソースコードを提示してください。
左上↑右上
← →
左下↓右下
だとすると、普通8パターンくらいしか動きませんよ。
前に回答者さんが言っていましたが、詳しく状況を書かないと詳しい回答が得られません。
詳しく開発環境から疑問している部分とソースコードを提示してください。