![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 28.12.2010
Сообщений: 9
|
![]()
В общем проблема следующая. У меня выходит, но неправильно просчитать траекторию полета снаряда. А может и правильно... Вот как он должен лететь(я так думаю).
![]() Короче проблема вот в чем. 1) У меня не получается привязаться к углу(когда меняю угол то не снаряд летит по-другому, а координата Y начала полета меняется. 2) В данной ситуации очень легко попасть в танк противника, ведь снаряд летит очень низко. Проблема в методах bulletfly() и Bullet(); V по умолчанию стоит 30; Код:
Последний раз редактировалось iMax`; 28.12.2010 в 18:40. |
![]() |
![]() |
![]() |
#2 |
Регистрация: 28.12.2010
Сообщений: 9
|
![]()
Продолжение... сори если не правильно засунул.
Код:
Последний раз редактировалось iMax`; 28.12.2010 в 18:39. |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 23.06.2010
Сообщений: 17
|
![]()
float t = 1.5;
это чо время полета???? Код:
t- это должна быть переменная величина, поскольку х и у - это функции времени! |
![]() |
![]() |
![]() |
#4 |
Регистрация: 28.12.2010
Сообщений: 9
|
![]()
Я пробовал брать системное время но ничего не вышло... Как мне тогда поступить?
|
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 23.06.2010
Сообщений: 17
|
![]()
А вообще-то по правильному нужно делать так:
Выражаешь из уравнений x(t)=... и y(t)=.... переменную t. Приравниваешь правые части и получаешь уравнение y(x) - которое и называется траекторией. Только не забудь поставить ограничения на y>"уровень земли" - ну в том смысле что-бы снаряд под землю у тебя не ушел, а Х у тебя будет меняться от координаты дула до у<"уровень земли" Так у тебя только одна формула получится, зависящая от g, угла и V. По моему, так проще. |
![]() |
![]() |
![]() |
#6 |
Регистрация: 28.12.2010
Сообщений: 9
|
![]()
Спс конечно, но я ничего не понял...
|
![]() |
![]() |
![]() |
#7 |
Новичок
Джуниор
Регистрация: 01.02.2010
Сообщений: 1
|
![]()
поддерживаю предложение. По-моему, проще взять готовую формулу из баллистики. Там, после всяких упрощений, получится неплохо. Только вопрос: интересно будет?
|
![]() |
![]() |
![]() |
#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 |