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 :

QtSVG + Graphviz


Sujet :

Qt

  1. #1
    Membre à l'essai
    Profil pro
    Développeur
    Inscrit en
    Novembre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Novembre 2008
    Messages : 14
    Points : 12
    Points
    12
    Par défaut QtSVG + Graphviz
    bonjour

    g des graphe générer par l'outil graphviz qui sont en format dot je les ai convertie en image svg.

    g besoin de créer une classe qui dérive de QtSVG qui rajoute la capture des événement de souris, coloration du nœud sélectionné, et appel une fonction lors d'un double clic

    est-ce que vous pouvez m'orienter je suis débutant s.v.p ?

  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

  3. #3
    Membre à l'essai
    Profil pro
    Développeur
    Inscrit en
    Novembre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Novembre 2008
    Messages : 14
    Points : 12
    Points
    12
    Par défaut
    merci mais ce programme ne fait que convertir les .dot en .svg et les affiche avec QSvgRenderer, g besoin de rajouter des fonctionnalité tq sélection d'un nœud mise en surbrillance appelle d'une d'une fonction avec comme paramètre le nom du nœud lors d'un double clic.

  4. #4
    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 es sure?
    dotviz features a zommable and dragable graph view

  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
    Ha oui, tu as raison.
    j'avais mal compris la phrase.

    Pour ce que tu veut faire, je ne suis pas sur qu'avec un SVG ce soit aussi simple.
    Le mieux, serait que tu puisse créé des item pour chaque noeud avec les QGraphics.

  6. #6
    Membre à l'essai
    Profil pro
    Développeur
    Inscrit en
    Novembre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Novembre 2008
    Messages : 14
    Points : 12
    Points
    12
    Par défaut
    oui j'ai essayer le prog par "dragable" il veu dire que tu peu sélectionner le graphe et le déplacer avec la souris mais il considère le graphe comme un tout moi g besoin de sélectionné un nœud particulier :-) donc ma question est comment detecter l'objet selectionner d'un graph svg par un clic de souris g trouver cette fonction mais g pas su l'utilisé :

    QSvgRenderer Class Reference

    viewBox : QRect

    This property holds the rectangle specifying the visible area of the document in logical coordinates.

    Access functions:
    QRect viewBox () const
    void setViewBox ( const QRect & viewbox )

  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
    Partir du SVG, va certainement te compliquer la vie et je ne suis pas sur que cela soir possible.

    Tu pourrai regarder ceci :
    http://www.kde-apps.org/content/show...?content=23999

    Voici un cour sur graphviz
    http://cyberzoide.developpez.com/graphviz/
    Il y as la sortie plain qui pourrai t'intéresser.

    Le seul moyen de faire ce que tu veut, à mon avis, et de partir sur les QGraphics et que tu affiche le résultat toi même avec des QGraphicsItems.
    Ce qui te permettra de sélectionner et tout le reste.

  8. #8
    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
    un exemple Qt qui pourrai t'intéresser :
    http://qt.developpez.com/doc/4.4/gra...-diagramscene/

  9. #9
    Membre à l'essai
    Profil pro
    Développeur
    Inscrit en
    Novembre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Novembre 2008
    Messages : 14
    Points : 12
    Points
    12
    Par défaut
    merci je v essayer

    mais le probleme c que graphviz a des algorithme speciale pour dessiner les graphes au mieu.

    si j'utilise Qgraphics j'aurai 2 probleme lire le fichier dot et exraire tout les objet "noeud + arrete" puis les dessiner avec ma propre disposition ce que je ne souhaite pas puisque je desire garder les algorithme parformant de graphviz.

  10. #10
    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 abitaf Voir le message
    merci je v essayer

    mais le probleme c que graphviz a des algorithme speciale pour dessiner les graphes au mieu.
    graphvizs peut apparemment sortir (plain) un fichier texte avec la position des noeud et des point des flêche.

    Citation Envoyé par abitaf Voir le message
    si j'utilise Qgraphics j'aurai 2 probleme lire le fichier dot et exraire tout les objet "noeud + arrete" puis les dessiner avec ma propre disposition ce que je ne souhaite pas puisque je desire garder les algorithme parformant de graphviz.
    Ton problème c'est qu'un SVG est au finale qu'une image. Tu ne peut donc pas vraiment sélectionner quelques choses. Du moins comme cela.

    Après ça dépend ce que tu cherche à faire, peut tu détailler les actions que tu as à faire avec le graph?

  11. #11
    Membre à l'essai
    Profil pro
    Développeur
    Inscrit en
    Novembre 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Novembre 2008
    Messages : 14
    Points : 12
    Points
    12
    Par défaut
    les fonction importantes que je doit implémenter sélection d'un nœud mise en surbrillance + appel de fonction avec paramètre le nom du nœud.

    le svg n'est pas un format d'image brute c du XML qui contient les informations des objet a dessiner donc normalement il est possible de travailler avec.

  12. #12
    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 abitaf Voir le message
    les fonction importantes que je doit implémenter sélection d'un nœud mise en surbrillance + appel de fonction avec paramètre le nom du nœud.

    le svg n'est pas un format d'image brute c du XML qui contient les informations des objet a dessiner donc normalement il est possible de travailler avec.
    proposition :
    1-parsser le svg avec QXml pour resortir les position de tes noeuds.
    2- tu implémente
    void mousexxxxEvent ( QMouseEvent * event )
    http://qt.developpez.com/doc/4.4/qwi...mousemoveevent
    et tu compare la position du click avec les positions des noeud.
    3- si cela correspond à un noeud, tu ajoute par dessus quelque chose qui fera la surbrillance

  13. #13
    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

Discussions similaires

  1. Générer un fichier graphviz à partir des tables
    Par louroulou dans le forum VBA Access
    Réponses: 4
    Dernier message: 09/09/2008, 19h09
  2. Graphes avec GEF ou GraphViz ?
    Par Jibouze70 dans le forum Eclipse Platform
    Réponses: 6
    Dernier message: 16/05/2008, 11h15
  3. Quickgraph et graphviz
    Par Apo94 dans le forum C#
    Réponses: 2
    Dernier message: 04/04/2008, 13h43
  4. Comment automatiser la génération de graphs GraphViz depuis VB6
    Par numfard dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 10/04/2007, 10h10
  5. XP, graphviz, logiciel de graph
    Par djibril dans le forum Windows XP
    Réponses: 2
    Dernier message: 19/01/2007, 20h20

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