IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

OpenGL Discussion :

tracé de surface de bezier


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 29
    Par défaut tracé de surface de bezier
    bonjour,
    je suis en train de programmé en c++(opengl) des surfaces de bezier et de catmull-rom.Pour cela je prends 16 points de controles dans R3 ca me donne une matrice P[4][4][3],la matrice M de bezier ou de catmull M[4][4]et 2 vecteurs U et Vou U=[u^3 u^2 u 1] et V=[v^3 v^2 v 1] et je fais pour u de 0 a 1 et v de 0 a 1 le produit suivant
    UMP(Mt)(Vt )ou t est la transposée
    cela me donne donc des points.
    mon probleme est que je voudrais que ma surface soit pleine et qu'elle ne me donne pas un maillage mais si j'utilise glbegin(Gl_POLYGON) ca ne va pas alors j'utilise glbegin(Gl_LINE).Comment dois je faire?J'espere avoir ete assez clair dans mon exlication.

  2. #2
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Pas vraiment....

    C'est quoi qui marche pas ?

    Le calcul des points bezier/catmull ?
    Tu as donné la formule....

    L'affichage d'un patch de 16 points ?
    Vertices = P1 ..... P16
    Indices = 1,5,2,6,3,7,4,8, 5,9,6,10,7,11,8,12, 9,13,10,14,11,15,12,16

    glVertexPointer(vertices)
    glDrawElements( GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_SHORT, Varptr indices[0] )
    glDrawElements( GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_SHORT, Varptr indices[8] )
    glDrawElements( GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_SHORT, Varptr indices[16] )

    ou un truc du genre

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 29
    Par défaut
    Oui excuse moi mon explication n'etait pas très clair. Mes surfaces de bezier (ou catmull) sont definis par une formule matricielle avec 2 parametres u et v. En fesant varier u et v entre 0 et 1 j'obtiens un ensemble de points. J'aimerais connaitre le code pour ensuite afficher la surface pleine et pas comme un maillage.

  4. #4
    Membre Expert

    Profil pro
    Programmeur
    Inscrit en
    Août 2002
    Messages
    1 091
    Détails du profil
    Informations personnelles :
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Programmeur

    Informations forums :
    Inscription : Août 2002
    Messages : 1 091
    Par défaut
    Il faut que tu transformes tes points en triangles.

    Comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    *--*--*
    | /| /|
    |/ |/ |
    *--*--*
    J'avais écrit il y a longtemps un article sur les surfaces et courbes de Bezier, il y a du code OpenGL, meme s'il est un peu tout pourri et obsolète mais peut-être que ça te donnera des idées :
    Courbes et surfaces de Bezier

    LeGreg

    Mon site web | Mon blog | Mes photos | Groupe USA
    > BONJOUR, JE SUIS NOUVEAU SUR CE FORUM
    > presse la touche caps lock, stp
    > OH.. MERCI C EST BEAUCOUP PLUS FACILE COMME CA

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Surface de bezier problème de paramètres
    Par mounirb41 dans le forum OpenGL
    Réponses: 1
    Dernier message: 31/01/2010, 00h36
  2. [Débutant] Tracé de surface implicite
    Par wnxbcv dans le forum MATLAB
    Réponses: 9
    Dernier message: 25/08/2009, 15h20
  3. tracé de surfaces et projection
    Par chabacano dans le forum MATLAB
    Réponses: 3
    Dernier message: 07/08/2009, 09h44
  4. Tracés de surfaces 2D et champs de vecteurs avec GImg
    Par MPEG4 dans le forum Traitement d'images
    Réponses: 0
    Dernier message: 06/02/2009, 15h10
  5. Mouvement sur une surface de bezier
    Par TheJoe dans le forum OpenGL
    Réponses: 4
    Dernier message: 23/08/2007, 01h23

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo