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 :

Fonction de zoom à partir d'une sélection souris


Sujet :

OpenGL

  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2004
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 27
    Points : 21
    Points
    21
    Par défaut Fonction de zoom à partir d'une sélection souris
    Salut tout le monde,
    Je ne suis pas super expérimenté en OpenGL et je cherche à mettre en place une fonction de zoom. Je programme sous visual c++, je fais tracer une fenêtre à l'aide de la souris et je récupère les coordonnées.
    J'aimerais pouvoir zoomer sur la zone ainsi définie. J'ai vu quelque part qu'on pouvait utiliser gluPickMatrix, j'ai essayé mais ça ne marche pas....ou c'est moi qui m'en sert mal
    Ma question est donc: puis-je utiliser cette fonction?
    Les autres idées que j'ai sont l'utilisation de de gluLookat() et et du fov de gluPerspective() mais je ne sais pas comment recentrer l'image sur le centre de la zone, en gros quelles coordonnées passer à gluLookat(). Il me semble pouvoir le faire avec gluUnproject (?).
    Si des gens ont dejà mis en place un zoom semblable ou savent comment faire merci de me donner quelques infos.
    PS: Je peux passer en ortho si c'est plus simple (mais je trouve ça moins joli pour mon application).

  2. #2
    Expert éminent

    Homme Profil pro
    Technicien Help Desk
    Inscrit en
    Juillet 2004
    Messages
    2 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Technicien Help Desk

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 756
    Points : 6 686
    Points
    6 686
    Par défaut
    Bonjour mick74

    Tu devrais jetter un oeil à cette adresse : http://tfpsly.planet-d.net/OpenGL/Faq/
    .Olivier

  3. #3
    Membre du Club
    Inscrit en
    Janvier 2004
    Messages
    40
    Détails du profil
    Informations forums :
    Inscription : Janvier 2004
    Messages : 40
    Points : 48
    Points
    48
    Par défaut
    ca depends de comment tu veux faire ton zoom
    pcq la selection se fait en 2d et le zoom en 3d
    si tu veux simplement redimensionner le cadre selectionné pour qu'il remplisse la fenetre c simple
    tu calcules le rapport taille_de_la_fenetre/taille_du_cadre en hauteur et en largeur ensuite tu update ta matrice de projection == tu multiplies chacun des valeurs top bottom left right par le rapport correspondant
    mon conseil garde ces parametres (top,bottom...) ds des variables et a chaque zoom tu reinitialises lamatrice de progection(load identity) et tu utilises glFrustum
    toutes ces fonctions sont expliquées ds opengl.hlp (ou ds un search google)

Discussions similaires

  1. Réponses: 2
    Dernier message: 02/12/2009, 11h36
  2. appel d'une fonction vb a partir d'une fonction javascript!
    Par labib23dz dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 03/07/2009, 11h04
  3. Faire un UPDATE à partir d'une sélection avec jointure
    Par grping dans le forum Langage SQL
    Réponses: 5
    Dernier message: 26/03/2009, 17h06
  4. Réponses: 5
    Dernier message: 12/02/2008, 13h58
  5. Réponses: 1
    Dernier message: 15/06/2007, 22h28

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