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

Graphisme Java Discussion :

orientation de edge avec JGraph


Sujet :

Graphisme Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Président
    Inscrit en
    Novembre 2006
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Président

    Informations forums :
    Inscription : Novembre 2006
    Messages : 100
    Par défaut orientation de edge avec JGraph
    bonjour,

    je réalise un graphe avec le JGraph et aussi je fais la liaison entre deux nœuds par une simple ligne. le problème se pose au niveau de l'orientation de edge par exemple orientation par de flèche. Comme faire ?

    merci

  2. #2
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    21
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 21
    Par défaut
    bonjour je vous propose cette exemple simple mais riche qui va t'aidée

    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
     
     
    import java.awt.Color;
    import java.awt.geom.Rectangle2D;
     
    import javax.swing.BorderFactory;
    import javax.swing.JFrame;
    import javax.swing.JScrollPane;
     
    import org.jgraph.JGraph;
    import org.jgraph.graph.DefaultEdge;
    import org.jgraph.graph.DefaultGraphCell;
    import org.jgraph.graph.DefaultGraphModel;
    import org.jgraph.graph.GraphConstants;
    import org.jgraph.graph.GraphModel;
     
    public class HelloWorld {
     
    	public static void main(String[] args) {
     
    		// Construct Model and Graph
    		GraphModel model = new DefaultGraphModel();
    		JGraph graph = new JGraph(model);
     
    		// Control-drag should clone selection
    		graph.setCloneable(true);
     
    		// Enable edit without final RETURN keystroke
    		graph.setInvokesStopCellEditing(true);
     
    		// When over a cell, jump to its default port (we only have one, anyway)
    		graph.setJumpToDefaultPort(true);
     
    		// Insert all three cells in one call, so we need an array to store them
    		DefaultGraphCell[] cells = new DefaultGraphCell[3];
     
    		// Create Hello Vertex
    		cells[0] = createVertex("Hello", 20, 20, 40, 20, null, false);
     
    		// Create World Vertex
    		cells[1] = createVertex("World", 140, 140, 40, 20, Color.ORANGE, true);
     
    		// Create Edge
    		DefaultEdge edge = new DefaultEdge();
    		// Fetch the ports from the new vertices, and connect them with the edge
    		edge.setSource(cells[0].getChildAt(0));
    		edge.setTarget(cells[1].getChildAt(0));
    		cells[2] = edge;
     
    		// Set Arrow Style for edge
    		int arrow = GraphConstants.ARROW_CLASSIC;
    		GraphConstants.setLineEnd(edge.getAttributes(), arrow);
    		GraphConstants.setEndFill(edge.getAttributes(), true);
     
    		// Insert the cells via the cache, so they get selected
    		graph.getGraphLayoutCache().insert(cells);
     
    		// Show in Frame
    		JFrame frame = new JFrame();
    		frame.getContentPane().add(new JScrollPane(graph));
    		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		frame.pack();
    		frame.setVisible(true);
    	}
     
    	public static DefaultGraphCell createVertex(String name, double x,
    			double y, double w, double h, Color bg, boolean raised) {
     
    		// Create vertex with the given name
    		DefaultGraphCell cell = new DefaultGraphCell(name);
     
    		// Set bounds
    		GraphConstants.setBounds(cell.getAttributes(), new Rectangle2D.Double(
    				x, y, w, h));
     
    		// Set fill color
    		if (bg != null) {
    			GraphConstants.setGradientColor(cell.getAttributes(), bg);
    			GraphConstants.setOpaque(cell.getAttributes(), true);
    		}
     
    		// Set raised border
    		if (raised)
    			GraphConstants.setBorder(cell.getAttributes(), BorderFactory
    					.createRaisedBevelBorder());
    		else
    			// Set black border
    			GraphConstants.setBorderColor(cell.getAttributes(), Color.black);
     
    		// Add a Floating Port
    		cell.addPort();
     
    		return cell;
    	}
     
    }

Discussions similaires

  1. Réponses: 0
    Dernier message: 11/12/2008, 16h25
  2. créer un lien dynamique avec JGraph
    Par imenmannou dans le forum 2D
    Réponses: 3
    Dernier message: 03/09/2008, 15h09
  3. [MySQL] Création de tables "orientées code" ou avec l'agèbre relationnelle ?
    Par Neal Morse dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 21/03/2008, 19h17
  4. Réponses: 1
    Dernier message: 13/04/2007, 22h29
  5. [] Datareport.orientation introuvable même avec sp5
    Par khany dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 08/01/2003, 10h06

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