|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.12.2010, 18:32 | #1 |
Регистрация: 28.12.2010
Сообщений: 9
|
Траектория полета снаряда...
В общем проблема следующая. У меня выходит, но неправильно просчитать траекторию полета снаряда. А может и правильно... Вот как он должен лететь(я так думаю).
Короче проблема вот в чем. 1) У меня не получается привязаться к углу(когда меняю угол то не снаряд летит по-другому, а координата Y начала полета меняется. 2) В данной ситуации очень легко попасть в танк противника, ведь снаряд летит очень низко. Проблема в методах bulletfly() и Bullet(); V по умолчанию стоит 30; Код:
Последний раз редактировалось iMax`; 28.12.2010 в 18:40. |
28.12.2010, 18:34 | #2 |
Регистрация: 28.12.2010
Сообщений: 9
|
Продолжение... сори если не правильно засунул.
Код:
Последний раз редактировалось iMax`; 28.12.2010 в 18:39. |
28.12.2010, 19:17 | #3 |
Пользователь
Регистрация: 23.06.2010
Сообщений: 17
|
float t = 1.5;
это чо время полета???? Код:
t- это должна быть переменная величина, поскольку х и у - это функции времени! |
28.12.2010, 19:30 | #4 |
Регистрация: 28.12.2010
Сообщений: 9
|
Я пробовал брать системное время но ничего не вышло... Как мне тогда поступить?
|
28.12.2010, 19:32 | #5 |
Пользователь
Регистрация: 23.06.2010
Сообщений: 17
|
А вообще-то по правильному нужно делать так:
Выражаешь из уравнений x(t)=... и y(t)=.... переменную t. Приравниваешь правые части и получаешь уравнение y(x) - которое и называется траекторией. Только не забудь поставить ограничения на y>"уровень земли" - ну в том смысле что-бы снаряд под землю у тебя не ушел, а Х у тебя будет меняться от координаты дула до у<"уровень земли" Так у тебя только одна формула получится, зависящая от g, угла и V. По моему, так проще. |
28.12.2010, 22:25 | #6 |
Регистрация: 28.12.2010
Сообщений: 9
|
Спс конечно, но я ничего не понял...
|
28.12.2010, 23:51 | #7 |
Новичок
Джуниор
Регистрация: 01.02.2010
Сообщений: 1
|
поддерживаю предложение. По-моему, проще взять готовую формулу из баллистики. Там, после всяких упрощений, получится неплохо. Только вопрос: интересно будет?
|
29.12.2010, 07:12 | #8 |
Старожил
Регистрация: 21.03.2009
Сообщений: 2,193
|
Итак, у нас нет сопротивления воздуха, снаряд представляет собой материальную точку, не вращается, вращением земли и всякие там кориолисовы силы не учитываем, равно как и полеты птиц и башни ПБЗ.
Начальные проекции скорости: Vx0 = V0 * cos(alpha); Vy0 = V0 * sin(alpha); Координаты снаряда в произвольный момент времени на интервале t0 < t < T (T - момент падения на землю): X(t) = X0 + Vx0 * (t - t0); Y(t) = Y0 + Vy0 * (t - t0) - g * (t - t0)^2 / 2; Если примем t0 = 0, то X(t) = X0 + Vx0 * t; Y(t) = Y0 + Vy0 * t - g * t * t / 2; Время падения на землю: Y(T) = 0 = Y0 + Vy0 * T - g * T * T / 2; Примем, что Y0 = 0 Vy0 * T - g * T * T / 2 = 0; => T * (Vy0 - g * T / 2) = 0; T1 = t0 = 0, T2 = T = 2 * Vy0 / g; Этого вам хватит за глаза.
Простые и красивые программы - коды программ + учебник C++
Создание игры - взгляд изнутри - сайт проекта Тема на форуме, посвященная ему же |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Траектория полёта | deel | Помощь студентам | 15 | 01.12.2010 10:11 |
Расчет полета ракеты | reydor | Помощь студентам | 0 | 05.10.2010 15:46 |
Delphi: траектория движения круга | Sianessa | Помощь студентам | 10 | 25.01.2010 17:31 |
Построение траектории полета пули | V@mpir | Общие вопросы Delphi | 0 | 11.12.2009 19:07 |
Рассчитать время полета ракеты. VC++ | C71Me | Помощь студентам | 5 | 22.02.2009 19:03 |