Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.23;
Скачать: CL | DM;

Вниз

Поворот картинки   Найти похожие ветки 

 
artix   (2004-03-05 17:41) [0]

Надо сделать чтоб была картинка вращающейся земли


 
Fay ©   (2004-03-05 17:43) [1]

Надо взять картинку вращающейся земли и дать ей быть.


 
artix   (2004-03-05 17:51) [2]

Не ну как землю врашяющуюся сделать.


 
YurikGl ©   (2004-03-05 17:52) [3]

Нарисовать 10 картинок, и пускать их поочереди
З.Ы. у меня есть такие, погу скинуть по почте.


 
WebErr ©   (2004-03-05 17:54) [4]

Я делал такую 3D-хрень, благодаря ей я сейчас получил работу программиста, так что это не так-то просто. Я сделал её на С++, но если интересно, я могу прислать её на e-mail. Оставьте свой e-mail, я пошлю туда ехе с исходниками. :))))


 
WebErr ©   (2004-03-05 17:55) [5]


> YurikGl ©   (05.03.04 17:52) [3]

Сие есть неинтересно! :))))


 
artix   (2004-03-05 17:57) [6]

Буду очень благодарен. 10 фреймов будет нерельно выглядеть. Я видел opengl рисуют, там вообще кул поолучается. Только я нефига в opengl не понимаю
tsisyckroma@mail.ru


 
YurikGl ©   (2004-03-05 17:57) [7]

> WebErr ©   (05.03.04 17:54) [4]
Непонятно-же, что человеку надо. Может 3D, а может что попроще


 
Fay ©   (2004-03-05 17:59) [8]

2WebErr ©   (05.03.04 17:54) [4]
Интересно, а разработчики TheBat! применяли скелетную анимацию для своей иконки, чтобы крыльями махала?


 
artix   (2004-03-05 18:02) [9]

попроще, но получше :)


 
WebErr ©   (2004-03-05 18:13) [10]

В общем идея следующая:
проекция шара на плоскость (экран) всегда круг!
надо заполнить круг пикселями нужного цвета, вычисление которого занимает у меня 2 условных листа.
В каждой точке (X, Y) ищем Z=R*R-sqrt(X*X+Y*Y).
Потом вектор P=(X,Y,Z) умножаем на матрицу поворота T(a,b)

||    сos(a)        -sin(a)       0    ||
|| sin(a)*cos(b) cos(a)*cos(b) -sin(b) ||
|| sin(a)*sin(b) cos(a)*sin(b)  cos(b) ||

Где a, b - произвольные углы, которые в итоге и будут задавать вращение сферы (земли).
Далее работа с текстурой.
Координаты пикселя текстуры (xt, yt) вычисляются по ф-ле
xt = arctan(y/x)/pi
yt = arccos(z/R)/2/pi
Где (x, y, z) = Q - вектор полученный при повороте вектора P.
Получаем цвет пикселя текстуры!!! Ура!
Осталось только умножить компоненты R-G-B этого пикселя на косинус угла  между нормалью и вектором падения света.


 
WebErr ©   (2004-03-05 18:15) [11]

В общем не для слабонервных алгоритм! :))))


 
artix   (2004-03-05 18:16) [12]

А если есть текстура(bmp), а вот её можно повернуть на определенный угол


 
WebErr ©   (2004-03-05 18:29) [13]


> artix   (05.03.04 18:16) [12]

Разумеется! Её-то мы и положим в результате на сферу и будем крутить! Если взять физическую карту без обозначений, то будет выглядеть как снимки из космоса!!! :))))


 
artix   (2004-03-05 18:30) [14]

Всятаки я не понял как положить её на сферу. Модно упростить, что крутилась только по одной оси


 
artix   (2004-03-05 18:31) [15]

хотел сказать можно


 
WebErr ©   (2004-03-05 18:40) [16]

Сделаешь всё, как написано - получишь наложение битмапа на сферу. Упростить можно - изменяй углы a, b в линейной зависимости b(a) = k*a + c, где k, c - это некоторые константы.
В общем удачи - алгоритм непростой! :))))


 
artix   (2004-03-05 18:46) [17]

ТОли нет апишки, которая bitmap поворачивает ?


 
Defunct ©   (2004-03-05 18:48) [18]

artix   (05.03.04 18:46) [17]

Нет


 
WebErr ©   (2004-03-05 18:51) [19]


> artix   (05.03.04 18:46) [17]
> ТОли нет апишки, которая bitmap поворачивает ?

Ручками!!! :))))


 
Defunct ©   (2004-03-05 18:53) [20]

WebErr торговая марка ":))))" типа знак качества CCCP



Страницы: 1 вся ветка

Текущий архив: 2004.05.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.035 c
14-1083567626
Белый волк
2004-05-03 11:00
2004.05.23
Правильное отображение кирилицы в консольном приложении Delphi


14-1083606639
Ricks
2004-05-03 21:50
2004.05.23
Компоненты в стиле Office2003


14-1083152485
Igorek
2004-04-28 15:41
2004.05.23
Предложение:


1-1083818215
тихий вовочка
2004-05-06 08:36
2004.05.23
Работа с TMemoryStream


1-1084030309
freak
2004-05-08 19:31
2004.05.23
Как на иконке ListView нарисовать что-то





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский