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 :

Transformations


Sujet :

OpenGL

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 20
    Par défaut [Résolu] Transformations
    Bonjour à tous,

    Dans un espace OpenGL comment faire pour que les transformations (rotations, zooms, ...) ne se fassent pas toujours par rapport au point 0,0,0 ?

    D'avance merci.

  2. #2
    Membre expérimenté
    Avatar de GLDavid
    Homme Profil pro
    Head of Service Delivery
    Inscrit en
    Janvier 2003
    Messages
    2 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Head of Service Delivery
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Janvier 2003
    Messages : 2 895
    Par défaut
    Salut !

    Sauf erreur de ma part, il me semble que dans les prototypes des fonctions de transformations tel glRotatef(angle, x, y, z), tu peux préciser tes coordonnées de ton centre de rotation.
    Voilà, j'espère t'avoir aidé.

    @+++
    GLDavid
    Consultez la FAQ Perl ainsi que mes cours de Perl.
    N'oubliez pas les balises code :tagcode: ni le tag :resolu:

    Je ne répond à aucune question technique par MP.

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

    Informations forums :
    Inscription : Avril 2003
    Messages : 20
    Par défaut
    Dans ma fenêtre OpenGL j'ai un cube que je peux faire pivoter sur l'axe Y et l'axe X lorsque je déplace la souris (et donc selon les coordonnées actuelles du curseur de la souris). J'utlise pour cela 2 fois la fonction glRotated (une pour chaque axe) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
             glRotated(PosX,0.0,1.0,0.0);		
             glRotated(PosY,1.0,0.0,0.0);
    Mais je ne sais pas comment utiliser les paramètres pour spécifier un autre centre de rotation qui pour le moment est toujours 0,0,0.
    Si le centre de mon cube est 0,0,0 et qu'il est un côté de 10 comment spécifier par exemple que le centre de rotation devienne 5,5,-5 (ou le coin droit si tu préfères !)

    Merci de ton aide

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Août 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 835
    Par défaut
    En openGL tu peux considérer que toutes tes rotations se font par rapport à l'origine (0,0,0). Donc pour tourner autour d'un autre point, il faut translater ton objet pour positionnner en qque sorte ton pivot sur l'origine, faire ta rotation, puis retranslater ton objet, de maniere inverse a la translation precedente. Par exemple pour ton cube :

    glTranslate( 5, 5, -5)
    glRotate(ma rotation)
    flTranslate( -5, -5, 5)
    Draw(monCube)

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2003
    Messages : 20
    Par défaut
    Parfait ! çà marche très bien !

    Merci !

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

Discussions similaires

  1. [PERL] transformation de fichier
    Par bob20000 dans le forum Langage
    Réponses: 6
    Dernier message: 27/07/2006, 11h13
  2. transformer un fichire Xml en pdf
    Par SuperFoustan dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 21/02/2003, 11h45
  3. transformer un jour en JJ/MM/AA
    Par gemini_010 dans le forum Algorithmes et structures de données
    Réponses: 8
    Dernier message: 08/11/2002, 22h55
  4. Transformer un caractère en type énuméré
    Par HT dans le forum Langage
    Réponses: 3
    Dernier message: 22/10/2002, 20h46
  5. FFT(Fast Fourier Transform)
    Par IngBen dans le forum Traitement du signal
    Réponses: 6
    Dernier message: 23/05/2002, 16h35

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