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 :

QPixmap dans une QGraphicsScene


Sujet :

Qt

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    554
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 554
    Par défaut QPixmap dans une QGraphicsScene
    Bonjour à tous,

    J'utilise donc une scène QGraphicsScene et j'ajoute des images au format PNG par l'intermédiaire de la fonction addPixmap. Le problème est que le rendu est très mauvais, par exemple pour une image de la tour effeil faites en vectoriel sans couleur, c'est-à-dire avec seulement les contours, il suffit que je m'éloigne un petit peu avec le zoom et les lignes sont toutes coupées et l'image ne ressemble à plus rien.
    J'ai utilisé la fonction setRenderHints(QPainter::SmoothPixmapTransform) de la QGraphicsView mais cela ne change rien.

    Quelqu'un a une idée pour l'amélioration de ce rendu ? Il faut peut-être un autre format ?

    Merci d'avance

  2. #2
    Membre très actif
    Avatar de buggen25
    Ingénieur développement logiciels
    Inscrit en
    Août 2008
    Messages
    554
    Détails du profil
    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Août 2008
    Messages : 554
    Par défaut
    esaaye le antialiasing avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    view.setRenderHints(QPainter::Antialiasing | QPainter::SmoothPixmapTransform);
    Normalement ça devrait marcher, pas sure quand meme

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    554
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 554
    Par défaut
    Non ça ne change rien, l'anti-aliasing n'a d'effet seulement sur les item autres que les pixmaps ...

  4. #4
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 035
    Par défaut
    Salut,
    Il ne faut pas plutôt applique le flag Qt::SmoothTransformation sur le graphicspixmapitem?
    http://qt.developpez.com/doc/4.4/qgr...sformationmode

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    554
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2004
    Messages : 554
    Par défaut
    Je viens de tester, mais ça ne change toujours rien... Je dois oublier quelque chose parce-qu'il n'y a vraiment aucune différence entre la FastTransformationMode et l'autre.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 164
    Par défaut
    fais-tu ton zoom avec la fonction scale() de la classe QGraphicPixmapItem ? si oui il est normal que ça pixelise car il passe par une fast trasformation dans tous les cas (c'est ce que j'avais remarqué à l'utilisation en tout cas)

    tu peux essayer autrement, récupérer le pixmap, faire un clear de la scene, faire un pixmap.scaled(newwidth,newheight,smoothtransformation) et rajouter ce pixmap à ta scene

Discussions similaires

  1. Réponses: 0
    Dernier message: 29/05/2015, 18h20
  2. Position de la QGraphicsView dans une QGraphicsScene
    Par Jeff504 dans le forum Débuter
    Réponses: 7
    Dernier message: 04/03/2010, 16h35
  3. gérer les jpg dans une fenetre directdraw???
    Par Anonymous dans le forum DirectX
    Réponses: 1
    Dernier message: 14/06/2002, 13h39
  4. Réponses: 3
    Dernier message: 09/05/2002, 01h39
  5. faire un selection dans une image aves les APIs
    Par merahyazid dans le forum C++Builder
    Réponses: 3
    Dernier message: 30/04/2002, 10h44

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