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

2D Java Discussion :

Carte 2D avec deux calques liées en movements


Sujet :

2D Java

  1. #1
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut Carte 2D avec deux calques liées en movements
    Bonjour tout le monde.

    Je cherche à créer dans une fenêtre swing, dans un onglet, l'affichage d'une carte (calque 0) et d'une zone de points interactif (calque 1) au dessus du précédent. Comme la carte est soumis aux mouvements, déplacement latéral, déplacement vertical, j'aimerais que les deux calques soit liée en quelque sorte. Il me faudra aussi gérer le cas du zoom, quand j'aurais compris le reste.

    Pour le moment je pense que je vais me faire une classe (hérité ou non) d'un composant graphique. Le tout est que je charge une carte (via le code) et qu'elle s'affiche.

    Afin d'illustrer ce que je voudrais faire, voila un aperçu que j'ai dessiner.
    Merci beaucoup pour vos réponses.

  2. #2
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 641
    Points
    7 641
    Par défaut
    Salut,

    Citation Envoyé par Microbulle Voir le message
    Merci beaucoup pour vos réponses.
    Bah de rien... mais c'est quoi la question?
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  3. #3
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut
    Bonjour,
    A ce que je voie, j'ai du mal m'exprimer. Pourtant!!!!! Il suffit de lire!!!!!

    Citation Envoyé par Microbulle Voir le message
    Bonjour tout le monde.

    Je cherche à créer dans une fenêtre swing, dans un onglet, l'affichage d'une carte (calque 0) et d'une zone de points interactif (calque 1) au dessus du précédent. Comme la carte est soumis aux mouvements, déplacement latéral, déplacement vertical, j'aimerais que les deux calques soit liée en quelque sorte. Il me faudra aussi gérer le cas du zoom, quand j'aurais compris le reste.
    Je pensait que c'était clair... Je vais donc révisé ma copie

    J'aimerais bien comprendre comment on peut, et avec quel composants réalisé deux calques, l'un sur l'autre, avec sur le calque inférieur une image (JPG / PNG) et au dessus, des points issus de données connus.

    En l'occurrence, il me faut pour définir un point:
    • Nom du point: Jacques
    • Coordonnée X: 10 (En pixel)
    • Coordonnée Y: 20 (En pixel)
    • Informations: Jacques tiens un magasin de potion magique rendant fou tout lecteur de ce message (ça c'est pour rire, il me faut tester)


    Citation Envoyé par Microbulle Voir le message
    Pour le moment je pense que je vais me faire une classe (hérité ou non) d'un composant graphique. Le tout est que je charge une carte (via le code) et qu'elle s'affiche.
    Je pensait que l'on ne pouvais pas faire plus simple vue qu'il faut bien commencer par faire quelque chose.
    1. Afficher une image sur le calque inférieur
    2. Afficher au moins le point précédent
    3. Interagir sur les points en fonction des Zoom / Déplacements
    4. Interagir avec la souris sous forme d'évènements pour les: modifier / déplacer / supprimer, les points insérés par l'utilisateur


    Citation Envoyé par Microbulle Voir le message
    Afin d'illustrer ce que je voudrais faire, voila un aperçu que j'ai dessiner.
    Comme une image vaut mieux qu'un long discourt, j'avais pensé illustré ma demande avec une image, visiblement pas regardé
    Je vais donc pas en refaire une autre car elle ne sera pas plus vue que la précédente.

    Citation Envoyé par Microbulle Voir le message
    Merci beaucoup pour vos réponses.
    Cela me paraissait normal, vue que ma demande porte sur un point de départ et que je cherche à découvrir comment gérer des images par calques.

    Voila. Bonne lecture à ceux qui en auront le courage même si, je le sait bien, je ne suis pas un foudre de guerre niveau écriture.

    Cordialement.

  4. #4
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par Microbulle Voir le message
    A ce que je voie, j'ai du mal m'exprimer. Pourtant!!!!! Il suffit de lire!!!!!
    Même en lisant, vois-tu un quelconque endroit où tu demandes quelque chose? Un avis? Un conseil? Où tu expliques là où tu bloques? Moi non
    Il y a une différence entre exprimer ce que l'on a l'intention de faire, et présenter son problème.



    Citation Envoyé par Microbulle Voir le message
    Comme une image vaut mieux qu'un long discourt, j'avais pensé illustré ma demande avec une image, visiblement pas regardé
    Qu'est-ce qui te fait dire ça?
    Même si elle est au format timbre poste, elle est visible.
    Par contre elle non plus n'explique pas ton problème. Tu expliques ce que tu veux faire, tu montres une image qui l'illustre, où est le problème encore une fois???

    Citation Envoyé par Microbulle Voir le message
    J'aimerais bien comprendre comment on peut, et avec quel composants réalisé deux calques, l'un sur l'autre, avec sur le calque inférieur une image (JPG / PNG) et au dessus, des points issus de données connus.
    Ca, c'est une demande plus précise...
    Essaie en passant par un JLayeredPane, c'est basé sur un système de calques qui devrait répondre à ton besoin. Tu mets ta carte dans un JPanel surchargé (pour la méthode paint()) sur le calque de fond, et sur le calque en premier plan tu mets tes points (avec transparence... si tu en as beaucoup, je pense qu'il est préférable de tous les dessiner sur une image et de l'afficher dans un JPanel également)
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  5. #5
    Expert confirmé
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Points : 4 539
    Points
    4 539
    Par défaut
    Citation Envoyé par plegat Voir le message
    et sur le calque en premier plan tu mets tes points (avec transparence...
    malgré la transparence ,il va avoir la barre de titre opaque et c'est gainant.

    ce n'est pas clair mais si j'ai bien compris ,tu veut afficher une image et au dessus,des points manipulable qu'on peut déplacer ; donc si c'est le cas ,je propose ,de mettre ton image dans un Jpanel et pour chaque point tu crée un jpanel de taille réduite par exemple (5,5) et de cette façon tu peut manipuler les point avec un dragg en utilisant mouseDragged() sur le JPanel qui représente le point.de la méme facon pour tous les points.

  6. #6
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par slim_java Voir le message
    malgré la transparence ,il va avoir la barre de titre opaque et c'est gainant.
    Quelle barre de titre? Sur un JPanel???
    J'ai fait un test avec deux layers, pas de barre de titre (ce qui est plutôt normal...)

    Citation Envoyé par slim_java Voir le message
    ce n'est pas clair mais si j'ai bien compris
    Toi non plus? Ah bah ça ne vient pas que de moi alors!

    Citation Envoyé par slim_java Voir le message
    je propose ,de mettre ton image dans un Jpanel et pour chaque point tu crée un jpanel de taille réduite par exemple (5,5)
    Ca va aller si il n'a pas beaucoup de points à afficher, sinon ça risque de ramer sur le sable...
    Sinon on peut toujours rajouter un troisième calque pour le point actif lors de l'interaction(avec le panel 5x5), et laisser tout le reste qui n'est pas modifié sur un autre calque (en prenant soin d'en enlever le point actif... ou en le laissant et en mettant le 3ème calque d'une couleur différente pour bien voir la différence...)
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  7. #7
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut
    Alors voila.
    L'histoire des jPanel de 5X5, je pense que c'est une des solution. Toutefois avec plus de 3000 points ou plus (je parle du cas d'une grande utilisation sur plus de 3 ans, du logiciel), je me demande si cela ne va pas être plus lourd à gérer.

    Ceci dit, il faut bien commencer en quelque part.

    Moi je pense vraiment à virtualisé la chose. C qui reviendrais à faire ceci.
    Charger l'image dans la classe
    Adjoindre chaque points par une méthode surcharger (Notamment pour les popup-menu)
    Afficher le résultat virtualisé tout en laissant les points utilisable sur "event".

    Question, cette fois: Comment charger une image? (je parle d'un début de code, je ne demande pas tout fait) que je puisse essayer de comprendre et de voir jusqu'où je puis aller seul)

    Une piste?
    Cordialement.

  8. #8
    Expert confirmé
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Points : 4 539
    Points
    4 539
    Par défaut
    Citation Envoyé par plegat Voir le message
    Quelle barre de titre? Sur un JPanel???
    J'ai fait un test avec deux layers, pas de barre de titre (ce qui est plutôt normal...)
    j'ai cru que tu parlais de JInternalFrame lorsque j'ai vu le mot "layer".j'étais pas attentif que c'était un JLayeredPane... ou sont mes lunettes

  9. #9
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut
    Ce n'est pas grave slim_java, on fait tous des erreurs

  10. #10
    Expert confirmé
    Avatar de slim_java
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2008
    Messages
    2 272
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2008
    Messages : 2 272
    Points : 4 539
    Points
    4 539
    Par défaut
    Citation Envoyé par Microbulle Voir le message
    Comment charger une image? .
    voila une version avec les BufferedImage

    BufferedImage image = ImageIO.read(new File("path"));
    (pano.getGraphics()).drawImage(...............);

  11. #11
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut
    Voila ce que j'ai essayer de faire:
    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
     
    package mb.gmap;
     
    import java.io.File;
    import java.io.IOException;
    import javax.imageio.ImageIO;
    import java.awt.image.BufferedImage;
     
    public class GestionCarte {
        /*
         * Constructeur de la classe GestionDossier
         * -
         * */
        //public GestionCarte() {
            //Pour le moment vide
        //}
     
        public void affichageCarte() throws IOException {
            //BufferedImage image = ImageIO.read(new File("path"));
            //(pano.getGraphics()).drawImage(...............);
     
     
            BufferedImage Carte = ImageIO.read(new File("D:\\A surveiller\\plan-vierge.png"));
     
        }
    }
    Dans mon programme, en swing bien sure, j'ai donc ceci:
    Form Form1
    JFrame
    jTabbedPane1
    jPanel1
    Donc je me dit que je devrais appeler la classe d'abord, lui demander de charger l'image, au retour (C'est ça que je ne comprend pas, j'ai pas de return) appliquer le travail de la classe dans le jPanel1

    Comment je puis modifier pour y accéder ?

    Cordialement.

  12. #12
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par Microbulle Voir le message
    L'histoire des jPanel de 5X5, je pense que c'est une des solution. Toutefois avec plus de 3000 points ou plus (je parle du cas d'une grande utilisation sur plus de 3 ans, du logiciel), je me demande si cela ne va pas être plus lourd à gérer.
    A gérer, non... à afficher oui, il y a des chances (ça dépend de ta machine)

    Citation Envoyé par Microbulle Voir le message
    Moi je pense vraiment à virtualisé la chose. C qui reviendrais à faire ceci.
    Charger l'image dans la classe
    Adjoindre chaque points par une méthode surcharger (Notamment pour les popup-menu)
    Afficher le résultat virtualisé tout en laissant les points utilisable sur "event".
    Avec autant de points, je reste sur ma première impression. Tout mettre dans une image, et gérer les points en interne dans une classe gérant la map de points.
    On peut mettre un listener sur le panel de la map points, ce qui permet de récupérer les évènements. A partir des coordonnées cliquées sur le panel, on va sélectionner le point correspondant, et on agit en conséquence (popup, modif, etc).
    A mon avis, ça sera plus léger côté mémoire et graphisme...

    Parce 3000 points... 3000 panels... j'ai un peu de mal à voir passer ça...
    J'imagine par contre que ce n'est pas 3000 points simultanés? C'est sur ta carte complète? Donc il y en aura moins à l'affichage en même temps. C'est ça?

    Citation Envoyé par Microbulle Voir le message
    Comment je puis modifier pour y accéder ?
    Met un "getter", en passant ton image en attribut d'objet (attention, fait vite fait, à vérifier):

    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
     
    public class GestionCarte {
     
         BufferedImage carte;
     
        /*
         * Constructeur de la classe GestionDossier
         * -
         * */
        //public GestionCarte() {
            //Pour le moment vide
        //}
     
        public void affichageCarte() throws IOException {
            //BufferedImage image = ImageIO.read(new File("path"));
            //(pano.getGraphics()).drawImage(...............);
     
            carte = ImageIO.read(new File("D:\\A surveiller\\plan-vierge.png"));
     
        }
     
        public BufferedImage getImage() {
            return this.carte;
        }
     
    }
    Attention, par convention, pas de majuscule aux attributs (pour les différencier des noms de classes).
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  13. #13
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 641
    Points
    7 641
    Par défaut
    [edit] texte intégré dans ton précédent, post à supprimer
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  14. #14
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut
    Citation Envoyé par plegat Voir le message
    A partir des coordonnées cliquées sur le panel, on va sélectionner le point correspondant, et on agit en conséquence (popup, modif, etc). ça?
    En fait je ne pourrais pas faire ainsi
    Car j'ai besoin d'afficher des indications si la souris reste plus de 10s au dessus d'un points sans clic. Une sorte de "hint" du point avec toute les infos et si click alors la on a un "event" que l'on gère comme tel.

    Quand au 3000 points c'est vrai que cela parait beaucoup, mais qui peut le plus, peut le moins.

    Cordialement.

  15. #15
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par Microbulle Voir le message
    En fait je ne pourrais pas faire ainsi
    Car j'ai besoin d'afficher des indications si la souris reste plus de 10s au dessus d'un points sans clic. Une sorte de "hint" du point avec toute les infos et si click alors la on a un "event" que l'on gère comme tel.
    Et?
    Ou est la différence entre lancer une action si on reste dix secondes au-dessus d'un panel 5x5 et lancer une action si on reste dix secondes au-dessus d'un panel 640x400?
    Aucune...
    Enfin presque. Dans le second cas il faut aller voir si on est au-dessus d'un point ou pas. Mais au lieu d'avoir 3000 points/panel/listener/popup, tu n'en as qu'un seul.

    Enfin, tu verras bien à l'usage... Si la première méthode ne fonctionne pas (ou mal), tu auras toujours celle-là.
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  16. #16
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut
    Effectivement ca peut être une solution
    Bien vue

    En fait je ne voyais pas ou tu voulais en venir. Ça me semble être la solution. Toutefois, ceci me pose une nouvelle question.
    Si je clique pour changer un point de place, il faudrait que je m'y prenne comment ?

    Cordialement.

  17. #17
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par Microbulle Voir le message
    Si je clique pour changer un point de place, il faudrait que je m'y prenne comment ?
    Bah... ça va dépendre de comment tu veux que ça se passe...
    tu peux:
    - cliquer/glisser/lacher, donc il faudra créer un mini panel temporaire qui suivra le mouvement de la souris
    - cliquer à la nouvelle position sans fioriture graphique, auquel cas il faudra juste mettre à jour les nouvelle coordonnées du point
    - ouvrir un fenêtre où tu rentres les coordonnées en manuel

    Dans tous les cas, tu définis les nouvelles coordonnées du point. Tu nettoies l'image de la map points au niveau de l'ancienne position, tu redessines à l'ancienne position (desfois que le nettoyage aie supprimé du graphisme sur des points adjacents), tu dessines à la nouvelle position, et tu fais un repaint du panel.
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  18. #18
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut
    Citation Envoyé par plegat Voir le message
    Bah... ça va dépendre de comment tu veux que ça se passe...
    tu peux:
    - cliquer/glisser/lacher, donc il faudra créer un mini panel temporaire qui suivra le mouvement de la souris
    - cliquer à la nouvelle position sans fioriture graphique, auquel cas il faudra juste mettre à jour les nouvelle coordonnées du point
    - ouvrir un fenêtre où tu rentres les coordonnées en manuel
    En fait j'aimerais que l'on stipule le mode, via une popup menu au click droit de souris.

    Citation Envoyé par plegat Voir le message
    Dans tous les cas, tu définis les nouvelles coordonnées du point. Tu nettoies l'image de la map points au niveau de l'ancienne position, tu redessines à l'ancienne position (des fois que le nettoyage aie supprimé du graphisme sur des points adjacents), tu dessines à la nouvelle position, et tu fais un repaint du panel.
    Ok mais a ce moment la, vue que mes points viennent, au départ, j'ai le fonctionnement suivant, dans mon application.
    Si clic droit, dans une zone vide
    popup menu avec:
    Créer un point
    Si créer un point, alors on ouvre un fenêtre modale avec
    -nom du point
    -description
    -notes
    Si validation par le bouton Ok -> on stock toute ces données dans un fichier puis on passe la main à la classe qui recharge tous les points ainsi créer sur l'image.

    Si clic droit, sur un point
    popup menu avec:
    Modifier ce point [Nom du point]
    Changer la position du Point [Nom du point]
    -> Drag and drop
    -> Par saisie
    -> Nouveau pointage
    Supprimer ce point
    Liée ce point avec un autre
    Créer un passage
    Transformer le point
    Comme tu peux le voir, j'ai une foule d'action possible et je compte, au fur et à la mesure les implémentés.

    C'est pas une mince à faire et je pense que ça mérite de tenter de le réalisé.
    Cordalement.

  19. #19
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par Microbulle Voir le message
    Comme tu peux le voir, j'ai une foule d'action possible et je compte, au fur et à la mesure les implémentés.
    Le secret de la réussite est bien résumé dans le "au fur et à la mesure"

    Commence par mettre en place le système de détermination du point cliqué. Une fois que ça, ça marchera, le reste se greffera dessus. Au début, essaye de faire rafraichir ton affichage avec un seul point que tu baladeras sur ta map en cliquant simplement à divers endroits sur la carte, sans popup sans rien. Tu cliques quelque part, ça te met le point à cet endroit, sans l'effacer à son ancienne position. Ensuite tu rajoutes la phase d'effacement de la position initiale. Après tu essaies avec plusieurs points. Si ça, ça fonctionne, le reste ne sera que de la saisie ou du graphisme, rien de bien insurmontable
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  20. #20
    Membre régulier Avatar de Caxton
    Homme Profil pro
    Sans
    Inscrit en
    Janvier 2005
    Messages
    586
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Corrèze (Limousin)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Janvier 2005
    Messages : 586
    Points : 123
    Points
    123
    Par défaut
    Ok!
    Mais alors comment je doit m'y prendre pour dire à ma classe, charge virtuellement cette image et place la dans jPanel lui même dans un jTabbedPane1 lui même dans un JFrame qui est en fin de compte dans une
    Form Form1 ?

    Enfin comment je puis déjà coder ceci ?
    Cordialement.

Discussions similaires

  1. [XL-2003] Calcul écart type avec deux conditions
    Par ZHNEE dans le forum Excel
    Réponses: 2
    Dernier message: 07/04/2015, 17h32
  2. Deux listbox liée avec ajout/suppression d'élément
    Par slideveloppeur2006 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 10/10/2008, 16h35
  3. [AJAX] Formulaire avec deux listes dynamiques liées
    Par gotcha5832 dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 26/03/2007, 10h40
  4. [CR] incrementer avec count dans deux etat lieés
    Par souad26 dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 08/11/2004, 17h18

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