Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Игры";
Текущий архив: 2012.01.15;
Скачать: [xml.tar.bz2];

Вниз

нарисовать трубу в OpenGL по точкам   Найти похожие ветки 

 
crytogen   (2007-03-29 14:30) [0]

мне необходимо нарисовать трубу в OpenGL по имеющимся точкам. точки образуют отрезки-оси цилиндров. как это сделать?


 
crytogen   (2007-03-29 14:49) [1]

т.е. как рисовать цилиндры в принципе понятно. как правильно их развернуть и состыковать?


 
Nic (ro)   (2007-03-29 23:13) [2]

glBegin(gl_Triangles);
 glVertex3f(0, 0, 0);
 glVertex3f(0, 1, 0);
 glVertex3f(0, 1, 1);
glEnd;

То бишь по полигонам.


 
Rial ©   (2007-03-30 00:34) [3]

> glBegin(gl_Triangles);
> glVertex3f(0, 0, 0);
> glVertex3f(0, 1, 0);
> glVertex3f(0, 1, 1);
> glEnd;

Великолепные получатся циллиндры ;)


> [1] crytogen   (29.03.07 14:49)
> т.е. как рисовать цилиндры в принципе понятно. как правильно
> их развернуть и состыковать?

У тебя есть по сути трехмерный отрезок, я правильно понял ?
Находи угол его поворота относительно осей координат.
A(X, Y, Z) получается из (1, 0, 0) повопротом по 2м осям
с корректировкой длины.
L1 = ArcTg(Y / X);
Теперь поворачиваешь координаты X и Y на (-L1), у тебя будет
что то типа A1(X1, Y1, Z). Тогда
L2 = ArcTg(Z / Y1);
Идея, думаю ясна...

А состыковка... ну тут нудно во-первых уточнить,
как ее делать. По биссектрисе, скруглением, или еще как.
Но в любом случае циллиндру придется рисовать самому
с помощью примититвов.


 
crytogen   (2007-03-30 11:42) [4]

Проблема вот в чём - один из вариантов поворота сделал и сам, но цилиндр вращается вокруг своей оси и я не могу просто составить список точек и нарисовать по прямоугольным сегментам цилиндры ибо они хотя бы слегка да разворачиваются, а при серьёзном изгибе так вообще.


 
crytogen   (2007-03-30 11:43) [5]

Это конечно не цилиндр уже, но всё же


 
crytogen   (2007-04-03 08:52) [6]

Всё спасибо разобрался. Помог базис Френе.


 
crytogen   (2007-04-03 08:53) [7]

тему можно закрывать.


 
балюн   (2007-09-24 14:49) [8]

Добрый день.
Аналогичная проблема. при изгибе  трубы  цилиндр вращается по собственной оси в итоге  невозможно  сшить предыдущий  кусок трубы с текущим.
Буду благодарен за помощь в решении  , наилучший вариант  это код  который рисует  трубу без данной проблемы


 
Denis_ ©   (2007-09-29 16:27) [9]

А больше ничего не надо? А то я уж бегу просить мастеров написать тебе код.



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

Форум: "Игры";
Текущий архив: 2012.01.15;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.003 c
2-1317792498
petvv
2011-10-05 09:28
2012.01.15
Array of Char to String (ANSIString)=:


9-1188822716
ПисательПлоскихИгр
2007-09-03 16:31
2012.01.15
Zero3D


15-1317587402
Юрий
2011-10-03 00:30
2012.01.15
С днем рождения ! 3 октября 2011 понедельник


1-1279782708
Дмитрий Белькевич
2010-07-22 11:11
2012.01.15
Вопрос по синхронизации тредов с VCL.


15-1316555083
Джо
2011-09-21 01:44
2012.01.15
Сша, психоделик, 60-е.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский