電子書籍の厳選無料作品が豊富!

エアホッケーのゲームを作りたいのですが、円の衝突の計算で行き詰っています。
やりたいのは、

1.円のパラメータに、半径r、速度ベクトルv、重さm、跳ね返り係数k(できれば)を設定
2.円同士の衝突で速度ベクトルを変化させる。衝突面と直前の速度のみでなく、重さと、ぶつかる相手(円)の速度も考慮したい

そして質問ですが、上記の項目を達成するために、

運動量保存則、
相対速度が衝突前と衝突後で一致、
エネルギー保存則
を用いたらできるでしょうか?

また、円の衝突部分によって速度の影響がどのように変化するのかがピンときません。

お知恵をお貸しくださいm(__)m

A 回答 (5件)

>(1)運動量保存則、


>(2)相対速度が衝突前と衝突後で一致、
>(3)エネルギー保存則
>を用いたらできるでしょうか?

エネルギー保存が成り立つとしておられるようですね。エネルギーロスがないのですから完全弾性衝突です。反発係数(跳ね返り係数)が1の場合です。
この場合は2つの円の中心を結ぶ方向の速度成分について相対速度を考えます。(2)は訂正が必要です。
相対速度「の大きさ」が衝突前と衝突後で一致します。相対速度の符号は逆になります。Va’-Vb’=-(Va-Vb)です。
k<1の場合は Va’-Vb’=-k(Va-Vb) です。
運動量保存則は成分についても成り立ちますから
maVa+mbVb=maVa’+mbVb’
もし質量が等しい場合は
Va+Vb=Va’+Vb’
になりますから上の式と組み合わせるとVa’=Vb,Vb’=Vaです。中心線方向の速度成分が入れ替わります。
速度の計算は簡単ですが衝突位置の計算が面倒でしょう。大きさがありますからどこでぶつかるかの判定には工夫が要ります。衝突の位置が決まってから中心線の方向が決まります。中心線の方向が変われば速度成分への分解も変わりますから相対速度が変わります。
    • good
    • 1
この回答へのお礼

ありがとうございます!大分イメージが固まりました。
これならできそうです。

お礼日時:2007/11/25 23:00

球Aは、エネルギーを与える。


球Bは、エネルギーを受ける。
接触点で、球Bは、球Aの進行方向と違う力を受ける。
その力点は、球Bと球Aの中心線を通る。

球A、Bの進行方向エネルギー1/2mV^2

Aの接点力、力方向、1/2mV^*2COS θ
単純に、球Bの速度成分にこれをベクトル加工しても済まない。

Bの反力を同じに考え、反発する角度と力量を出します。
(球Aは、壁である。)
つまり、二重に計算します。
更に、球Aのよる加力と合成します。
    • good
    • 0
この回答へのお礼

度々ありがとうございます。
球Aの進行方向と違う力とは具体的にどの方向なのでしょうか。
また力点が中心線を通るのでしょうか?
もう少しよく勉強したいと思います。

とりあえず当面の問題は解決しそうなので、一度締め切らせていただきます。
みなさまどうもありがとうございました。
またよろしくお願いします。

お礼日時:2007/11/25 23:07

これね。


2個球との中心線
2個球の運動線/運動量

この合成ベクトルで計算するんだわ。
    • good
    • 0
この回答へのお礼

ありがとうございます。
ですが私には抽象的で、よく理解できませんでした。。

お礼日時:2007/11/25 22:58

ゲームを作るだけなら



ぶつかった瞬間、接点の接線方向とその垂直方向に速度ベクトルを分解し、
接線方向への速度はそのまま
垂直方向への速度を反転させて跳ね返り係数をかける+加えられた速度を足す
として新しい速度ベクトルを作れば良いのでは無いでしょうか?

反作用による手への衝撃や、壁との摩擦による物体の回転まで計算したいのならば方程式を解く方がいいと思いますが。
    • good
    • 0
この回答へのお礼

ありがとうございます。

その方法は一度頭の中でイメージしてみましたが、
それだと同じ重さの静止している円に正面からぶつかった時に、
本来ならぶつかった側は止まる所が普通に反射してしまうので、
違う方法を探していました。

お礼日時:2007/11/25 22:57

 衝突の部分はビリヤードと共通していますので、下記のサイトを参考にされてはいかがでしょうか。



http://www.geocities.jp/no_smoking_pool/study.ht …
    • good
    • 0
この回答へのお礼

ありがとうございます。早速見てみます

お礼日時:2007/11/24 23:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


このQ&Aを見た人がよく見るQ&A