Супер бильярд, подскажите... |
Супер бильярд, подскажите... |
-Aleks- |
21.01.2010 9:04
Сообщение
#21
|
Гость |
Да не - нам то в радианах потом и нужно будет. Это "l" для касательной, а надо для прямой соединяющей коорд. первого шарика и точки касания - т.е. надо без "- PI/2". Но дело не в этом, всё таки в самих формулах скоростей чо-то... Может откомпилируешь тот код вместе с моими формулами, и если надо, изменишь что-то - всё-тки посмотреть на это надо (попробуешь тот случай, что я описывал, проверить). Можно эту програму для lazarys переделать? |
Archon |
21.01.2010 10:34
Сообщение
#22
|
Профи Группа: Пользователи Сообщений: 618 Пол: Мужской Репутация: 24 |
Дак она и так под lazarus работает не плохо. Что переделывать-то?
-------------------- Close the World...txeN eht nepO
|
TarasBer |
21.01.2010 19:12
Сообщение
#23
|
Злостный любитель Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: 62 |
Для шаров одной массы при идеально упругом столкновении всё весьма просто:
При столкновении двух шаров у нас есть линия центров и общая касательная, они взаимно перпендикулярны. Надо импульсы спроецировать на эти линии. Тогда проекции на касательную не изменятся, а проекции на линию центров обменяются друг с другом. То есть если есть векторы скорости v1 и v2, и есть вектора x и y, на которые мы проецируем, то тогда v1 = x<x,v1>/sqrx + y<y,v1>/sqry v2 = x<x,v2>/sqrx + y<y,v2>/sqry После удара: v1 = x<x,v1>/sqrx + y<y,v2>/sqry v2 = x<x,v2>/sqrx + y<y,v1>/sqry -------------------- |
Текстовая версия | 10.11.2024 13:12 |