0
0
forked from burkart/GUI

Initial sharing of project

This commit is contained in:
2023-04-24 14:50:12 +02:00
commit 37069d78fa
15 changed files with 953 additions and 0 deletions

BIN
._.DS_Store Executable file

Binary file not shown.

71
ARBEIT.java Executable file
View File

@@ -0,0 +1,71 @@
/**
* Baut Graphen auf und fuehrt die Tiefen- und Breitensuche aus.
*
* @author Albert Wiedemann
* @version 1.0
*/
class ARBEIT
{
/**
* Hat hier nichts zu tun.
*/
ARBEIT ()
{
}
void AusfuehrenAutobahn ()
{
GRAPH_MATRIX g;
g = new GRAPH_MATRIX (14);
g. KnotenEinfuegen ("A");
g. KnotenEinfuegen ("F");
g. KnotenEinfuegen ("FD");
g. KnotenEinfuegen ("HO");
g. KnotenEinfuegen ("KA");
g. KnotenEinfuegen ("LI");
g. KnotenEinfuegen ("M");
g. KnotenEinfuegen ("N");
g. KnotenEinfuegen ("PA");
g. KnotenEinfuegen ("R");
g. KnotenEinfuegen ("RO");
g. KnotenEinfuegen ("S");
g. KnotenEinfuegen ("UL");
g. KnotenEinfuegen ("W\u00DC");
g. KanteEinfuegen ("W\u00DC", "N", 104);
g. KanteEinfuegen ("N", "R", 80);
g. KanteEinfuegen ("HO", "W\u00DC", 192);
g. KanteEinfuegen ("HO", "N", 116);
g. KanteEinfuegen ("HO", "R", 166);
g. KanteEinfuegen ("FD", "W\u00DC", 98);
g. KanteEinfuegen ("M", "A", 64);
g. KanteEinfuegen ("M", "N", 163);
g. KanteEinfuegen ("M", "R", 117);
g. KanteEinfuegen ("M", "RO", 60);
g. KanteEinfuegen ("UL", "A", 59);
g. KanteEinfuegen ("UL", "W\u00DC", 165);
g. KanteEinfuegen ("UL", "LI", 126);
g. KanteEinfuegen ("UL", "S", 103);
g. KanteEinfuegen ("S", "KA", 53);
g. KanteEinfuegen ("S", "F", 127);
g. KanteEinfuegen ("R", "PA", 72);
g. KanteEinfuegen ("F", "W\u00DC", 131);
// Formatiertes Ausgeben der Adjazenzmatrix in der Konsole
System. out. println ("Matrix");
g. Ausgeben ();
System. out. println ();
//Tiefensuche mit Startknoten Muenchen
System. out. println ("Tiefensuche");
g. TiefenSuche ("M");
System. out. println ();
//Breitensuche mit Startknoten Muenchen
System. out. println ("Breitensuche");
g. BreitenSuche ("M");
}
}

195
GRAPH_MATRIX.java Executable file
View File

@@ -0,0 +1,195 @@
import Liste. *;
/**
* Verwaltet einen Graphen mit Hilfe einer Adjazenzmatrix.
*
* @author Albert Wiedemann
* @version 1.0
*/
class GRAPH_MATRIX
{
/** Feld mit den Knoten. */
private KNOTEN [] knoten;
/** Adjazenzmatrix */
private int [] [] matrix;
/** Zaehler fuer das Einfuegen der Knoten. */
private int anzahlKnoten;
/** Markierung fuer besuchte Knoten */
private boolean [] besucht;
/** Liste der gerade in Arbeit befindlichen Knoten der Breitensuche */
private LISTE offeneKnoten;
/**
* Legt die Felder mit gegebener Groesse an.
* @param anzahl Anzahl der zu speichernden Knoten
*/
GRAPH_MATRIX (int anzahl)
{
knoten = new KNOTEN [anzahl];
matrix = new int [anzahl] [anzahl];
besucht = new boolean [anzahl];
anzahlKnoten = 0;
}
/**
* Gibt den Index des Knotens oder -1, wenn es keinen Knoten mit diesem Bezeichner gibt.
* @return Knotenindex oder -1
*/
private int KnotenNummerGeben (String bezeichner)
{
for (int i = 0; i < anzahlKnoten; i++)
{
if (knoten [i]. BezeichnungGeben (). equals (bezeichner))
{
return i;
}
}
return -1;
}
/**
* Fuegt einen neuen Knoten mit dem angegebenen Bezeichner ein.
* Falls das Feld voll ist oder der Bezeichner schon existiert, wird nichts eingefuegt.
* @param bezeichner Bezeichner des neuen Knoten
*/
void KnotenEinfuegen (String bezeichner)
{
if ((anzahlKnoten < knoten. length) && (KnotenNummerGeben (bezeichner) == -1))
{
knoten [anzahlKnoten] = new KNOTEN (bezeichner);
matrix [anzahlKnoten] [anzahlKnoten] = 0;
for (int i = 0; i < anzahlKnoten; i++)
{
matrix [i] [anzahlKnoten] = -1;
matrix [anzahlKnoten] [i] = -1;
}
anzahlKnoten += 1;
}
}
/**
* Fuegt eine neue Kante in den Graphen ein.
* @param von Bezeichner des Startknotens
* @param nach Bezeichner des Zielknotens
* @param gewichtung Gewicht der Kante
*/
void KanteEinfuegen (String von, String nach, int gewichtung)
{
int vonNummer;
int nachNummer;
vonNummer = KnotenNummerGeben (von);
nachNummer = KnotenNummerGeben (nach);
if ((vonNummer != -1) && (nachNummer != -1) && (vonNummer != nachNummer))
{
matrix [vonNummer] [nachNummer] = gewichtung;
matrix [nachNummer] [vonNummer] = gewichtung;
}
}
/**
* Gibt die Adjazenzmatrix aus.
*/
void Ausgeben ()
{
int breite = 4;
String fueller = " ";
System. out. print (fueller);
for (int i = 0; i < anzahlKnoten; i++)
{
System. out. print (knoten [i]. BezFormatGeben (breite));
}
System. out. println ();
for (int zeile = 0; zeile < anzahlKnoten; zeile++)
{
System. out. print (knoten [zeile]. BezFormatGeben (breite));
for (int spalte = 0; spalte < anzahlKnoten; spalte++)
{
System. out. print ((matrix [zeile] [spalte] + fueller). substring (0, breite));
}
System. out. println ();
}
}
/**
* Erledigt die Aufgabe, einen Knoten zu besuchen.
* @param knotenNummer der zu besuchende Knoten
*/
private void Besuchen (int knotenNummer)
{
besucht [knotenNummer] = true;
System. out. print (knoten [knotenNummer]. BezeichnungGeben () + "; ");
for (int abzweigNummer = 0; abzweigNummer < anzahlKnoten; abzweigNummer ++)
{
if ((matrix [knotenNummer] [abzweigNummer] > 0) && (! besucht [abzweigNummer]))
{
Besuchen (abzweigNummer);
}
}
System. out. println (knoten [knotenNummer]. BezeichnungGeben () + "(fertig);");
}
/**
* Rahmen fuer die Tiefensuche.
* @param startKnoten Bezeichner des Startknotens
*/
void TiefenSuche (String startKnoten)
{
int startNummer;
startNummer = KnotenNummerGeben (startKnoten);
if (startNummer != -1)
{
for (int i = 0; i < anzahlKnoten; i++)
{
besucht [i] = false;
}
Besuchen (startNummer);
}
}
/**
* Breitensuche.
* @param startKnoten Bezeichner des Startknotens
*/
void BreitenSuche (String startKnoten)
{
int startNummer;
int aktKnoten;
KNOTENINFO info;
startNummer = KnotenNummerGeben (startKnoten);
if (startNummer != -1)
{
for (int i = 0; i < anzahlKnoten; i++)
{
besucht [i] = false;
}
offeneKnoten = new LISTE ();
aktKnoten = startNummer;
do
{
System. out. println (knoten [aktKnoten]. BezeichnungGeben ());
besucht [aktKnoten] = true;
for (int k = 0; k < anzahlKnoten; k++)
{
info = new KNOTENINFO (k);
if ((matrix [aktKnoten] [k] > 0) && (! besucht [k]) && (! offeneKnoten. Enthaelt (info)))
{
offeneKnoten. HintenEinfuegen (info);
}
}
info = (KNOTENINFO) offeneKnoten. AnfangEntfernen ();
if (info != null)
{
aktKnoten = info. KnotennummerGeben ();
}
else
{
aktKnoten = -1;
}
} while (aktKnoten >= 0);
}
}
}

43
KNOTEN.java Executable file
View File

@@ -0,0 +1,43 @@
/**
* Verwaltet einen Knoten des Graphen.
*
* @author Albert Wiedemann
* @version 1.0
*/
class KNOTEN
{
/** Bezeichnung des Knoten */
private String bezeichnung;
/**
* Legt den Bezeichner fest.
* @param bezeichnung die Bezeichnugn des Knoten
*/
KNOTEN (String bezeichnung)
{
this. bezeichnung = bezeichnung;
}
/**
* Meldet die Bezeichnung des Knotens.
* @return Bezeichnung
*/
String BezeichnungGeben ()
{
return bezeichnung;
}
/**
* Meldet die Bezeichnung des Knotens als String gegebener Laenge.
* @param laenge L&auml;nge der Ausgabe
* @return Bezeichnung
*/
String BezFormatGeben (int laenge)
{
return (bezeichnung + " "). substring (0, laenge);
}
}

39
KNOTENINFO.java Executable file
View File

@@ -0,0 +1,39 @@
/**
* Knoteninformation fuer die Listenverwaltung.
*
* @author Albert Wiedemann
* @version 1.0
*/
class KNOTENINFO implements Liste. DATENELEMENT
{
private int knotenNummer;
/**
* Legt die Information an.
* @param nummer Nummer des Knotens
*/
KNOTENINFO (int nummer)
{
knotenNummer = nummer;
}
/**
* Meldet die Knotennumer.
* @return knotenNummer;
*/
int KnotennummerGeben ()
{
return knotenNummer;
}
/**
* Testet, ob das Datenelemnt den gleichen Schluesselwert hat wie das uebergebene Datenelement.
* @param d zu vergleichendes Datenelement
* return true, wenn die Schluesselwerte gleich sind
*/
public boolean SchluesselIstGleich (Liste. DATENELEMENT d)
{
return knotenNummer == ((KNOTENINFO) d). knotenNummer;
}
}

59
Liste/ABSCHLUSS.java Executable file
View File

@@ -0,0 +1,59 @@
package Liste;
/**
* Abschlusselement der Liste.
*
* @author Albert Wiedemann
* @version 1.0
*/
class ABSCHLUSS extends LISTENELEMENT
{
/**
* Der Konstruktor hat keine Arbeit
*/
ABSCHLUSS ()
{
super (); // Nur zur Dokumentation
}
/**
* Meldet das Datenelement des ersten Knotens zur&uuml;ck
* @return Datenelement des ersten Knotens
*/
DATENELEMENT AnfangGeben ()
{
return null;
}
/**
* F&uuml;gt ein neues Datenelement am Ende der Liste an.
* @param daten das neue Datenelement
*/
LISTENELEMENT HintenEinfuegen (DATENELEMENT daten)
{
return new KNOTEN (daten, this);
}
/**
* Entfernt den Knoten mit dem angegebenen Element aus der Liste.
* @param d_raus das zu l&ouml;schende Datenelement.
* @return (neuer) Nachfolger
*/
LISTENELEMENT KnotenEntfernen (DATENELEMENT d_raus)
{
return this;
}
/**
* Meldet, ob die Liste ein Datenelement mit dem angegebenen Schl&uuml;ssel enth&auml;lt.
* @param d Datenelement mit den zu suchenden Schl&uuml;sselwert
* @return true, wenn das Datenelement gefunden wurde
*/
boolean Enthaelt (DATENELEMENT d)
{
return false;
}
}

19
Liste/DATENELEMENT.java Executable file
View File

@@ -0,0 +1,19 @@
package Liste;
/**
* Beschreibt das in der Warteschlange verwaltete Datenelement.
*
* @author Albert Wiedemann
* @version 1.0
*/
public interface DATENELEMENT
{
/**
* Testet, ob das Datenelemnt den gleichen Schl&uuml;sselwert hat wie das &uuml;bergebene Datenelement.
* @param d zu vergleichendes Datenelement
* return true, wernn dei Schl&uuml;sselwerte gleich sind
*/
boolean SchluesselIstGleich (DATENELEMENT d);
}

81
Liste/KNOTEN.java Executable file
View File

@@ -0,0 +1,81 @@
package Liste;
/**
* Verwaltet einen Knoten der Warteschlange.
*
* @author Albert Wiedemann
* @version 1.0
*/
class KNOTEN extends LISTENELEMENT
{
/** Referenz auf den Nachfolger */
private LISTENELEMENT nachfolger;
/** Referenz auf das verwaltete Datenelement */
private DATENELEMENT daten;
/**
* Legt einen Knoten mit angegebenen Nachfolger und angegebenem Datenelement an.
* @param daten das verwaltete Datenelement.
* @param nachfolger der Nachfolger des Knotens
*/
KNOTEN (DATENELEMENT daten, LISTENELEMENT nachfolger)
{
this. daten = daten;
this. nachfolger = nachfolger;
}
/**
* Meldet das Datenelement des ersten Knotens zur&uuml;ck
* @return Datenelement des ersten Knotens
*/
DATENELEMENT AnfangGeben ()
{
return daten;
}
/**
* F&uuml;gt ein neues Datenelement am Ende der Liste an.
* @param daten das neue Datenelement
*/
LISTENELEMENT HintenEinfuegen (DATENELEMENT daten)
{
nachfolger = nachfolger. HintenEinfuegen (daten);
return this;
}
/**
* Entfernt den Knoten mit dem angegebenen Element aus der Liste.
* @param d_raus das zu l&ouml;schende Datenelement.
* @return (neuer) Nachfolger
*/
LISTENELEMENT KnotenEntfernen (DATENELEMENT d_raus)
{
if (daten == d_raus)
{
return nachfolger;
}
else
{
nachfolger = nachfolger. KnotenEntfernen (d_raus);
return this;
}
}
/**
* Meldet, ob die Liste ein Datenelement mit dem angegebenen Schl&uuml;ssel enth&auml;lt.
* @param d Datenelement mit den zu suchenden Schl&uuml;sselwert
* @return true, wenn das Datenelement gefunden wurde
*/
boolean Enthaelt (DATENELEMENT d)
{
if (daten. SchluesselIstGleich (d))
{
return true;
}
else
{
return nachfolger. Enthaelt (d);
}
}
}

56
Liste/LISTE.java Executable file
View File

@@ -0,0 +1,56 @@
package Liste;
/**
* Verwaltet eine Liste von Datenelementen
*
* @author Albert Wiedemann
* @version 1.0
*/
public class LISTE
{
/** Referenz auf den ersten Knoten der Liste */
private LISTENELEMENT anfang;
/**
* Legt eine leere Liste an.
*/
public LISTE ()
{
anfang = new ABSCHLUSS ();
}
/**
* F&uuml;gt ein neues Datenelement am Ende der Liste an.
* @param daten das neue Datenelement
*/
public void HintenEinfuegen (DATENELEMENT daten)
{
anfang = anfang. HintenEinfuegen (daten);
}
/**
* Entfernt das erste Datenelement aus der Warteschlange.
* @return erstes Datenelement
*/
public DATENELEMENT AnfangEntfernen ()
{
DATENELEMENT resultat;
resultat = anfang. AnfangGeben ();
if (resultat != null)
{
anfang = anfang. KnotenEntfernen (resultat);
}
return resultat;
}
/**
* Meldet, ob die Liste ein Datenelement mit dem angegebenen Schl&uuml;ssel enth&auml;lt.
* @param d Datenelement mit den zu suchenden Schl&uuml;sselwert
* @return true, wenn das Datenelement gefunden wurde
*/
public boolean Enthaelt (DATENELEMENT d)
{
return anfang. Enthaelt (d);
}
}

