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

Qt Discussion :

Pb affichage image


Sujet :

Qt

  1. #1
    Membre du Club Avatar de Dodin
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2009
    Messages : 104
    Points : 66
    Points
    66
    Par défaut Pb affichage image
    Bonjour à tous.

    Voici mon problème, j'ai une fenêtre créer via une QMainWindows. Dans le constructeur de celle-ci a un moment je lui demande d'afficher une image. Le problème est que rien ne s'affiche... je ne comprend pas.

    Je code sous Qt creator, dans mon projet j'ai créé un répertoire ressources ou mon image est linker." Donc à force sur i " il devrait reconnaitre mon image mais rien...n'y fait.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
      QLabel  *label  = new QLabel;
        QPixmap *pixmap_img = new QPixmap("collines.jpg");
     
        label->setPixmap(*pixmap_img);
        //cela ne fait rien non plus....
        label->show();
     
    //j'ajoute a ma QMainWindow
     VertiPrincipaLayoutAccueil->addWidget( _gView );
        VertiPrincipaLayoutAccueil->addWidget(groupZOOM);
        VertiPrincipaLayoutAccueil->addWidget( label);

    Merci pour votre aide, c'est quelque chose de basique mais je galère. J'ai essayé via une QImage, mais c'est un échec aussi.


    Merci pour votre aide !

  2. #2
    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
    Salut
    1- pourquoi un new sur QPixmap????
    2- je voie 2 possibilité
    • problème de path pour trouvé le fichier jpeg
    • problème de path pour trouvé le plugin image qui ouvre le jpeg


    Tu devrais essayer avec un png pour commencer.

  3. #3
    Membre confirmé
    Avatar de haraelendil
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2004
    Messages
    283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Février 2004
    Messages : 283
    Points : 533
    Points
    533
    Par défaut
    essaie un
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    qDebug() << (pixmap_img->isNull()?"probleme image":"image ok");
    voir si il trouve ton image ou pas...

  4. #4
    Membre du Club Avatar de Dodin
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2009
    Messages : 104
    Points : 66
    Points
    66
    Par défaut
    Re salut !

    Merci à vous deux pour la réponse rapide, ça fait toujours plaisir.

    J'ai résolu mon problème, un collègue m'a indiqué qu'il fallait mettre ":" ou "../" dans le path de l'image pour que cela fonctionne. Effectivement ça a fonctionné parfaitement !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
        QLabel  *label  = new QLabel();
     
        QPixmap *pixmap_img = new QPixmap(":Ducati.jpg");
     
        label->setPixmap(*pixmap_img);
    Par contre je dois l'afficher en transparence auriez-vous une idée de quelle méthode employée?

    Merci une fois de plus.

  5. #5
    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 Dodin Voir le message
    J'ai résolu mon problème, un collègue m'a indiqué qu'il fallait mettre ":" ou "../" dans le path de l'image pour que cela fonctionne.
    Si ton fichier est dans les ressource, oui il faut utiliser :/
    Par contre je dois l'afficher en transparence auriez-vous une idée de quelle méthode employée?
    utilise des png au lieu du jpeg. Ce format contient une couche alpha.

  6. #6
    Membre du Club Avatar de Dodin
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2009
    Messages : 104
    Points : 66
    Points
    66
    Par défaut
    Re.

    Je ne peux pas créer des alpha, sur une image en jpg? Car je ne peux avoir comme format que des jpg... A moins de convertir mon image jpg en png.
    Mais cela risque d'être inapproprié non ?

    Thanks !

  7. #7
    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 Dodin Voir le message
    Je ne peux pas créer des alpha, sur une image en jpg? Car je ne peux avoir comme format que des jpg...
    Le format jpeg ne supporte pas l'alpha. Donc tu sera obligé de faire cette couche toi même et de l'ajouter à ta pixmap.

    Que ce que tu as besoin de faire?

  8. #8
    Membre du Club Avatar de Dodin
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2009
    Messages : 104
    Points : 66
    Points
    66
    Par défaut
    Ben je bosse sur un outil de posture. J'ai une fenêtre ou j'affiche une vue 3D via Ogre. Je voudrais placardé cette image en transparence sur ma vue 3D ce qui me permettrai grâce à la photo de donner à mon mesh via Ogre3D une posture réaliste.

    Et l'image de base du personnage est en jpeg, c'est pour cela.

  9. #9
    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 Dodin Voir le message
    Ben je bosse sur un outil de posture. J'ai une fenêtre ou j'affiche une vue 3D via Ogre. Je voudrais placardé cette image en transparence sur ma vue 3D ce qui me permettrai grâce à la photo de donner à mon mesh via Ogre3D une posture réaliste.

    Et l'image de base du personnage est en jpeg, c'est pour cela.
    avec quoi tu affiche ton image?

  10. #10
    Membre du Club Avatar de Dodin
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2009
    Messages : 104
    Points : 66
    Points
    66
    Par défaut
    Pour l'instant j'utilise un Qlabel comme tu peux le voir dans mon post précédent. Mais je vais passé à un QWidget. C'est plus commode. Apparemment si je le met dans un QWidget, je pourrai utiliser la méthode opacity() pour modifier la transparence du widget... Qu'es ce que tu en pense ainsi pas de png.


  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 Dodin Voir le message
    Pour l'instant j'utilise un Qlabel comme tu peux le voir dans mon post précédent. Mais je vais passé à un QWidget. C'est plus commode. Apparemment si je le met dans un QWidget, je pourrai utiliser la méthode opacity() pour modifier la transparence du widget... Qu'es ce que tu en pense ainsi pas de png.

    Que si ca correspond à tes besoins, c'est une bonne solution

  12. #12
    Membre du Club Avatar de Dodin
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2009
    Messages : 104
    Points : 66
    Points
    66
    Par défaut
    Salut à vous & a yan !

    Bon j'ai réussi a afficher mon image,et a zoomer dessus avec un zoom pris à 2 fois la taille de mon image et le tout avec de la transparence!

    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
     
    QWidget *WidgetImg  = new QWidget;
        QLabel *label  = new QLabel;
        QPixmap *pixmap_img = new QPixmap(":image1.jpg");
     
        label->setPixmap(*pixmap_img);
        //label->resize(2 * pixmap_img->size());
     
     
     
        QGridLayout *gridLayout = new QGridLayout;
        gridLayout->addWidget(label);
        WidgetImg->setLayout(gridLayout);
     
        WidgetImg->resize( 2 * pixmap_img->size());
     
        QGraphicsProxyWidget *proxy = scene->addWidget(WidgetImg);
        proxy->setOpacity(0.5);
    Mais il y a toujours un mais... je voudrais faire correspondre le zoom Ogre avec le zoom de mon image. Donc je vais devoir zoomer sur une partie très précise de mon image correspondant à certaine coordonnées Ogre3D. Je pensais faire un getrect() sur mon image par rapport une coordonnée Ogre mais elles sont inutilisable...

    Donc si vous avez des idées... je suis preneur !

  13. #13
    Membre du Club Avatar de Dodin
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2009
    Messages : 104
    Points : 66
    Points
    66
    Par défaut
    Re bonjour à tous !

    Ou alors je cherche à effectuer un zoom sur une partie bien précise de mon image. Je ne sais pas comment m'y prendre.

    Thanks a lot.

  14. #14
    Membre du Club Avatar de Dodin
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2009
    Messages : 104
    Points : 66
    Points
    66
    Par défaut
    Bonjour,

    J'ai trouvé ma solution, je passe par une copie d'une zone de mon image bien définie que je place en fond ensuite.

    Voici mon code :

    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
     
    //------------------------
        // INSERTION DE MON IMAGE
        //------------------------
        QLabel *label  = new QLabel;
        QPixmap *pixmap_img = new QPixmap(":FootCapture.jpg");
        QPixmap pixmap_imgModifier;
     
        QSize tailleScene;
        tailleScene = size();
        QRectF TailleScene = scene->sceneRect();
     
     
        pixmap_imgModifier = pixmap_img->copy(280,100,100,100);
     
        pixmap_imgModifier = pixmap_imgModifier.scaled( tailleScene );
     
        label->resize(pixmap_imgModifier.size());
        //applique l'image dans le label
        label->setPixmap(pixmap_imgModifier);
     
     
        QGraphicsProxyWidget *proxy = scene->addWidget(label);
        proxy->setOpacity(0.7);
        proxy->setZValue(100);
    Voila bonne journée !

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

Discussions similaires

  1. [MFC] affichage image caméra dans un projet dialog
    Par Vestaproman dans le forum MFC
    Réponses: 3
    Dernier message: 07/02/2005, 13h27
  2. [Image] Affichage image en 12 bits
    Par Plawi dans le forum 2D
    Réponses: 9
    Dernier message: 18/11/2004, 09h34
  3. Affichage Image
    Par greg_one dans le forum Composants
    Réponses: 5
    Dernier message: 22/06/2004, 16h10
  4. Problème de mémoire Affichage images
    Par Repti dans le forum C++Builder
    Réponses: 6
    Dernier message: 29/03/2004, 20h06
  5. [Kylix] pb Affichage image .jpg
    Par sioux dans le forum EDI
    Réponses: 4
    Dernier message: 18/01/2004, 19h20

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