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

Вниз

нарисовать трубу в 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;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.01 c
15-1314770110
Омлет
2011-08-31 09:55
2012.01.15
RSS для DelphiMaster


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


2-1318095947
Pcrepair
2011-10-08 21:45
2012.01.15
Ctrl+A и Ctrl+C в компоненте TWebBrowser


2-1317792498
petvv
2011-10-05 09:28
2012.01.15
Array of Char to String (ANSIString)=:


15-1317372179
oxffff
2011-09-30 12:42
2012.01.15
Вопрос по MDX запросам