コミュニティアイコン プチコン 非公式コミュニティ トピック

アバター
オワたず ◆w7BXxYlkW2NJ
2019/12/7 17:06
質問
スティックの角度を得たい
スライドパッドから角度ってどうやってやるんでしたっけ(語彙力)

y/√x^2+y^2 絶対なんか違う

コメント

アバター
ところてん 2019/12/7 17:10 ◆uZxY4TWNggV7
ATAN(y,x)で角度(ラジアン)が出ます
ミスってたので修正
x,y→y,x
アバター
こういち 2019/12/7 17:41 ◆ou0jbJnEJ0Kb
ATAN(Y,X)ですね。傾きY/Xの/が,に変形したやつと考えると覚えやすい。
得た角度をSPROTに適応する場合、ATAN(X,Y)とすると便利。(SPROTとATAN()は角度の向きや単位、0度の位置が違う)

>>y/√x^2+y^2
ベクトルの正規化と言って、基準点からx,yまでの距離が1になるようにするやつです。シューティングゲームなどで追尾弾を作る場合ATANと並んでよく使われるアルゴリズムですね。
dist=sqr(x*x+y*y)としておいて、
x=x/dist:y=y/dist
あとはx,yに適当な数を掛けてやれば自由な大きさにすることが出来ます。
アバター
オワたず 2019/12/7 22:13 ◆w7BXxYlkW2NJ
ありがとうございます!
解決しました
アバター
オワたず 2019/12/8 12:30 ◆w7BXxYlkW2NJ
すみません、もう一ついいですか(
半径rが分かっている円の中心(a,b)からの座標の求め方がわかりません
アバター
こういち 2019/12/8 15:24 ◆ou0jbJnEJ0Kb
これは三角関数がジャストだと思います。
半径rの円の角度θ方向の座標は
x=r*cos(θ)y=r*sin(θ)
θはラジアン。
アバター
あきと 2019/12/8 15:58 ◆qGd5dQw2g3a2
横から補足ですが、
x=r*cos(θ)+a
y=r*sin(θ)+b
座標(a,b)の加算も。
アバター
オワたず 2019/12/8 21:35 ◆w7BXxYlkW2NJ
ありがとうございます
三角関数苦手なもので()

コメントを書く

この投稿にはコメントできません。

- WEB PATIO -