ООП, графика |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
ООП, графика |
Nike0 |
28.03.2010 13:38
Сообщение
#1
|
Пионер Группа: Пользователи Сообщений: 61 Пол: Мужской Реальное имя: Илья Репутация: 0 |
Доброго времени суток. Прошу помочь разобраться в одной задаче. Я сделал немного, только теперь мне надо в нее добавить возможность вращения объекта вокруг точки с заданными координатами на заданный угол, и еще эта программа должна продемонстрировать работу ветряной мельницы. ООП довольно-таки сложная тема, я с трудом разобрался с примитивом, а на более сложное не хватило уже. Вот код:
uses |
volvo |
28.03.2010 14:25
Сообщение
#2
|
Гость |
Цитата теперь мне надо в нее добавить возможность вращения объекта вокруг точки с заданными координатами на заданный угол Тебе для этого придется переписать часть программы. Объект должен САМ хранить свои координаты. И не в виде координата X точки, координата Y точки, ширина, высота. А в виде точек. То есть, TPoint представляется одной точкой с координатами X, Y... Треугольник представится массивом из трех таких точек, TRectangle - соответственно - массивом из четырех точек с координатами X, Y... Естественно, придется изменить и отрисовку объектов тоже.Вот в таком случае вращение любого объекта вокруг заданной точки на заданный угол сведется к 1) "гашению" объекта; 2) стандартному преобразованию координат всех точек, из которых этот объект состоит; 3) "зажиганию" объекта уже с пересчитанными координатами составляющих его точек. Так что пока переделай ту часть, что у тебя уже есть, а потом продолжим... |
volvo |
29.03.2010 21:44
Сообщение
#3
|
Гость |
... "А в ответ - тишина..." (С)
Чего молчим? Как только появится что-нибудь интересное - так не отвечают. В общем, вот что получилось. Я специально не стал дорабатывать, можно еще кое-что сделать. Скажем, перед TRotateScene в иерархии воткнуть базовый для него класс - TScene, тогда все будет еще интереснее Но доработка - это уже другое. Комментарии я не стал добавлять, осталось то, что было. Но поскольку код отлаживался в FPC, то кодировка могла сбиться. Методы описаны как Abstract;, поэтому в случае Турбо-Паскаля нужно будет написать пустые "заглушки" для таких методов... Прикрепленные файлы oop.pas ( 8.02 килобайт ) Кол-во скачиваний: 155 |
Nike0 |
31.03.2010 14:40
Сообщение
#4
|
Пионер Группа: Пользователи Сообщений: 61 Пол: Мужской Реальное имя: Илья Репутация: 0 |
сори что долго не отвечал, не было доступа к интеренету в это время) а так спасибо, доработаем малек программку)
|
Текстовая версия | 10.06.2024 19:26 |