|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.01.2014, 01:04 | #2 |
Старожил
Регистрация: 03.01.2014
Сообщений: 2,870
|
Судя по характеру программы, речь идёт о представлении куба в 2D.
К сожалению, вид куба в 2D зависит от плоскости проекции в которой Вы его будете рисовать. Если эта плоскость параллельна одной из граней куба, то вся задача сводится к простому рисованию квадрата. Если нет, то есть Вы хотите сохранить некоторое подобие трёхмерности, например, как показано на рисунке, то в этом случае задача значительно усложняется. Это связано с тем, что для правильного изображения куба необходимо выполнить расчёт координат точек вершин на плоскости рисования в зависимости от ракурса и после этого соединить их линиями. Увы, но задачи изображения 3-мерных фигур даже на плоскости, с ходу не решаются. Начинать здесь лучше не с программирования, им следует закончить. Начать нужно с аналитической геометрии, с разработки математического аппарата, который будет выполнять необходимые вычисления. Когда математический аппарат будет готов, можно будет приступить непосредственно к реализации процедуры рисования куба. |
27.01.2014, 06:03 | #3 |
personality
Старожил
Регистрация: 28.04.2009
Сообщений: 2,882
|
Автор, это не ваша программа, а стандартный пример пейнто-образной программы из дельфи, дополненный кнопочкой, являющей миру ваше чсв. И уберите комментарий, что это сделано вами, не позорьтесь.
Для написания в этой программе возможности рисовать кубы можно использовать обычный подход в лоб, благо иного вам вряд ли светит. Итак подход в лоб: скопипастить функциональность инструмента для отрисовки квадрата, и к рисуемому оригинальному квадрату добавить рисование второго квадрата, хотя бы с фиксированным смещением а лучше со смещением зависящим от размеров самого квадрата, смещение на произвольный градус кроме 0 90 45 и кратных им, например + ширина_квадрата * 0.5 и - высота_квадрата * 0.3 , получится 30 градусов. Потом рассчитать точки, по которым рисуются квадраты (они по сути и так известны, как аргументы команды ректангл) и соединить их через Canvas.MoveTo и LineTo Вопрос, как дорисовать что-то - некорректен, рисуйте хоть чёрта, без знания конкретики - разговор немых и глухих. Также (не "так же") отвечу и на кибере, немного по-другому. Если нужно срочно и вам не нужны слова а только выполненная "заморочка" для зачета, обращайтесь, за вознаграждение сделаем. Последний раз редактировалось phomm; 27.01.2014 в 06:14. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нарисовать куб | Starget-93 | Помощь студентам | 0 | 15.01.2013 12:19 |
нарисовать куб на экране | mego4el | Помощь студентам | 1 | 03.12.2010 22:38 |
OpenGL в delphi. Как перемещать куб с помощью мыши | Xawk | Мультимедиа в Delphi | 2 | 08.12.2009 12:20 |
Как реализовать куб выражения? | Mr.Qwerty | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 02.09.2009 06:58 |
как написать в excel квадрат или куб числа? | BEYLERBEYİ2009 | Microsoft Office Excel | 16 | 17.02.2009 16:18 |