Столкновение сфер

Добавлен
Прочитал очень много информации по этому поводу, в частности про угол падения равен углу отражения и закон сохранения импульса, но меня очень смущает одна вещь. Предположим что мы запускаем железобетонный шар со скоростью 200км/ч и он сталкивается с обычным воздушным шариком, он что должен от него отлететь?... Должен же быть способ просчитать отлетит ли один шар от другого или полетит вместе с ним в ту же сторону. Буду очень признателен если кто-то подскажет способ.

Принятый ответ

Спасибо, именно это я и спрашивал. Но это как то не хорошо когда разница в 1 грамм будет иметь такие последствия. Хочется все же какую-нибуть формулу.
p.s. пишу систему на cjass, со знаниями в области jass'а проблем нет.
Все, проблема решена. Спасибо товарищу D_Konst за то что придал мне ускорения в поиске ответа на данный вопрос.
Если кому-то пригодится, вот что я нашел:
(| - вектор)
пусть 1й шар в процессе столкновения получает изменение импульса |p, в отсутствии трения оно направленно по нормали |n (линии, соед. центры шаров в момент удара), |p = p*|n, тогда по ЗСИ 2й шар получает |-p,
тогда новые скорости
|v1'=|v1+|p/m1
|v2'=|v2 -|p/m2
при абс.упругом ударе из ЗСЭ
p=2*(|v2-|v1,|n)/(1/m1+1/m2)
(|v2-|v1,|n) - скалярное произведение векторов
ЗСИ - закон сохранения импульса, ЗСЭ - закон сохранения энергии
0
21
12 лет назад
0
Уважаемый, конкретизируйте. . .
Я понял вопрос следующим образом: вам нужна наработка физического столкновения на движке вара.
Для это вам придется установить вес каждого "Шара" через переменную и в зависимости от условий делать действия:
1.Если первый шар тяжелее второго-оттолкнуть второй шар/изменить скорость первого
2.Если первый шар одного веса со вторым - оттолкнуть(Слабее оба шара)
3.Если второй шар тяжелее первого-оттолкнуть первый шар/изменить скорость второго
(Конечно силу отталкивания/замедления а также дистанцию отталкивания можно задать формулами)
Чтоб сделать такое на GUI (не дай Господи) прийдется реально поизвращатся(В связи с огромным количеством глобальных переменных/Масивов, недоделаностью триггеров лаги неминуемы).
Если вы всерьез намерены создать такую систему вам нужно владеть Jass'ом на таком уровне, которого вам сможет помочь достичь разве что ScorpioT1000
P.S.( ScorpioT1000, прости что посылаюсь на тебя, но я и самом деле не знаю никого, кто смог бы сделать такое лучше)
0
1
12 лет назад
0
Спасибо, именно это я и спрашивал. Но это как то не хорошо когда разница в 1 грамм будет иметь такие последствия. Хочется все же какую-нибуть формулу.
p.s. пишу систему на cjass, со знаниями в области jass'а проблем нет.
Все, проблема решена. Спасибо товарищу D_Konst за то что придал мне ускорения в поиске ответа на данный вопрос.
Если кому-то пригодится, вот что я нашел:
(| - вектор)
пусть 1й шар в процессе столкновения получает изменение импульса |p, в отсутствии трения оно направленно по нормали |n (линии, соед. центры шаров в момент удара), |p = p*|n, тогда по ЗСИ 2й шар получает |-p,
тогда новые скорости
|v1'=|v1+|p/m1
|v2'=|v2 -|p/m2
при абс.упругом ударе из ЗСЭ
p=2*(|v2-|v1,|n)/(1/m1+1/m2)
(|v2-|v1,|n) - скалярное произведение векторов
ЗСИ - закон сохранения импульса, ЗСЭ - закон сохранения энергии
Принятый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.