Package graph
Class GraphPlotter
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- graph.GraphPlotter
-
- All Implemented Interfaces:
java.awt.image.ImageObserver
,java.awt.MenuContainer
,java.io.Serializable
,javax.accessibility.Accessible
public class GraphPlotter extends javax.swing.JPanel
Der GraphPlotter ist das Herzstueck der Visualisierung und dient als Schnittstelle zu jgraphx. Hier werden Methoden zur Verfügung gestellt, die: - Knoten und Kanten färben - diese selektieren - Knoten und Kanten erstellen und entfernen (beides sowohl graphisch als auch in der Adjazenzliste) - und die Codierung als csv-Datei übernehmen.- Version:
- 11.11.2015 (v5.3)
- Author:
- Dirk Zechnall
- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description protected graph.Graph
graph
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
Constructor Summary
Constructors Constructor Description GraphPlotter()
Der Konstruktor legt sowohl Einstellungen des mxGraphen (Drag&Drop, Editable, ...) als auch des Graphen (gewichtet, gerichtet, ...) fest.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
ausgabe()
Gibt die String-Repraesentation des GraphPlotters auf der Konsole aus.boolean
csvDateiEinlesen(java.nio.file.Path dateiName)
Eine CSV-Datei als Liste wird eingelesen (geoeffnet).boolean
csvDateiEinlesenMatrix(java.nio.file.Path dateiName, int pos)
Eine CSV-Datei als Matrix wird eingelesen (geoeffnet).java.lang.String
getBildDatei()
Gibt den Bilddateinamen aus.graph.Graph
getGraph()
Gibt den Graphen zurueck.com.mxgraph.swing.mxGraphComponent
getGraphComponent()
Gibt die MXGraph-Component aus.com.mxgraph.view.mxGraph
getMXGraph()
Gibt den MXGraphen aus.graph.Kante
getSelectedKante()
Gibt das selektierte Kantenobjekt zurueck.graph.Knoten
getSelectedKnoten()
Gibt das selektierte Knotenobjekt zurueck.java.util.ArrayList<graph.Knoten>
getSelectedKnotenListe()
Gibt die selektierte KnotenobjektListe (als Array) zurueck.void
paint(java.awt.Graphics g)
void
setBildAnzeigen(boolean sichtbar)
Stellt ein, ob das Bild angezeigt wirdvoid
setBildDatei(java.lang.String dateiName)
Legt den Bilddateinamen fest.void
setFarben(java.lang.String[] farben)
Setzt die Farben, die für die Colorierung der Knoten und Kanten verwendet werden.void
setGraphComponent(com.mxgraph.swing.mxGraphComponent graphComponent)
Setzt die MXGraph-Component.void
setWerteVonKnotenAnzeigen(boolean sichtbar)
java.lang.String
toString()
Ueberschreibt die Methode toString.boolean
updateMxGraph()
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, list, list, paintComponents, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, hasFocus, imageUpdate, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, list, list, list, paintAll, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Constructor Detail
-
GraphPlotter
public GraphPlotter()
Der Konstruktor legt sowohl Einstellungen des mxGraphen (Drag&Drop, Editable, ...) als auch des Graphen (gewichtet, gerichtet, ...) fest.- Parameters:
boolean
- isDirected Gibt an, ob der Graph gerichtet oder ungerichtet istboolean
- isWeighted Gibt an, ob der Graph gewichtet oder ungewichtet istString
- hintergrundBild Gibt den Namen eines Hintergrundbildes an
-
-
Method Detail
-
updateMxGraph
public boolean updateMxGraph()
-
paint
public void paint(java.awt.Graphics g)
- Overrides:
paint
in classjavax.swing.JComponent
-
getBildDatei
public java.lang.String getBildDatei()
Gibt den Bilddateinamen aus.- Returns:
- Path Name der Bilddatei
-
setBildDatei
public void setBildDatei(java.lang.String dateiName)
Legt den Bilddateinamen fest. Das Bild muss im Ordner images liegen.- Parameters:
String
- dateiName Der DateiName
-
setBildAnzeigen
public void setBildAnzeigen(boolean sichtbar)
Stellt ein, ob das Bild angezeigt wird- Parameters:
boolean
- wird das Bild gezeigt?
-
setWerteVonKnotenAnzeigen
public void setWerteVonKnotenAnzeigen(boolean sichtbar)
-
getGraph
public graph.Graph getGraph()
Gibt den Graphen zurueck.- Returns:
- Graph
-
getSelectedKnoten
public graph.Knoten getSelectedKnoten()
Gibt das selektierte Knotenobjekt zurueck.- Returns:
- Object
-
getSelectedKnotenListe
public java.util.ArrayList<graph.Knoten> getSelectedKnotenListe()
Gibt die selektierte KnotenobjektListe (als Array) zurueck.- Returns:
- Object[]
-
getSelectedKante
public graph.Kante getSelectedKante()
Gibt das selektierte Kantenobjekt zurueck.- Returns:
- Object
-
csvDateiEinlesenMatrix
public boolean csvDateiEinlesenMatrix(java.nio.file.Path dateiName, int pos)
Eine CSV-Datei als Matrix wird eingelesen (geoeffnet).- Parameters:
String
- dateiName Der DateiNameint
- pos Die Position innerhalb der Datei- Returns:
- boolean geklappt (true/false)
-
csvDateiEinlesen
public boolean csvDateiEinlesen(java.nio.file.Path dateiName)
Eine CSV-Datei als Liste wird eingelesen (geoeffnet). Der DateiName wird angegeben.- Parameters:
String
- dateiName Der DateiName- Returns:
- boolean geklappt (true/false)
-
getMXGraph
public com.mxgraph.view.mxGraph getMXGraph()
Gibt den MXGraphen aus.- Returns:
- mxGraph Der MX-Graph
-
getGraphComponent
public com.mxgraph.swing.mxGraphComponent getGraphComponent()
Gibt die MXGraph-Component aus.- Returns:
- mxGraphComponent Die MXGraph-Component
-
setGraphComponent
public void setGraphComponent(com.mxgraph.swing.mxGraphComponent graphComponent)
Setzt die MXGraph-Component.- Parameters:
mxGraphComponent
- graphComponent Die Komponente
-
setFarben
public void setFarben(java.lang.String[] farben)
Setzt die Farben, die für die Colorierung der Knoten und Kanten verwendet werden.- Parameters:
farben
- String-Array mit den Farben (kann "red" usw enthalten oder "#FF0000")
-
toString
public java.lang.String toString()
Ueberschreibt die Methode toString. Eine String-Repraesentation des GraphPlotters wird ausgegeben.- Overrides:
toString
in classjava.awt.Component
- Returns:
- String Die String-Repraesentation des GraphPlotters
-
ausgabe
public void ausgabe()
Gibt die String-Repraesentation des GraphPlotters auf der Konsole aus.
-
-