40
Liste/LISTENELEMENT.java Executable file
View File

@@ -0,0 +1,40 @@
package Liste;
/**
* Verwaltet ein allgemeines Element der Warteschlange.
*
* @author Albert Wiedemann
* @version 1.0
*/
abstract class LISTENELEMENT
{
/**
* Meldet das Datenelement des ersten Knotens zur&uuml;ck
* @return Datenelement des ersten Knotens
*/
abstract DATENELEMENT AnfangGeben ();
/**
* F&uuml;gt ein neues Datenelement am Ende der Liste an.
* @param daten das neue Datenelement
*/
abstract LISTENELEMENT HintenEinfuegen (DATENELEMENT daten);
/**
* Entfernt den Knoten mit dem angegebenen Element aus der Liste.
* @param d_raus das zu l&ouml;schende Datenelement.
* @return (neuer) Nachfolger
*/
abstract LISTENELEMENT KnotenEntfernen (DATENELEMENT d_raus);
/**
* Meldet, ob die Liste ein Datenelement mit dem angegebenen Schl&uuml;ssel enth&auml;lt.
* @param d Datenelement mit den zu suchenden Schl&uuml;sselwert
* @return true, wenn das Datenelement gefunden wurde
*/
abstract boolean Enthaelt (DATENELEMENT d);
}

97
Liste/bluej.pkg Executable file
View File

@@ -0,0 +1,97 @@
#BlueJ package file
dependency1.from=LISTENELEMENT
dependency1.to=DATENELEMENT
dependency1.type=UsesDependency
dependency10.from=KNOTEN
dependency10.to=ABSCHLUSS
dependency10.type=UsesDependency
dependency2.from=ABSCHLUSS
dependency2.to=DATENELEMENT
dependency2.type=UsesDependency
dependency3.from=ABSCHLUSS
dependency3.to=KNOTEN
dependency3.type=UsesDependency
dependency4.from=LISTE
dependency4.to=DATENELEMENT
dependency4.type=UsesDependency
dependency5.from=LISTE
dependency5.to=LISTENELEMENT
dependency5.type=UsesDependency
dependency6.from=LISTE
dependency6.to=ABSCHLUSS
dependency6.type=UsesDependency
dependency7.from=KNOTEN
dependency7.to=DATENELEMENT
dependency7.type=UsesDependency
dependency8.from=ABSCHLUSS
dependency8.to=LISTENELEMENT
dependency8.type=UsesDependency
dependency9.from=KNOTEN
dependency9.to=LISTENELEMENT
dependency9.type=UsesDependency
package.editor.height=400
package.editor.width=560
package.editor.x=596
package.editor.y=159
package.numDependencies=10
package.numTargets=5
package.showExtends=true
package.showUses=true
target1.editor.height=700
target1.editor.width=900
target1.editor.x=0
target1.editor.y=22
target1.height=50
target1.name=DATENELEMENT
target1.naviview.expanded=true
target1.showInterface=false
target1.type=InterfaceTarget
target1.width=120
target1.x=100
target1.y=300
target2.editor.height=700
target2.editor.width=900
target2.editor.x=0
target2.editor.y=22
target2.height=50
target2.name=LISTENELEMENT
target2.naviview.expanded=true
target2.showInterface=false
target2.type=AbstractTarget
target2.width=120
target2.x=190
target2.y=150
target3.editor.height=700
target3.editor.width=900
target3.editor.x=0
target3.editor.y=22
target3.height=50
target3.name=ABSCHLUSS
target3.showInterface=false
target3.type=ClassTarget
target3.width=100
target3.x=340
target3.y=70
target4.editor.height=700
target4.editor.width=900
target4.editor.x=0
target4.editor.y=22
target4.height=50
target4.name=LISTE
target4.naviview.expanded=true
target4.showInterface=false
target4.type=ClassTarget
target4.width=80
target4.x=10
target4.y=210
target5.editor.height=700
target5.editor.width=900
target5.editor.x=0
target5.editor.y=22
target5.height=50
target5.name=KNOTEN
target5.showInterface=false
target5.type=ClassTarget
target5.width=80
target5.x=440
target5.y=250

