Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.07.18;
Скачать: CL | DM;

Вниз

Как показать скорость?   Найти похожие ветки 

 
Goida ©   (2004-03-30 12:42) [0]

Как это сделать? Я знаю, что скорость говрит о том, как быстро меняется координата объекта, т.е. при равноускоренном движении я буду прибавлять, например к Х, всё большие и большие интервалы:
Х--Х---Х----Х-----Х--...
Таким образом, фигура будет выводиться в точках Х. Получается прерывистое движение, а мне нужно плавное...
И еще, мне нужно отследить во время движения объекта его пересечение с другим объектом. Но если я каждый раз прибавляю увеличивающиеся интервалы, то мне становятся не доступны положения между точками Х. Как в этом случае проверить пересечение траекторий и отобразить их столкновение? Что мне нужно делать?


 
Morok   (2004-03-30 14:19) [1]

x(t) - это координаты первого объекта в момент времени t

y(t) - это координаты второго объекта в момент времени t

h - шаг времени...

для нахожедения столкновения объектов самое простое это искать пересечение отрезков {y(t), y(t+h)} и {x(t), x(t+h)}

ну и вот собсна......


 
Morok   (2004-03-30 14:21) [2]

прерывистое движение будет в любом случае, чтоб его сгладить, нужно шаг интегрирования сделать достаточно маленьким, а еще лучше адаптивным....


 
Goida ©   (2004-03-30 14:22) [3]

Т.е. перед каждым отображением объектов просчитать их пересечени и если нет, то нарисовать их там, где они должны быть. А если да, то определить их точку столкновения и нарисовать их там, а потом уже, расчитав их будущие траектории, продолжить путь. Так?


 
Goida ©   (2004-03-30 14:23) [4]

А что значит АДАПТИВНЫМ?


 
Morok   (2004-03-30 14:34) [5]

это значит что шаг интегрирования меняется в зависимости от ситуации, просто искать точку пересечения, дает не очень хороший результат объекты могут вести себя не правильно напалзать друг надруга, мне просто лень описывать пример такой ситуации.
далее об адаптивном шаге  если ты выяснил что объекты все же пересеклись то нужно отъехать на шаг назад( вернуть как бы старые координаты) и уменьшить шаг в двое и еще раз проверить пересечение и так далее пока точка пересечения будет не между промежутком (t) и (t+h) а в некоторой близости от района (t+h)

бр..........понятно нет?

а вообще читай "An Introduction to Physically Based Modelling" David Baraff


 
Shopot ©   (2004-03-30 23:36) [6]

Я делал так: за основу брал само быстро движущийся объект.
Выбирал его максимальную скорость такой, чтобы он не прыгал по
экрану. Скорость остальных объектов интерполировал относительно
этой скорости (а не относительно 0). Получалось, если присмотрется, что не этот разгоняется, а те замедляются. А выглядит хорошо, все плавно, без дерганий.



Страницы: 1 вся ветка

Текущий архив: 2004.07.18;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.032 c
8-1082888994
gyry
2004-04-25 14:29
2004.07.18
Своя иконка


1-1089051315
DeepProg
2004-07-05 22:15
2004.07.18
Определение длины видимого текста в Memo


6-1085391771
TriX
2004-05-24 13:42
2004.07.18
Как вадать звук в тел линию или записать его , через tapi


14-1087567928
Rouse_
2004-06-18 18:12
2004.07.18
Интервью с Супримом :)


1-1089107451
Koala
2004-07-06 13:50
2004.07.18
Найти файл более ранней редакции