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 :

construire une map 3D a partir de donnes xyz


Sujet :

OpenGL

  1. #1
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2003
    Messages : 165
    Points : 95
    Points
    95
    Par défaut construire une map 3D a partir de donnes xyz
    bonjour,

    Je dois reproduire une map en 3d a partir de donnee lazer (le format de point dans l espace xyz).

    J'ai essaye avec irrlicht mais il prend que des images en degrade de gris en input pour le terrain.

    Comment faire?

    Merci

  2. #2
    Nouveau membre du Club
    Inscrit en
    Juin 2004
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 63
    Points : 38
    Points
    38
    Par défaut
    Je comprend pas trop ta question...

    Tu as une liste de points que tu veux afficher ? Mailler ?

    Parce que si tu veux juste afficher les points, t'as juste à balancer les points à openGl, (glVertex en mode GL_POINTS), et au pire si tu veux quelque chose de mailler tu fais en mode GL_TRIANGLE, voir STRIPE si tu peux pour diminuer le nombre de points à traiter.

    Le truc c'est qu'il fait charger en mémoire les points de ta carte de hauteur. Dans un tableau par exemple si tu connais le nombre de points.

    Voilà !

  3. #3
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2003
    Messages : 165
    Points : 95
    Points
    95
    Par défaut
    Pour l'instant j'aimerai afficher les points et eventullement les lier. J'ai des donnees xyz en input.

    je veux afficher cela :



    Apres je devrais mettre des images (photo satelites) dessus. Je pense que je dois utiliser une api.[/img]

  4. #4
    Nouveau membre du Club
    Inscrit en
    Juin 2004
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 63
    Points : 38
    Points
    38
    Par défaut
    Et ben tu balances tout simplement tes points 3d à openGL :

    glBegin(GL_POINTS)
    pour i de 0 à nbPoints
    glVertex3f(Point[i].x, Point[i].y, Point[i].z)
    glEnd()

  5. #5
    Expert confirmé
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 527
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 527
    Points : 5 194
    Points
    5 194
    Par défaut
    tu as un exemple de tes données à traiter ?
    savoir dans quel format elles sont (texte, binaire, ...)
    Tutoriels OpenGL
    Je ne répondrai à aucune question en MP
    - Si c'est simple tu dis que c'est compliqué et tu le fait
    - Si c'est compliqué tu dis que c'est simple et tu le sous-traite ou le fait faire par un stagiaire.

  6. #6
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2003
    Messages : 165
    Points : 95
    Points
    95
    Par défaut xyz
    Hello,

    C'est du texte

    xyz

    0 0 12
    1 0 12.5
    2 0 12.6
    3 0 12.9
    etc...

  7. #7
    Nouveau membre du Club
    Inscrit en
    Juin 2004
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 63
    Points : 38
    Points
    38
    Par défaut
    Lit ce fichier texte avec des fscanf par exemple et met les données dans un tableau, comme ça tu pourras balancer les points à openGL comme je te l'ai montré précédemment

  8. #8
    Expert confirmé
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 527
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 527
    Points : 5 194
    Points
    5 194
    Par défaut
    sinon en lisant les données, tu pourrait créer une image en niveaux de gris utilisable dans irrlicht
    tu lis une première fois les données pour déterminer combien de lignes/colonnes tu as afin de connaitre les dimensions de ton image de sortie et tu mémorise également les valeurs min et max de la coordonnée
    Z afin de générer un niveau de gris entre 0 et 255
    Tutoriels OpenGL
    Je ne répondrai à aucune question en MP
    - Si c'est simple tu dis que c'est compliqué et tu le fait
    - Si c'est compliqué tu dis que c'est simple et tu le sous-traite ou le fait faire par un stagiaire.

  9. #9
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2003
    Messages : 165
    Points : 95
    Points
    95
    Par défaut
    j ai fais cela. ca marche.

    Mais j'ai plus de 255 niveau de hauteur-> donc perte d'info

    Vraiment je dois donner mes propres noeuds, comment faire?

  10. #10
    Nouveau membre du Club
    Inscrit en
    Juin 2004
    Messages
    63
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 63
    Points : 38
    Points
    38
    Par défaut
    Et ben lis tes points dans un tableau !!

    Mettons si tu as 1000 points, tu fais un tableau Tab[1000][3] et tu le remplis avec tes données point barre !

    Tu auras comme ça tous les points de ta map que tu pourras afficher

  11. #11
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2003
    Messages : 165
    Points : 95
    Points
    95
    Par défaut
    ok mais c'est pas du tout ma question.

    Pour l'instant j'utilise le moteur 3d irrlicht. Le probleme c est qu il prend en input que un image. Je veux un moteur qui prenne des points int ou float en input.

    Ma question est donc quel moteur et quel methode utiliser?

  12. #12
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Salut

    Il va falloir être plus clair.

    - Si tu veux une réponse pour Irrlicht, alors ceci est du multipost est ce sujet sera fusionné avec le précédent.

    - Si tu cherches un moteur 3D, alors ce post est mal placé et très mal fait, mieux vaudra pur toi refaire un topic clair.

    - Si tu recherches une solution OpenGL (puisque tu as posté sur ce forum), alors elle t'a été donnée.

    Merci donc de préciser ta demande.

  13. #13
    Expert confirmé
    Avatar de shenron666
    Homme Profil pro
    avancé
    Inscrit en
    Avril 2005
    Messages
    2 527
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : avancé

    Informations forums :
    Inscription : Avril 2005
    Messages : 2 527
    Points : 5 194
    Points
    5 194
    Par défaut
    Citation Envoyé par Husqvarna
    j ai fais cela. ca marche.

    Mais j'ai plus de 255 niveau de hauteur-> donc perte d'info

    Vraiment je dois donner mes propres noeuds, comment faire?
    Si tu ne veux pas perdre en précision et utiliser un moteur tel que irrlicht, alors il ne te reste comme possibilité que de transformer ton fichier texte en un format d'objet reconnu par irrlicht (peut-etre .obj, facile à faire vu que c'est du texte aussi)
    en tout cas de mon point de vue
    Tutoriels OpenGL
    Je ne répondrai à aucune question en MP
    - Si c'est simple tu dis que c'est compliqué et tu le fait
    - Si c'est compliqué tu dis que c'est simple et tu le sous-traite ou le fait faire par un stagiaire.

  14. #14
    Membre régulier

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    165
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2003
    Messages : 165
    Points : 95
    Points
    95
    Par défaut
    Cette piste est une bonne idee. Merci.

    Ou quelqu'un connait un autre moteur peut-etre avec lequel je peux directement donner des points xyz?

    Merci

  15. #15
    Rédacteur
    Avatar de Laurent Gomila
    Profil pro
    Développeur informatique
    Inscrit en
    Avril 2003
    Messages
    10 651
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Avril 2003
    Messages : 10 651
    Points : 15 920
    Points
    15 920
    Par défaut
    Est-ce que je parle en chinois ?

    Citation Envoyé par Loulou24
    Salut

    Il va falloir être plus clair.

    - Si tu veux une réponse pour Irrlicht, alors ceci est du multipost est ce sujet sera fusionné avec le précédent.

    - Si tu cherches un moteur 3D, alors ce post est mal placé et très mal fait, mieux vaudra pur toi refaire un topic clair.

    - Si tu recherches une solution OpenGL (puisque tu as posté sur ce forum), alors elle t'a été donnée.

    Merci donc de préciser ta demande.

  16. #16
    Membre régulier

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2005
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Novembre 2005
    Messages : 53
    Points : 114
    Points
    114
    Par défaut
    j ai fais cela. ca marche.

    Mais j'ai plus de 255 niveau de hauteur-> donc perte d'info

    Vraiment je dois donner mes propres noeuds, comment faire?
    Pour ce type de projet il faut utiliser des images en niveau de gris sur 16bits reste a voir si Irrlicht prend en charge ce type d'image.

Discussions similaires

  1. Construire une map<string, map<int, string> >
    Par jamsgoodon dans le forum Débuter
    Réponses: 2
    Dernier message: 23/02/2011, 19h53
  2. Réponses: 1
    Dernier message: 20/05/2010, 10h41
  3. Réponses: 10
    Dernier message: 10/05/2010, 21h59
  4. Réponses: 18
    Dernier message: 31/01/2009, 15h05
  5. Réponses: 3
    Dernier message: 19/05/2008, 10h36

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