[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 01/10 20:35 / Filesize : 257 KB / Number-of Response : 906
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

質問にやさしく親切に答えてくれるスレ 3



201 名前:デフォルトの名無しさん [2007/11/03(土) 04:16:12 ]

質問です
2Dでの話です
同じ大きさの丸Aと丸Bが動いているのですが、AとBが衝突したとき、それを完全弾性衝突であるかのように処理をしたいのです。
GetX(A)とGetY(A)でAのXY座標、GetSpeed(A)でAのスピード、
GetAngle(A)でAの進行方向角度(右を0とし、真下を90とするdeg。ただし、0〜360の間の数値であるとは限らない。)
が求めることが出来ます。
SetX(A,50)とやればAのX座標を変更出来ます。もちろんY座標、スピード、
Bについても同様です。
平方根の計算は2^0.5のようにしないといけません。

dist_x = GetX(A) - GetX(B)
dist_y = GetY(A) - GetY(B)
dist = (dist_x * dist_x + dist_y * dist_y)^0.5
if(dist == 0){dist = 0.01}
dist_px = dist_x / dist
dist_py = dist_y / dist
SetX(A,GetX(A)+dist_px * (32.0 - dist) / 2.0)
SetY(A,GetY(A)+dist_px * (32.0 - dist) / 2.0)
SetX(B,GetX(B)-dist_px * (32.0 - dist) / 2.0)
SetY(B,GetY(B)-dist_px * (32.0 - dist) / 2.0)

ここまではできたのですが、
ここからAとBのX成分の速度、Y成分の速度を求めたいのですが、
いい方法はありませんか?
sin cos tanとその逆関数は使えます。






[ 続きを読む ] / [ 携帯版 ]

全部読む 前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<257KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef