alors voilà j'ai un petit souci et de grosses lacunes en mathématiques. Je fais un projet personnel en infographie (opengl/glut/c++), et mon probleme ets le suivant.
Je doit tracer un tube le long d'une suite de point. Pour chaque point je doit trouver la section (cercle) correcte définie par un ensemble de points, et je relie ensuite chaque section pour former un tube.
en gros, je veux dessinr un truc qui ressemble à ça:

donc pour chaque point Pn du chemin:
le vecteur p1, vecteur directeur de la droite (Pn-1 -> Pn)
le vecteur p2, vecteur directeur de la droite (Pn -> Pn+1)
le vecteur orthogonal au plan défini par p1,p2.
ortho<- p1*p2 (produit vectoriel)
ce vecteur représente Oy dans le repere local
le vecteur de base, qui coupe l'angle formé par p1 et p2 en son milieu:
base<- p1+(-p2) (car p1 et p2 sont dans le meme sens)
ce vecteur représente Ox dans le repere local
le vecteur orthogonal à au plan défini par ortho et base:
direction <- base*ortho
ce vecteur représente Oz dans le repere local
On a donc un repere local dans lespace. Le probleme es que je dois en déduire les point du cercle dans ce repere (plus précisément dans le plan base/ortho), avec des coordonnées absolues (donc dans le repere classique Ox,Oy,Oz).
Pour trouver les coordonnées j'utilise uen équation paramétrique (plus simple pour programmer)
Pour le moment j'en est dédui ça:
soit O le centre du cercle
soit Ox, Oy et Oz les vecteur directeur des axes du repere local
r le rayon du cercle a tracer
le point P correspondant à un angle A (avec A de 0 à 2Pi) est:
P.x= O.x+(r*cos(A)*Ox.x)+(r*sin(A)*Ox.y)
P.y= O.y+(r*cos(A)*Oy.x)+(r*sin(A)*Oy.y)
P.z= O.z + ??
est-ce que je me trompe completement ou ya-til une part de vérité dans totu ça?
Et comment puis-je trouver ces point?