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

Вниз

Построить сферу на OpenGl вручную. не используя glu-товской библе   Найти похожие ветки 

 
Gritzan ©   (2002-12-09 23:41) [0]

Народ подскажите кто знает формулу по которой можно потроить сферу
или ссылки на сайт на которой они есть подскажите?
Я пробовал по sqr(x)+sqr(y)+sqr(z)=sqr(r-радиус); он строит только одну
часть, делая одну кординату отрицательной, получается большой разрыв между двумя частями!


 
(AD)acid   (2002-12-10 06:36) [1]

При решении данного уравнения получаем
z1=sqrt(sqr(r)-sqr(x)-sqr(y)) - Верхняя часть сферы
z2=-sqrt(sqr(r)-sqr(x)-sqr(y))- Нижняя часть сферы
Поэтому ,наверно , придётся выводить по частям
я это как-то делал но не в Delphi а в Borland pascal"е
хотя это было давно и не правда


 
Ketmar ©   (2002-12-10 11:43) [2]

а она и выводится по частям. сначала одна полусфера, затем другая. см. исходники.

Satanas Nobiscum! 10-Dec-XXXVII A.S.


 
Alek Aaz ©   (2002-12-10 18:22) [3]

И все-таки. Как. Покажите на примере. Формула то работает. Но на сфере как-то нужно поставить нормали для треугольников из которых она состоит. Вообще я только теоретически понимаю как она строится а на практике не получается.


 
zavdim   (2002-12-11 07:39) [4]

У меня есть тексты - можешь поразбирать. Я их года полтора назад писал - не ахти что, но смысл уловить можно.
Там я тор строю и еще чего-то.
Если не против, то кину на мыло.


 
zavdim   (2002-12-11 07:40) [5]

Тут лучше параметрическое задание сферы использовать, а не приведенное выше.


 
Alek Aaz ©   (2002-12-11 10:56) [6]

2 zavdim Не понял последний пост.
Вообще-то построение сферы мне нужно по двум сообращениям.
1. Создать сферу с нормалями внутрь. Чтобы фон космоса нацепить. Можно конечно на готовую, но под рукой нет 3Д Макса.
2. Шальная идея делать планету. Рисуем шар, а при приближении, при перерисовке начинаем постепено добавлять смещение для гор по карте высот.

Для начала хотелось бы сделать задачу минимум.


 
zavdim   (2002-12-11 11:12) [7]

1.Нужен набор точек лежащих на сфере.
2. Ты берешь меняешь два угла - один от -пи/2 до пи/2. и второй от -пи до пи. Тоесть - двойной цикл.
3. Есть параметрическое представление сферы - это ведь двумерное многообразие, значит двух параметров нам хватит.
4. Формулы такие:
x:=Rx*cos(alpha2)*cos(Alpha1);
y:=Ry*sin(alpha2)*cos(Alpha1);
z:=Rz*sin(Alpha1);
Если Rx=Ry=Rz, то получим сферу иначе эллипсоид. Внешний цикл по Alpha1, внутренний по Alpha2.
Получишь точки, ну и начинаешь на их основе треугольники строить.
Какие должны образовывать треуг. и как лучше организовать - подумай, если трудно - то скажи.
А нормаль треугольника определить - можно, по тому же векторному произведению, только со знаком уж потыкаться надоть.



 
Alek Aaz ©   (2002-12-11 19:19) [8]

Трудно.
Говорю.
Формулы - понятно, и просто. Математика. А вот практика ...
Насколько я понимаю должно быть как минимум 3 точки. Две в "низу" и одна в "верху". Обход этих точек определяет нормаль. Сие теория. Практики нет.

P.S. Что такое регулярная сетка для создания полигональной серы и не регулярная?


 
Alek Aaz ©   (2002-12-11 19:24) [9]

не серы , а сферы. опечатка, сорри.


 
zavdim   (2002-12-13 06:57) [10]

ну ты для начала параллелепипед, пирамдку построй с правильно настроенными нормалями. Инфы по этому поводу - море, пошарься в инете. Во многих статьях это разжевано до зубной боли. Потом к сфере переходи. А прогу я не тебе посылал?


 
Alek Aaz ©   (2002-12-15 03:26) [11]

Мне. Получил. Сенькс. Жую.


 
JrKI   (2003-03-04 08:06) [12]

Ага! Без glut !
А в исходнике glut посмотри!
Только gluK из нее не сделай!



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

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

Наверх




Память: 0.5 MB
Время: 0.018 c
3-10559
Step[B.M.]
2003-08-11 09:08
2003.09.04
Помогите пожалуйста с SQL запросом


1-10675
VladimirES
2003-08-21 12:33
2003.09.04
Клиент/сервер приложение на СОМ/DCOM (общие вопросы)


14-10967
SergP
2003-08-15 08:07
2003.09.04
У меня этот форум не работает. Что делать?


14-10884
DeMoN-777
2003-08-14 16:26
2003.09.04
Забыл что писать


14-10909
ДедушкаКо
2003-08-18 11:39
2003.09.04
уже опохмелился и пойду,наверное, домой