97
Liste/package.bluej Executable file
View File

@@ -0,0 +1,97 @@
#BlueJ package file
dependency1.from=LISTENELEMENT
dependency1.to=DATENELEMENT
dependency1.type=UsesDependency
dependency10.from=KNOTEN
dependency10.to=ABSCHLUSS
dependency10.type=UsesDependency
dependency2.from=ABSCHLUSS
dependency2.to=DATENELEMENT
dependency2.type=UsesDependency
dependency3.from=ABSCHLUSS
dependency3.to=KNOTEN
dependency3.type=UsesDependency
dependency4.from=LISTE
dependency4.to=DATENELEMENT
dependency4.type=UsesDependency
dependency5.from=LISTE
dependency5.to=LISTENELEMENT
dependency5.type=UsesDependency
dependency6.from=LISTE
dependency6.to=ABSCHLUSS
dependency6.type=UsesDependency
dependency7.from=KNOTEN
dependency7.to=DATENELEMENT
dependency7.type=UsesDependency
dependency8.from=ABSCHLUSS
dependency8.to=LISTENELEMENT
dependency8.type=UsesDependency
dependency9.from=KNOTEN
dependency9.to=LISTENELEMENT
dependency9.type=UsesDependency
package.editor.height=400
package.editor.width=560
package.editor.x=596
package.editor.y=159
package.numDependencies=10
package.numTargets=5
package.showExtends=true
package.showUses=true
target1.editor.height=700
target1.editor.width=900
target1.editor.x=0
target1.editor.y=22
target1.height=50
target1.name=DATENELEMENT
target1.naviview.expanded=true
target1.showInterface=false
target1.type=InterfaceTarget
target1.width=120
target1.x=100
target1.y=300
target2.editor.height=700
target2.editor.width=900
target2.editor.x=0
target2.editor.y=22
target2.height=50
target2.name=LISTENELEMENT
target2.naviview.expanded=true
target2.showInterface=false
target2.type=AbstractTarget
target2.width=120
target2.x=190
target2.y=150
target3.editor.height=700
target3.editor.width=900
target3.editor.x=0
target3.editor.y=22
target3.height=50
target3.name=ABSCHLUSS
target3.showInterface=false
target3.type=ClassTarget
target3.width=100
target3.x=340
target3.y=70
target4.editor.height=700
target4.editor.width=900
target4.editor.x=0
target4.editor.y=22
target4.height=50
target4.name=LISTE
target4.naviview.expanded=true
target4.showInterface=false
target4.type=ClassTarget
target4.width=80
target4.x=10
target4.y=210
target5.editor.height=700
target5.editor.width=900
target5.editor.x=0
target5.editor.y=22
target5.height=50
target5.name=KNOTEN
target5.showInterface=false
target5.type=ClassTarget
target5.width=80
target5.x=440
target5.y=250

12
README.TXT Executable file
View File

@@ -0,0 +1,12 @@
------------------------------------------------------------------------
This is the project README file. Here, you should describe your project.
Tell the reader (someone who does not know anything about this project)
all he/she needs to know. The comments should usually include at least:
------------------------------------------------------------------------
PROJECT TITLE:
PURPOSE OF PROJECT:
VERSION or DATE:
HOW TO START THIS PROJECT:
AUTHORS:
USER INSTRUCTIONS:

