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 :

Selection d'objet avec open_GL


Sujet :

OpenGL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    .
    Inscrit en
    Octobre 2018
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Octobre 2018
    Messages : 62
    Par défaut Selection d'objet avec open_GL
    Bonjour,

    J'aimerai sélectionner des triangles sur une surface (qui est composée uniquement de triangles) avec ma souris. J'ai vu qu'il y avait la technique de prendre le coordonnée du clic de la souris et regarder les points les plus proches. Mais je ne trouve pas ça des plus pertinent.. et "propre".
    Ne savez vous pas s'il est possible de sélectionner directement un triangle que j'ai pu dessiner avec glDrawElements() ?
    Pour l'instant je ne cherche pas à faire des choses particulières. Simplement le récupérer et changer sa couleur. Mais pour se faire j'aimerai obtenir les 3 points qui le composent (et donc leurs coordonnées).
    Je n'ai pas encore fait de vrai test de mon côté, mais j'aimerai éviter de perdre du temps en perdant dans le mauvais sens ! ^^'.

    Je vous remercie d'avance de l'aide apportée !

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 153
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 153
    Billets dans le blog
    4
    Par défaut
    OpenGL ne fait que de l'affichage. Une fois les triangles dessinés il a fini son boulot. Tu ne peux pas intéragir avec eux via OpenGL.
    Si tu veux récupérer les triangles, oui il faut que tu travailles avec les coordonnées de la souris (que OpenGL ne fournit pas) et que tu cherches ce qu'il se trouve autour.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  3. #3
    Membre confirmé
    Homme Profil pro
    .
    Inscrit en
    Octobre 2018
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Octobre 2018
    Messages : 62
    Par défaut
    Merci de ta réponse.
    J'ai vu dans la FAQ qu'il y avait l'utilisation du principe de "Selection et de Picking" avec openGL. Mais je n'ai pas bien compris l'utilisation de la pile de noms retournés par les méthodes associées (http://devernay.free.fr/cours/opengl...ion/slide3.htm).
    Peut-être est-ce plus simple que je me limite à la solution que tu m'as émise ?

  4. #4
    Expert confirmé
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 226
    Par défaut
    J'ai vu qu'il y avait la technique de prendre le coordonnée du clic de la souris et regarder les points les plus proches
    ah bon parce que oui il faut prendre les coordonnées de la souris pour le reste :
    -faire la transformation perspective des triangles que tu veux sélectionner.
    -faire des collisions point/triangle (en 2D du coup vu que la transformation perspective te donnera les coord 2D).
    Et normalement , on sélectionnera le triangle le plus proche.

  5. #5
    Membre confirmé
    Homme Profil pro
    .
    Inscrit en
    Octobre 2018
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Octobre 2018
    Messages : 62
    Par défaut
    Qu'appelles-tu transformation perspective des triangles ? Et pourquoi repasser en 2D ? Car imaginons que j'ai une sphère, je vais bien devoir le déterminer en 3D, non ?

  6. #6
    Expert confirmé
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 226
    Par défaut
    Citation Envoyé par LePtitBen Voir le message
    Qu'appelles-tu transformation perspective des triangles ?
    La transformation perspective c'est ce que fait tout les GPU , tu lui donne des coordonnées 3D + matrice , lui les convertie en 2D puis les dessines sur ton écran.

    Citation Envoyé par LePtitBen Voir le message
    Et pourquoi repasser en 2D ? Car imaginons que j'ai une sphère, je vais bien devoir le déterminer en 3D, non ?
    Sauf si tu bosse sur un hologramme la question se poserai pas , mais je suppose que ta 3D s'affiche sur un écran en 2D , donc ce que tu vois est bel et bien en 2D (avec de la perspective pour lui donnée une profondeur) et ta souris est en 2D aussi.

  7. #7
    Membre confirmé
    Homme Profil pro
    .
    Inscrit en
    Octobre 2018
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Octobre 2018
    Messages : 62
    Par défaut
    Ok, je vois, mais j'ai toujours un peu du mal avec cette transformation perspective.

    tu lui donne des coordonnées 3D + matrice , lui les convertie en 2D
    Qu'elle est donc cette matrice ? Comment je peux la déterminer ?
    Et puis, comment faire la différence entre 2 triangles qui ont les mêmes coordonnées mais pas la même profondeur (superposition). Ce calcul prend en compte ce cas là ?

Discussions similaires

  1. [eZ Publish Community Project 2012.3] relation d'objet avec méthode de selection "parcourir"
    Par stephanegib2 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 21/06/2012, 16h28
  2. [AJAX] XMLHttpRequest avec select et objet Option
    Par renaud26 dans le forum AJAX
    Réponses: 36
    Dernier message: 05/03/2010, 08h34
  3. [POO] Instancier un objet avec le nom de la classe
    Par shinchun dans le forum Langage
    Réponses: 4
    Dernier message: 08/06/2006, 13h44
  4. Insert avec select sur table avec Trigger d'insertion
    Par bran_noz dans le forum Développement
    Réponses: 5
    Dernier message: 23/12/2005, 14h38
  5. A propos des modèles d'objet (avec sources)
    Par DevX dans le forum C++Builder
    Réponses: 14
    Dernier message: 01/12/2002, 12h22

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