|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--Graph | +--GraphPanel.AutomatenGraph
Erweiterung der Klasse Graph zur speziellen Darstellung von Zustandsübergangsgraphen in endlichen Automaten
Inner classes inherited from class Graph |
Graph.Kante,
Graph.Knoten,
Graph.XKnotenNichtVorhanden |
Field Summary | |
private boolean |
animated
Status der Animation während der Simulation |
(package private) java.awt.Dimension |
dimension
momentane Größe des Graphen |
private java.awt.Graphics |
offgraphics
Hilfsgrafik zur Unterstützung von Drag-n-Drop |
private java.awt.Image |
offscreen
Hilfsgrafik zur Unterstützung von Drag-n-Drop |
private java.awt.Dimension |
offscreensize
Hilfsvariable zur Unterstützung von Drag-n-Drop |
private Graph.Knoten |
selected
momentan ausgewählter Knoten |
Fields inherited from class Graph |
kanten,
knoten |
Constructor Summary | |
GraphPanel.AutomatenGraph()
|
|
GraphPanel.AutomatenGraph(java.awt.Dimension dimension)
richtet einen leeren Graphen mit gegebener Dimenstion ein |
|
GraphPanel.AutomatenGraph(Graph graph,
java.awt.Dimension dimension)
richtet einen Graphen mit gegebener Dimenstion ein |
Method Summary | |
private java.awt.Point |
calcMidPos(java.awt.Point vonpos,
java.awt.Point bispos,
int lenratio)
berechnet einen Punkt auf einer Linie zwischen zwei anderen Punkteb entsprechend eines Teilerverhältnisses |
private int |
dist(java.awt.Point p,
java.awt.Point q)
berechnet den Abstand zwischen zwei Punkten |
protected void |
doCircLayout()
führt die Ausrichtung im Kreis durch |
void |
doCircLayout(boolean dorepaint)
Layout-Algorithmus: Ausrichtung der Knoten im Kreis |
void |
doLayout()
richtet den Graphen aus |
void |
doLayout(boolean dorepaint)
richtet den Graphen aus |
private java.awt.Point |
getCircPosition(int i,
int n)
liefert die Koordinaten eines Knotens bei CircLayout |
java.awt.Dimension |
getSize()
liefert die Größe des Graphen |
boolean |
isAnimated()
liefert den Animationsstatus |
void |
mouseClicked(java.awt.event.MouseEvent e)
|
void |
mouseDragged(java.awt.event.MouseEvent e)
wir verschieben den Knoten |
void |
mouseEntered(java.awt.event.MouseEvent e)
|
void |
mouseExited(java.awt.event.MouseEvent e)
|
void |
mouseMoved(java.awt.event.MouseEvent e)
|
void |
mousePressed(java.awt.event.MouseEvent e)
Aufruf, wenn Maus gedrueckt wird |
void |
mouseReleased(java.awt.event.MouseEvent e)
Wenn der Mouse-Button losgelassen wird |
void |
paint(java.awt.Graphics g)
zeichnet den Graphen |
private void |
paintKante(java.awt.Graphics g,
Graph.Kante kante)
zeichnet eine Kante des Graphen |
private void |
paintKantenBeschriftung(java.awt.Graphics g,
java.awt.Point pos,
java.lang.String text,
boolean hervorgehoben)
Zeichnet die Beschriftung einer Kante |
void |
repaint()
zeichnet den Graphen neu (wird von Simulation ausgerufen) |
void |
setAnimated(boolean animated)
ändert den Animationsstatus |
void |
setDimension(java.awt.Dimension dimension)
ändert die Größe |
void |
update(java.awt.Graphics g)
wir sorgen dafuer, dass es nicht flimmert |
Methods inherited from class Graph |
addKante,
addKnoten,
clone,
getKante,
getKnoten,
kanteHervorheben,
kanteHervorheben,
knotenHervorheben,
knotenHervorheben,
reset,
toString |
Methods inherited from class java.lang.Object |
|
Field Detail |
java.awt.Dimension dimension
private java.awt.Image offscreen
private java.awt.Graphics offgraphics
private java.awt.Dimension offscreensize
private Graph.Knoten selected
private boolean animated
Constructor Detail |
public GraphPanel.AutomatenGraph(java.awt.Dimension dimension)
public GraphPanel.AutomatenGraph(Graph graph, java.awt.Dimension dimension)
public GraphPanel.AutomatenGraph()
Method Detail |
public java.awt.Dimension getSize()
public void setDimension(java.awt.Dimension dimension)
public void setAnimated(boolean animated)
public boolean isAnimated()
public void doLayout(boolean dorepaint)
dorepaint
- Neuzeichnen veranlassenpublic void doLayout()
public void doCircLayout(boolean dorepaint)
private java.awt.Point getCircPosition(int i, int n)
i
- Index des Knoten 0..n-1n
- Anzahl der Knotenprotected void doCircLayout()
private void paintKantenBeschriftung(java.awt.Graphics g, java.awt.Point pos, java.lang.String text, boolean hervorgehoben)
g
- Zeichenobjektpos
- Textursprungtext
- darzustellender Texthervorgehoben
- Kante hervorhebenprivate java.awt.Point calcMidPos(java.awt.Point vonpos, java.awt.Point bispos, int lenratio)
vonpos
- Startpunkt der Liniebispos
- Endpunkt der Linielenration
- Teilerverhältnisprivate void paintKante(java.awt.Graphics g, Graph.Kante kante)
public void paint(java.awt.Graphics g)
public void update(java.awt.Graphics g)
public void repaint()
public void mouseDragged(java.awt.event.MouseEvent e)
public void mouseMoved(java.awt.event.MouseEvent e)
public void mouseClicked(java.awt.event.MouseEvent e)
public void mouseReleased(java.awt.event.MouseEvent e)
private int dist(java.awt.Point p, java.awt.Point q)
p
- Punkt 1p
- Punkt 2public void mousePressed(java.awt.event.MouseEvent e)
public void mouseExited(java.awt.event.MouseEvent e)
public void mouseEntered(java.awt.event.MouseEvent e)
|
|||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |