Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Графика и игры
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 25.05.2011, 19:24
K0CTbIJIb K0CTbIJIb вне форума
Прохожий
 
Регистрация: 25.05.2011
Сообщения: 2
Репутация: 10
По умолчанию Поворота 3D-графика функции

Помогите сделать задачу: Написать программу динамического поворота 3D-графика функции. Функция от двух значений(x,y) - т.е. должен быть график в трёхмерной системе координат, т.е. должны быть оси x,y,z. А сама функция мне сказали должна выглядеть как полотно. Функция может быть любой, поворот тоже можно сделать относительно любой оси. НО Задачу нужно сделать не используя никаких библиотек( OpenGL, DirectX, ...), кроме как Canvas.
Помогите пожалуйста - последняя задачка осталась для зачета, времени вообще нету...
Ответить с цитированием
  #2  
Старый 25.05.2011, 19:31
HunteRus HunteRus вне форума
Прохожий
 
Регистрация: 02.10.2010
Адрес: В Питере
Сообщения: 14
Версия Delphi: Delphi5
Репутация: 10
По умолчанию

Сделай ее изображением в BitMap и накладывай как текстуру на прямоугольник, а сам прямоугольник вращай, можно например в OpenGL
__________________
Код:
procedure UnleassFor(i: int64) UnleassFor(i + 1);

...

UnleassFor(0);
Бесконечный For
Ответить с цитированием
  #3  
Старый 25.05.2011, 19:45
K0CTbIJIb K0CTbIJIb вне форума
Прохожий
 
Регистрация: 25.05.2011
Сообщения: 2
Репутация: 10
По умолчанию

OpenGl нельзя использовать =(
Ответить с цитированием
  #4  
Старый 25.05.2011, 20:20
HunteRus HunteRus вне форума
Прохожий
 
Регистрация: 02.10.2010
Адрес: В Питере
Сообщения: 14
Версия Delphi: Delphi5
Репутация: 10
По умолчанию

Тогда попробуй график представить в виде маленьких отрезков и вершин, а отрезки пусть будут векторами. Затем высчитываешь вектор по x y и поворачиваешь на величину z, а отрисовываешь 2D считая как будто z вообще нет. Т.е. Рисуешь с получившимися x y и опускаешь z
__________________
Код:
procedure UnleassFor(i: int64) UnleassFor(i + 1);

...

UnleassFor(0);
Бесконечный For
Ответить с цитированием
  #5  
Старый 25.05.2011, 21:15
Аватар для Pilot_Red
Pilot_Red Pilot_Red вне форума
Продвинутый
 
Регистрация: 01.11.2006
Адрес: Карелия
Сообщения: 702
Версия Delphi: D7
Репутация: 11581
По умолчанию

Вот, кое что накатал.

Повороты делал через матрицы поворотов, так что не пугайтесь

Последний раз редактировалось Pilot_Red, 14.06.2012 в 22:25.
Ответить с цитированием
  #6  
Старый 25.05.2011, 21:21
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Вот этот пример был сделан также для студента:
Вложения
Тип файла: rar 3d_cub.rar (37.1 Кбайт, 22 просмотров)

Последний раз редактировалось angvelem, 16.12.2011 в 21:49. Причина: Просьба выложить с исходным кодом
Ответить с цитированием
  #7  
Старый 25.05.2011, 21:28
Аватар для angvelem
angvelem angvelem вне форума
.
 
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
По умолчанию

Цитата:
Сообщение от Pilot_Red
Вот, кое что накатал.

Повороты делал через матрицы поворотов, так что не пугайтесь

Хочешь сказать, твой проект собирается? Только после исправления досадной оЧепятки.
Ответить с цитированием
  #8  
Старый 25.05.2011, 21:31
Аватар для Pilot_Red
Pilot_Red Pilot_Red вне форума
Продвинутый
 
Регистрация: 01.11.2006
Адрес: Карелия
Сообщения: 702
Версия Delphi: D7
Репутация: 11581
По умолчанию

Цитата:
Сообщение от angvelem
Хочешь сказать, твой проект собирается? Только после исправления досадной оЧепятки.
перед коментом забыл поставить //
БЫвает
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 06:19.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter