Помогите завершить программу на Паскале
Вложений: 1
Привет!
Помогите завершить программу в паскале. Вот задание: Написать программу, формирующую на экране изображение перемещающегося объекта. Объект должен перемещаться согласно указанному на рисунке направлению (вперед по стрелке). По достижении каждой вершины траектории объект должен совершать плавный разворот в направлении движения по следующему участку траектории. Точка вращения объекта выбирается в его геометрическом центре. Я нарисовала фигуру, сделала траекторию. Фигура ходит по траектории. А вот поворот не умею. Помогите пожалуйста. Вот моя программа:
если у кого-то есть программа почти с такими же условиями, вышлите пожалуйста. |
О геометрических преобразованиях можно почитать в замечательном учебнике Немнюгина С. А. "Turbo Pascal"
А формулы поворота произвольной точки на угол alpha вокруг начала координат такие: Код:
x=x*cos(alpha)-y*sin(alpha) |
Ну вот, сочинил я для Вас некую вспомогательную игру. Вначале Ваш инопланетянин располагается в центре экрана (640х480). Нажатие клавиши "R" (в любом регистре, но с латинской раскладкой ("En")) заставляет его вертеться, клавиши "M" - двигаться туда, куда смотрит "голова". Нажатие любой другой символьной клавиши прерывает программу. Клавиши "M" и "R" можно удерживать. Одновременное их нажатие НЕ ПРЕДУСМОТРЕНО.
Кроме того, мне кажется, у меня массив точек и построение фигуры сделаны более компактно и рационально. А уж всякие там траектории, стрелки и пр. - это Вы, пожалуйста, самостоятельно. И еще одно - ВАЖНО! У меня DOS-экран, на котором рисование идет белым по черному. Если у Вас экран белый, а линии черные, то цвета в командах SetColor в процедуре нужно поменять местами. Код:
Uses |
Ладно, сочинил я полное решение Вашей задачки. Как и в пердыдущей программе, если у Вас графика типа "черное по белому", то цвета black и white надо поменять местами.
Программа прерывается в любой момент нажатием клавиши "Esc". Код:
Uses |
Часовой пояс GMT +4, время: 20:48. |
Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.