Главная страница
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.008 c
3-1269803253
Andrey2025
2010-03-28 23:07
2012.01.15
Вопрос по Firebird/ interbase Express


15-1316688403
boriskb
2011-09-22 14:46
2012.01.15
Деньжат конечно маловато, но и работа не трудная


15-1317413710
TUser
2011-10-01 00:15
2012.01.15
Задача


15-1317056504
Dennis I. Komarov
2011-09-26 21:01
2012.01.15
Бегство с тонущего корабля


15-1315577144
bss
2011-09-09 18:05
2012.01.15
TOleContainer, Excel - недоступно меню "Файл" и пр.