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

Développement 2D, 3D et Jeux Discussion :

VTK et SGL avec C++ pour manipuler le format VRML ( maillage 3D et Texture)


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut VTK et SGL avec C++ pour manipuler le format VRML ( maillage 3D et Texture)
    Bonjour à tous,
    Je travaille sur un projet qui a pour but de manipuler, traiter et gérer des images 3D sous le format VRML. Pour cela j'utilise le langage c++ avec le Visual c++ express edition 2008. Mais jusqu'à mnt j'ai des problèmes avec les bibliothèques.
    En fait, au début j'ai commencé à travailler avec la VTK qui offre des lib qui supportent le format VRML, mais apparament ces lib ne prennent pas en considération la texture des objets 3D ! (je reussi à lire les fichier .wrl, mais en affichage je n'apperçois que le maillage de mon objet )
    Du cout j'ai cherché à travailler avec la bibliothèque SGL. En l'explorant, elle semble contenir des lib bien riches, mais je n'arrive toujour pas à compiler un tout petit bout de code avec ! En fait j'ai toujours des erreurs de LINK tel que:
    1>main.obj : error LNK2019: symbole externe non résolu "public: void __thiscall SceneGraph::add(char *,bool,void (__cdecl*)(int,void *),void *)" (?add@SceneGraph@@QAEXPAD_NP6AXHPAX@Z2@Z) référencé dans la fonction "void __cdecl FaceShow(void)" (?FaceShow@@YAXXZ)

    Sachant que j'ai ajouté les path des fichiers générés par la bibliothèques ( .lib, .dll, ... )

    Je serai trés reconnaissante si quelqu'un peut m'aider à résoudre ce problème ou à m'éclaircir certains points concernant ces deux biblio ou qui a une suggestion d'une 3ième biblio plus efficace...

    Merci

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    Est ce quelqu'un a déjà utilisé une de ces lib ( VTK ou SGL ) ou la lib OpenSceneGraph pour manipuler du maillage 3D? Et y a-t-il quelqu'un qui a déjà compilé SGL avec le visual C++ express edition 2008? J'ai des erreurs en compilant la biblio SGL de type:
    \sgl-0.7.0\sgldb\sgltristripper.hpp(539) : error C2679: '!=' binaire : aucun opérateur trouvé qui accepte un opérande de partie droite de type 'int' (ou il n'existe pas de conversion acceptable)

    Et pour le OSG j'ai une erreur lié à la biblio elle même lors de la compilation de mon projet rien qu'en fesant un include :

    1>d:\wafa\mon travail de pfe\tools\openscenegraph\include\osg\math(203) : error C3861: 'isnan' : identificateur introuvable

    ( math est une lib contenue dans OSG )

    quelqu'un peut il m'aider svp ?

  3. #3
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Bonjour.
    Pour le vrml, tu as l'api open inventor comme COin3D.
    C'est la même techno

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    Merci beaucoup, je vais voir ça tout de suite

  5. #5
    Membre éprouvé
    Avatar de Ange_blond
    Homme Profil pro
    Ingénieur développement en 3D temps réel
    Inscrit en
    Mars 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement en 3D temps réel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2007
    Messages : 902
    Points : 1 179
    Points
    1 179
    Par défaut
    J'utilise professionnellement OSG, et je n'ai pas de probleme avec...

    Tu as installé OSG comment sur ta machine ? quelle version ?
    "le langage C permet de tout faire, y compris se tirer dans le pied. Le langage C++ permet de tout faire, y compris se tirer dans le pied - et réutiliser la balle"

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    j'ai la OSG 2.0, j'ai utilisé un CMake pour la configurer et le visual c++ express edition 2008 pour la générer. tout c'est bien passé et ma biblio a été bien compilée sans aucun problème. mais en testant l'exemple suivant :
    http://www.openscenegraph.org/svn/os...viewerGLUT.cpp

    j'ai eu cette erreur :
    1>d:\wafa\mon travail de pfe\tools\openscenegraph\include\osg\math(203) : error C3861: 'isnan' : identificateur introuvable
    1>d:\wafa\mon travail de pfe\tools\openscenegraph\include\osg\math(204) : error C3861: 'isnan' : identificateur introuvable

    que j'arrive pas à résoudre

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    bon malgrés que je ne comprend pas trop, mais j'ai pu résoudre cette erreur en ajoutant #include <GL/glaux.h>

    Vous dites que vous maitrisez bien OSG, alors pouvez vous m'indiquer svp si avec cette biblio je peux bien manipuler des objets en maillage 3D et texturés en format VRML?
    En fait je fais de l'analyse des visages en 3D pour pouvoir les gérer et y extraire qlq propriétées, et je dispose pour cela d'une série de visages 3D sous le format VRML pris avec un système de stéreo vision. Alors est ce que j'ai fais le bon choix de biblio??

    merci

  8. #8
    Membre éprouvé
    Avatar de Ange_blond
    Homme Profil pro
    Ingénieur développement en 3D temps réel
    Inscrit en
    Mars 2007
    Messages
    902
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement en 3D temps réel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2007
    Messages : 902
    Points : 1 179
    Points
    1 179
    Par défaut
    Selon mes 2 mois d'expérience sous OSG, tu peux tout à fait gerer des models 3d avec cette bibli...

    OSG dispose d'une foule de format d'importation, je suppose que le VRML en fait partie...

    A mon avis, en quelques jours/semaines tu saura tres vite si oui ou non OSG est capable de faire selon tes envies, mais je serai surpris que ce ne soit pas le cas...

    Edit : OSG dispose bien d'un plugin pour importer les VRML.
    "le langage C permet de tout faire, y compris se tirer dans le pied. Le langage C++ permet de tout faire, y compris se tirer dans le pied - et réutiliser la balle"

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    Merci beaucoup Ange_blond

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    En fait, le package wrl de OSG qui s'occupe du format VRML est un package basé sur Inventor de Coin3D. Mais c'est un package nouveau et je crois que c'est pas encore finalisé ( en tout cas j'ai pas réussi à le compiler ). Mais de toute façon, il semble bien que Inventor pourra me sauver Mongaulois
    c'est une lib basé aussi sur OSG.
    merci tout le monde, j'éspère que celle là conviendra bien à mes besoins

  11. #11
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Citation Envoyé par wafa_b Voir le message
    c'est une lib basé aussi sur OSG.
    Attention OpenInventor (Coin3D) et OSG non rien à voir, à part que ce soit des scène graph.
    Ce sont deux API différentes, avec des fonctionnalités très similaire.

  12. #12
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    ah d'accord, j'ai tellement vu des biblio (vtk, sgl, osg, coin, openVRML, trimesh...) que je commence à tout mélanger je crois

  13. #13
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    là je commence à travailler avec Inventor, mais j'ai ce message en sortie:
    Coin warning in SbImage::readFile(): The simage library is not available, can not import any images from disk.

  14. #14
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Citation Envoyé par wafa_b Voir le message
    là je commence à travailler avec Inventor, mais j'ai ce message en sortie:
    Coin warning in SbImage::readFile(): The simage library is not available, can not import any images from disk.
    Tu développe sous quoi?

  15. #15
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    je développe sous windows, avec le visual c++ express edition 2008

  16. #16
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Tu as pris qu'elle edition ici?
    http://www.coin3d.org/lib/coin/releases/2.5.0

    En faite, Coin ne trouve pas la dll simage. C'est une dll qui lui sert à lire les images qu'il charge dynamiquement.
    [edit]
    ici il y as des version compilé de simage
    ftp://ftp.coin3d.org/pub/coin/bin/win32/all

    il en parle dans la doc
    http://doc.coin3d.org/Coin/classSbImage.html#a11
    mais c'est pas trés claire

  17. #17
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    j'ai installé le SImage et le SoWin associés et ça marche mnt
    Je suis toujours en cours de découvrir la lib et je suis pas encore arrivée à visualiser un objet en VRML, mais j'espère bien que cette librairie tiendra compte de la texture ...
    merci tout le monde,

  18. #18
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    ben ça marche bien , mnt je peux me lancer dans mon travail...

    Pour ceux qui cherchent des outils pour pouvoir travailler sur le format VRML, Coin3D/ Inventor supporte bien les objets 3D texturés à ce format , mais faites attention ne faitent pas les même erreurs que moi pour ne pas perdre votre temps: si vous travaillez sous Windows, téléchargez dés le début la version située à l'emplacement suivant:
    http://www.coin3d.org/lib/simage
    cet executable vous générera le Coin3D ainsi que les lib Simage que vous aurez besoin pour le chargement de vos images et SoWin pour faciliter vos affichages, et bon courage.

    Merci Mongaulois et merci tout le monde

    >> ceci est un petit exp pour commencer...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     
    #include <Inventor/Win/SoWin.h>
    #include <Inventor/Win/viewers/SoWinExaminerViewer.h>
    #include <Inventor/nodes/SoBaseColor.h>
    #include <Inventor/nodes/SoSeparator.h>
    #include <Inventor/SoInput.h>
    #include <iostream>
     
    int  main(int argc, char ** argv)
    {
    	// create a window for visualisation
        HWND mainwin = SoWin::init(argc, argv, argv[0]);
    	SoDB::init();
    	// create an input to get the file for reading
        SoInput in;
     
    	if (in.openFile("MyInputFile.wrl")) 
    	{
    		std::cout<<"File loaded correctely................";
     
    		// create a separator to contain read info from input file
    		SoSeparator * root;
    		root = SoDB::readAll(&in);
    		root->ref();
     
    		// create a viewer to be attached to the window and to display the input
    		SoWinExaminerViewer * eviewer = new SoWinExaminerViewer(mainwin);
    		eviewer->setSceneGraph(root);
    		eviewer->setTitle("MyViewer");
    		eviewer->show();
     
    		// Pop up the window
    		SoWin::show(mainwin);
    		SoWin::mainLoop();
     
    	}
        return 0;
     }

  19. #19
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 033
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 033
    Points : 13 968
    Points
    13 968
    Par défaut
    Tu peut aussi utiliser Qt pour les IHM
    avec SoQt

  20. #20
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    38
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 38
    Points : 17
    Points
    17
    Par défaut
    oui, mais je crois que SoWin et SoQt offrent les mêmes fonctionalités, non? et encore il parait que SoWin est destiné pour le 3D alors que SoQt est fait pour le 2D.
    Peut etre qu'il est préférable d'utiliser SoQt pour les gens qui peuvent transporter leur travaille sur unix par exp, mais dans mon cas, je fais un travail de recherche et je ne m'interesse pas trop à ce que mon code soit transportable.
    mais il faut dire qu'il fallait y penser

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 0
    Dernier message: 07/05/2015, 08h05
  2. Réponses: 7
    Dernier message: 04/04/2008, 10h16
  3. WebService avec Sharepoint pour manipuler des .doc
    Par Apo94 dans le forum Services Web
    Réponses: 3
    Dernier message: 20/03/2008, 12h42
  4. API Windows pour manipulation d'images avec transparence
    Par Grosbenji dans le forum Windows
    Réponses: 2
    Dernier message: 28/08/2007, 11h51
  5. Réponses: 19
    Dernier message: 24/05/2002, 16h36

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