72
bluej.pkg Executable file
View File

@@ -0,0 +1,72 @@
#BlueJ package file
dependency1.from=ARBEIT
dependency1.to=GRAPH_MATRIX
dependency1.type=UsesDependency
dependency2.from=GRAPH_MATRIX
dependency2.to=KNOTEN
dependency2.type=UsesDependency
dependency3.from=GRAPH_MATRIX
dependency3.to=KNOTENINFO
dependency3.type=UsesDependency
editor.fx.0.height=0
editor.fx.0.width=0
editor.fx.0.x=0
editor.fx.0.y=0
objectbench.height=93
objectbench.width=776
package.divider.horizontal=0.6
package.divider.vertical=0.8
package.editor.height=393
package.editor.width=649
package.editor.x=97
package.editor.y=99
package.frame.height=600
package.frame.width=800
package.numDependencies=3
package.numTargets=5
package.showExtends=true
package.showUses=true
project.charset=windows-1252
readme.height=60
readme.name=@README
readme.width=49
readme.x=10
readme.y=10
target1.height=50
target1.name=GRAPH_MATRIX
target1.naviview.expanded=true
target1.showInterface=false
target1.type=ClassTarget
target1.width=140
target1.x=70
target1.y=140
target2.height=50
target2.name=ARBEIT
target2.naviview.expanded=true
target2.showInterface=false
target2.type=ClassTarget
target2.width=80
target2.x=290
target2.y=220
target3.height=62
target3.name=Liste
target3.type=PackageTarget
target3.width=80
target3.x=60
target3.y=10
target4.height=50
target4.name=KNOTEN
target4.naviview.expanded=false
target4.showInterface=false
target4.type=ClassTarget
target4.width=90
target4.x=330
target4.y=80
target5.height=50
target5.name=KNOTENINFO
target5.naviview.expanded=true
target5.showInterface=false
target5.type=ClassTarget
target5.width=120
target5.x=190
target5.y=300

72
package.bluej Executable file
View File

@@ -0,0 +1,72 @@
#BlueJ package file
dependency1.from=ARBEIT
dependency1.to=GRAPH_MATRIX
dependency1.type=UsesDependency
dependency2.from=GRAPH_MATRIX
dependency2.to=KNOTEN
dependency2.type=UsesDependency
dependency3.from=GRAPH_MATRIX
dependency3.to=KNOTENINFO
dependency3.type=UsesDependency
editor.fx.0.height=0
editor.fx.0.width=0
editor.fx.0.x=0
editor.fx.0.y=0
objectbench.height=93
objectbench.width=776
package.divider.horizontal=0.6
package.divider.vertical=0.8
package.editor.height=393
package.editor.width=649
package.editor.x=97
package.editor.y=99
package.frame.height=600
package.frame.width=800
package.numDependencies=3
package.numTargets=5
package.showExtends=true
package.showUses=true
project.charset=windows-1252
readme.height=60
readme.name=@README
readme.width=49
readme.x=10
readme.y=10
target1.height=50
target1.name=GRAPH_MATRIX
target1.naviview.expanded=true
target1.showInterface=false
target1.type=ClassTarget
target1.width=140
target1.x=70
target1.y=140
target2.height=50
target2.name=ARBEIT
target2.naviview.expanded=true
target2.showInterface=false
target2.type=ClassTarget
target2.width=80
target2.x=290
target2.y=220
target3.height=62
target3.name=Liste
target3.type=PackageTarget
target3.width=80
target3.x=60
target3.y=10
target4.height=50
target4.name=KNOTEN
target4.naviview.expanded=false
target4.showInterface=false
target4.type=ClassTarget
target4.width=90
target4.x=330
target4.y=80
target5.height=50
target5.name=KNOTENINFO
target5.naviview.expanded=true
target5.showInterface=false
target5.type=ClassTarget
target5.width=120
target5.x=190
target5.y=300