我有一個簡單的java應用程序,用於測試4個牆壁的碰撞並關閉10個球的每一個......我的牆壁已經算出來了,但是圓形到圓形似乎不適合我。當我與節目的其餘部分一起運行這個片段時,我得到了10個非常不穩定的圈子(似乎與自己發生碰撞),並且它們的動作都不是很大。如果我把這個部分拿出來,我會得到10個圓滑的移動並碰撞4個牆壁的圓。有人能告訴我什麼可能導致這個問題?謝謝這個圓圈到圓圈的碰撞有什麼問題?
for (int j = 0; j < ballnum; ++j) {
for (int k = 0; k < ballnum; ++k) {
if (Math.sqrt((Math.pow(balls[j].givebackpoint().x - balls[k].givebackpoint().x, 2))
+ (Math.sqrt(Math.pow(balls[j].givebackpoint().y - balls[k].givebackpoint().y, 2)))) <= 2 * RADIUS) {
if (balls[j].givebackangle() >= 180) {
balls[j].setangle(balls[j].givebackangle()-180);
}
else{
balls[j].setangle(360-balls[j].givebackangle());
}
}
}
}
似乎仍然沒有解決它。我明白你在說什麼。我會繼續玩弄它,稍後回來...... – jmendegan
你確定你的角度修改代碼是正確的嗎?我似乎無法弄清楚...... – Raceimaztion
我不完全確定......它好像對我有用。但你怎麼去做呢?只是好奇 – jmendegan