Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Имитация полета ракеты
Форум на CrossPlatform.RU > Библиотеки > Qt > Qt Система рисования. Печать
QMainWindow
День добрый.
Пишу программу (для знакомого и ради интереса), в которой имитируется полет ракеты. Ракета управляется с клавиатуры (кнопки вправо и влево). Требуется чтобы при нажатии на кнопку ракета откланялась от текущего курса на 1 градус (ну или любое другое значение). Т.е., например, при длительном нажатии на клавишу она описала дугу окружности с некоторый радиусом. Чуть не забыл, летит она в поле тяжести, с заданной силой тяги и с учетом линейного сопротивления воздуха.
Значит уравнения написал, все верно. Но вот когда нажимаю (удерживаю) клавишу (вправо например), то вместо дуги окружности получается следующая картина:
Представьте себе экран компьютера, точка старта - (ширина/2, 0) - оси как в математике. Пуск, ракета взлетела, нажимаю вправо, ракета исчезает и появляется в другой части экрана (типа телепортируется туда), снова нажимаю - то же самое. Тем не менее, если понажимать так в разные значения времени и проводить прямые через точки, то получатся лучи, идущие из точки старта. Т.е. когда я нажимаю вправо, то ракета прыгает по этим лучам вправо, а не поворачивается, как это должно быть. Собственно вопрос: как сделать, чтобы она поворачивалась? В пейнтере для удобства отразил оси снизу вверх. Как пример что нужно - кто играл в Worms, тот помнил как летит летающая овца при нажатии на "вправо" , "влево" - описывает дугу окружности))).
Алексей1153
QMainWindow, Покажи, как делаешь приращение параметров движения
QMainWindow
Все, вроде разобрался. Такая ерунда получалась, потому что функция и ее первая производная были разрывны. :)
Алексей1153
QMainWindow, покажи свой шедевер то хоть )
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Форум IP.Board © 2001-2024 IPS, Inc.