diff --git a/.gitignore b/.gitignore index 6b468b6..822dbf6 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,3 @@ *.class +*.ctxt +eigeneAlgorithmen/* diff --git a/GraphenTester.ctxt b/GraphenTester.ctxt deleted file mode 100644 index 832f9c0..0000000 --- a/GraphenTester.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=GraphenTester -comment0.text=\n\ Dies\ ist\ die\ Startklasse\ f\u00FCr\ die\ GUI\ des\ Graphentesters\n\ In\ BlueJ\ gibt\ es\ teilweise\ Probleme,\ dass\ die\ Men\u00FCs\ bei\ Mausklick\ nicht\n\ offen\ bleiben.\ Dann\ bitte\ das\ Programm\ \u00FCber\ die\ Main-Funktion\ starten.\n\ \n\ @author\ Dirk\ Zechnall,\ Thomas\ Schaller\n\ @version\ 12.02.2021\ (v6.6)\n -comment1.params=primaryStage -comment1.target=void\ start(javafx.stage.Stage) -comment2.params=args -comment2.target=void\ main(java.lang.String[]) -numComments=3 diff --git a/GraphenTester.java b/GraphenTester.java index 78e4888..99a265b 100644 --- a/GraphenTester.java +++ b/GraphenTester.java @@ -29,6 +29,7 @@ public class GraphenTester extends Application { Image icon = new Image("/view/icon.png"); primaryStage.getIcons().add(icon); primaryStage.setScene(scene); + primaryStage.setTitle("Graphentester"); primaryStage.show(); primaryStage.setOnCloseRequest(e->c.mBeenden(null)); diff --git a/algorithmen/GraphAlgo.ctxt b/algorithmen/GraphAlgo.ctxt deleted file mode 100644 index b1f785c..0000000 --- a/algorithmen/GraphAlgo.ctxt +++ /dev/null @@ -1,44 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo -comment0.text=\n\n\ description\n\n\ @version\ 1.0\ from\ 26.04.2019\n\ @author\ \n -comment1.params= -comment1.target=GraphAlgo() -comment10.params=delay -comment10.target=void\ setSpeed(int) -comment11.params= -comment11.target=void\ run() -comment12.params=k -comment12.target=void\ setStartKnoten(graph.Knoten) -comment13.params= -comment13.target=graph.Knoten\ getStartKnoten() -comment14.params= -comment14.target=void\ fuehreAlgorithmusAus() -comment15.params= -comment15.target=java.lang.String\ getBezeichnung() -comment16.params=s -comment16.target=void\ melde(java.lang.String) -comment17.params=s -comment17.target=void\ info(java.lang.String) -comment18.params= -comment18.target=void\ resetInfo() -comment19.params= -comment19.target=void\ infoIndentMore() -comment2.params=graphPlotter\ hilfe -comment2.target=void\ setGUIElemente(graph.GraphPlotter,\ graph.Hilfe) -comment20.params= -comment20.target=void\ infoIndentLess() -comment3.params=g -comment3.target=void\ setGraph(graph.Graph) -comment4.params= -comment4.target=void\ step() -comment5.params= -comment5.target=boolean\ getWaitforrepaint() -comment6.params=waitforrepaintNeu -comment6.target=void\ setWaitforrepaint(boolean) -comment7.params= -comment7.target=boolean\ getWaitforclick() -comment8.params=waitforclickNeu -comment8.target=void\ setWaitforclick(boolean) -comment9.params=stepping -comment9.target=void\ setStepping(boolean) -numComments=21 diff --git a/algorithmen/GraphAlgo.java b/algorithmen/GraphAlgo.java index e62b804..df3c54b 100644 --- a/algorithmen/GraphAlgo.java +++ b/algorithmen/GraphAlgo.java @@ -8,7 +8,8 @@ import javafx.scene.control.Alert; import javafx.scene.control.Alert.AlertType; import javafx.scene.control.ButtonType; import javafx.application.Platform; - +import javafx.scene.control.TextInputDialog; +import java.util.Optional; /** * @@ -48,7 +49,7 @@ public abstract class GraphAlgo extends Thread { this.hilfe = hilfe; if (hilfe != null) hilfe.setGraphPlotter(gp); } - + public void setGraph(Graph g) { this.g = g; gp = null; @@ -64,8 +65,8 @@ public abstract class GraphAlgo extends Thread { if (hilfe != null) hilfe.setReviewAllowed(true); int i = 0; while((waitforclick && (stepping || i*10 < speed)) && !isInterrupted()){ - Thread.sleep(10); - i++; + Thread.sleep(10); + i++; } if (hilfe != null) hilfe.setReviewAllowed(false); g.setStatus(aktuellerZustand); @@ -140,13 +141,27 @@ public abstract class GraphAlgo extends Thread { public abstract String getBezeichnung(); + public void eingabe() { + Platform.runLater(() -> { + TextInputDialog dialog = new TextInputDialog(); // create an instance + + dialog.setTitle("Title"); + // other formatting etc + + Optional result = dialog.showAndWait(); + // this shows the dialog, waits until it is closed, and stores the result + + + }); + } + public void melde(String s) { info(s); Platform.runLater(() -> { - Alert meldung = new Alert(AlertType.INFORMATION, s, ButtonType.OK); - meldung.setTitle("Information"); - meldung.setHeaderText(null); - meldung.showAndWait(); + Alert meldung = new Alert(AlertType.INFORMATION, s, ButtonType.OK); + meldung.setTitle("Information"); + meldung.setHeaderText(null); + meldung.showAndWait(); }); } @@ -168,5 +183,4 @@ public abstract class GraphAlgo extends Thread { } - } diff --git a/algorithmen/GraphAlgo_BellmanFord.ctxt b/algorithmen/GraphAlgo_BellmanFord.ctxt deleted file mode 100644 index 2677bd3..0000000 --- a/algorithmen/GraphAlgo_BellmanFord.ctxt +++ /dev/null @@ -1,10 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_BellmanFord -comment0.text=\n\ Dieser\ Algorithmus\ findet\ die\ k\u00FCrzesten\ Pfade\ in\ einem\ gewichteten\ Graphen.\n\ Algorithmus\:\ Bellman-Ford\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params=k -comment2.target=java.lang.String\ knoteninfo(graph.Knoten) -comment3.params= -comment3.target=void\ fuehreAlgorithmusAus() -numComments=4 diff --git a/algorithmen/GraphAlgo_Breitensuche.ctxt b/algorithmen/GraphAlgo_Breitensuche.ctxt deleted file mode 100644 index bfe1dc4..0000000 --- a/algorithmen/GraphAlgo_Breitensuche.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_Breitensuche -comment0.text=\n\ Dieser\ Algorithmus\ nummeriert\ alle\ Knoten\ des\ Graphen.\n\ Algorithmus\:\ Breitensuche\ mit\ ToDo-Liste\ (Schlange)\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -numComments=3 diff --git a/algorithmen/GraphAlgo_ColoringBacktracking.ctxt b/algorithmen/GraphAlgo_ColoringBacktracking.ctxt deleted file mode 100644 index e1e75be..0000000 --- a/algorithmen/GraphAlgo_ColoringBacktracking.ctxt +++ /dev/null @@ -1,10 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_ColoringBacktracking -comment0.text=\n\ Dieser\ Algorithmus\ f\u00E4rbt\ einen\ Graphen,\ so\ dass\ keine\ benachbarten\ Knoten\n\ die\ gleiche\ Farbe\ haben\ und\ m\u00F6glichst\ wenige\ Farben\ benutzt\ werden.\n\ Algorithmus\:\ Backtracking\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -comment3.params=benutzteFarben -comment3.target=void\ bestimmeColoring(int) -numComments=4 diff --git a/algorithmen/GraphAlgo_ColoringGreedy.ctxt b/algorithmen/GraphAlgo_ColoringGreedy.ctxt deleted file mode 100644 index 29f1438..0000000 --- a/algorithmen/GraphAlgo_ColoringGreedy.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_ColoringGreedy -comment0.text=\n\ Dieser\ Algorithmus\ f\u00E4rbt\ einen\ Graphen,\ so\ dass\ keine\ benachbarten\ Knoten\n\ die\ gleiche\ Farbe\ haben\ und\ m\u00F6glichst\ wenige\ Farben\ benutzt\ werden.\n\ Algorithmus\:\ N\u00E4herungsl\u00F6sung\ mit\ Greedy-Algorithmus\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -numComments=3 diff --git a/algorithmen/GraphAlgo_ColoringGreedyRandom.ctxt b/algorithmen/GraphAlgo_ColoringGreedyRandom.ctxt deleted file mode 100644 index f033ebf..0000000 --- a/algorithmen/GraphAlgo_ColoringGreedyRandom.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_ColoringGreedyRandom -comment0.text=\n\ Dieser\ Algorithmus\ f\u00E4rbt\ einen\ Graphen,\ so\ dass\ keine\ benachbarten\ Knoten\n\ die\ gleiche\ Farbe\ haben\ und\ m\u00F6glichst\ wenige\ Farben\ benutzt\ werden.\n\ Algorithmus\:\ N\u00E4herungsl\u00F6sung\ mit\ Greedy-Algorithmus\ (Knotenreihenfolge\ zuf\u00E4llig)\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -numComments=3 diff --git a/algorithmen/GraphAlgo_Dijkstra.ctxt b/algorithmen/GraphAlgo_Dijkstra.ctxt deleted file mode 100644 index 31c4d46..0000000 --- a/algorithmen/GraphAlgo_Dijkstra.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_Dijkstra -comment0.text=\n\ Dieser\ Algorithmus\ findet\ die\ k\u00FCrzesten\ Pfade\ in\ einem\ gewichteten\ Graphen.\n\ Algorithmus\:\ Dijkstra\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -numComments=3 diff --git a/algorithmen/GraphAlgo_DominatingSetBacktracking.ctxt b/algorithmen/GraphAlgo_DominatingSetBacktracking.ctxt deleted file mode 100644 index 38a525b..0000000 --- a/algorithmen/GraphAlgo_DominatingSetBacktracking.ctxt +++ /dev/null @@ -1,10 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_DominatingSetBacktracking -comment0.text=\n\ Dieser\ Algorithmus\ bestimmt\ die\ kleinste\ dominierende\ Menge\ in\ einem\ Graphen\n\ und\ bestimmt\ den\ Zeitbedarf.\n\ Algorithmus\:\ Backtracking\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -comment3.params=knoten -comment3.target=void\ bestimmeDominierendeMenge(int) -numComments=4 diff --git a/algorithmen/GraphAlgo_DominatingSetGenetisch.ctxt b/algorithmen/GraphAlgo_DominatingSetGenetisch.ctxt deleted file mode 100644 index bfc3297..0000000 --- a/algorithmen/GraphAlgo_DominatingSetGenetisch.ctxt +++ /dev/null @@ -1,18 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_DominatingSetGenetisch -comment0.text=\n\ Dieser\ Algorithmus\ bestimmt\ die\ kleinste\ dominierende\ Menge\ in\ einem\ Graphen\n\ und\ bestimmt\ den\ Zeitbedarf.\n\ Algorithmus\:\ Genetischer\ Algorithmus\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -comment3.params= -comment3.target=int[]\ erzeugeZufaelligeTeilmenge() -comment4.params=tm1\ tm2 -comment4.target=int[]\ kreuze(int[],\ int[]) -comment5.params=tm -comment5.target=int[]\ mutiere(int[]) -comment6.params=tm -comment6.target=void\ showTeilmenge(int[]) -comment7.params=tm -comment7.target=double\ getBewertung(int[]) -numComments=8 diff --git a/algorithmen/GraphAlgo_DominatingSetGreedy.java b/algorithmen/GraphAlgo_DominatingSetGreedy.java new file mode 100644 index 0000000..b975216 --- /dev/null +++ b/algorithmen/GraphAlgo_DominatingSetGreedy.java @@ -0,0 +1,56 @@ +package algorithmen; + +import java.util.List; +import java.util.ArrayList; +import java.util.Collections; +import java.util.Comparator; +import java.nio.file.*; +import java.util.Random; + +import graph.*; +/** + * Dieser Algorithmus bestimmt die kleinste dominierende Menge in einem Graphen + * und bestimmt den Zeitbedarf. + * Algorithmus: Greedy mit Strategie: + * Nimm den Knoten mit den meisten Nachbarn + * + * @version 1.0 from 10.12.2020 + * @author Thomas Schaller + */ + +public abstract class GraphAlgo_DominatingSetGreedy extends GraphAlgo { + + /** Bestimmt besten Knoten nach Strategie */ + protected abstract Knoten bestimmeBesten(); + + // Anfang Methoden + public void fuehreAlgorithmusAus() { + if (g.getAnzahlKnoten()==0) { + return; + } + List knoten = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht()); + info("Solange es noch nicht überdeckte Knoten gibt, wiederhole..."); + int nr = 1; + while(knoten.size() > 0) { + info("Bestimme "+(nr++)+". hinzuzufügenden Knoten"); + infoIndentMore(); + Knoten bester = bestimmeBesten(); + bester.setMarkiert(true); + bester.setBesucht(false); + info("Markiere diesen Knoten ..."); + List nachbarn = g.getNachbarknoten(bester,kn->!kn.isMarkiert() && !kn.isBesucht()); + for(Knoten k : nachbarn) { + k.setBesucht(true); + } + info("... und setze alle bisher nicht überdeckten Nachbarn auf besucht"); + knoten = g.getAlleKnoten(kn->!kn.isMarkiert() && !kn.isBesucht()); + step(); + infoIndentLess(); + }// end of while + nr--; + melde("Dominierende Menge mit " + nr + " Knoten gefunden."); + + } + + // Ende Methoden +} diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyA.ctxt b/algorithmen/GraphAlgo_DominatingSetGreedyA.ctxt deleted file mode 100644 index 67c1fdf..0000000 --- a/algorithmen/GraphAlgo_DominatingSetGreedyA.ctxt +++ /dev/null @@ -1,11 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_DominatingSetGreedyA -comment0.text=\n\ Dieser\ Algorithmus\ bestimmt\ die\ kleinste\ dominierende\ Menge\ in\ einem\ Graphen\n\ und\ bestimmt\ den\ Zeitbedarf.\n\ Algorithmus\:\ Greedy\ mit\ Strategie\:\n\ \ Nimm\ den\ Knoten\ mit\ den\ meisten\ \ Nachbarn\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=graph.Knoten\ bestimmeBesten() -comment2.text=\ Bestimmt\ besten\ Knoten\ nach\ Strategie\:\n\ \ Nimm\ den\ Knoten\ mit\ den\ meisten\ \ Nachbarn\n -comment3.params= -comment3.target=void\ fuehreAlgorithmusAus() -numComments=4 diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyA.java b/algorithmen/GraphAlgo_DominatingSetGreedyA.java index 7187cf6..c39e18e 100644 --- a/algorithmen/GraphAlgo_DominatingSetGreedyA.java +++ b/algorithmen/GraphAlgo_DominatingSetGreedyA.java @@ -18,7 +18,7 @@ import graph.*; * @author Thomas Schaller */ -public class GraphAlgo_DominatingSetGreedyA extends GraphAlgo { +public class GraphAlgo_DominatingSetGreedyA extends GraphAlgo_DominatingSetGreedy { // Anfang Attribute @@ -29,7 +29,7 @@ public class GraphAlgo_DominatingSetGreedyA extends GraphAlgo { /** Bestimmt besten Knoten nach Strategie: * Nimm den Knoten mit den meisten Nachbarn */ - private Knoten bestimmeBesten() { + public Knoten bestimmeBesten() { List knoten = g.getAlleKnoten(k->!k.isMarkiert()); info("Wiederhole für jeden noch nicht markierten Knoten"); @@ -47,32 +47,5 @@ public class GraphAlgo_DominatingSetGreedyA extends GraphAlgo { return bester; } - // Anfang Methoden - public void fuehreAlgorithmusAus() { - if (g.getAnzahlKnoten()==0) { - return; - } - List knoten = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht()); - info("Solange es noch nicht überdeckte Knoten gibt, wiederhole..."); - int nr = 1; - while(knoten.size() > 0) { - info("Bestimme "+(nr++)+". hinzuzufügenden Knoten"); - infoIndentMore(); - Knoten bester = bestimmeBesten(); - bester.setMarkiert(true); - bester.setBesucht(false); - info("Markiere diesen Knoten ..."); - List nachbarn = g.getNachbarknoten(bester,kn->!kn.isMarkiert() && !kn.isBesucht()); - for(Knoten k : nachbarn) { - k.setBesucht(true); - } - info("... und setze alle bisher nicht überdeckten Nachbarn auf besucht"); - knoten = g.getAlleKnoten(kn->!kn.isMarkiert() && !kn.isBesucht()); - step(); - infoIndentLess(); - }// end of while - - } - // Ende Methoden } diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyB.ctxt b/algorithmen/GraphAlgo_DominatingSetGreedyB.ctxt deleted file mode 100644 index 4481474..0000000 --- a/algorithmen/GraphAlgo_DominatingSetGreedyB.ctxt +++ /dev/null @@ -1,11 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_DominatingSetGreedyB -comment0.text=\n\ Dieser\ Algorithmus\ bestimmt\ die\ kleinste\ dominierende\ Menge\ in\ einem\ Graphen\n\ und\ bestimmt\ den\ Zeitbedarf.\n\ Algorithmus\:\ Greedy\ mit\ Strategie\:\n\ \ Nimm\ den\ Knoten\ mit\ den\ wenigsten\ Nachbarn\ \n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=graph.Knoten\ bestimmeBesten() -comment2.text=\ Bestimmt\ besten\ Knoten\ nach\ Strategie\:\n\ \ Nimm\ den\ Knoten\ mit\ den\ wenigsten\ Nachbarn\n -comment3.params= -comment3.target=void\ fuehreAlgorithmusAus() -numComments=4 diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyB.java b/algorithmen/GraphAlgo_DominatingSetGreedyB.java index 3f0bff9..fbb3ff9 100644 --- a/algorithmen/GraphAlgo_DominatingSetGreedyB.java +++ b/algorithmen/GraphAlgo_DominatingSetGreedyB.java @@ -17,7 +17,7 @@ import graph.*; * @author Thomas Schaller */ -public class GraphAlgo_DominatingSetGreedyB extends GraphAlgo { +public class GraphAlgo_DominatingSetGreedyB extends GraphAlgo_DominatingSetGreedy { // Anfang Attribute @@ -28,7 +28,7 @@ public class GraphAlgo_DominatingSetGreedyB extends GraphAlgo { /** Bestimmt besten Knoten nach Strategie: * Nimm den Knoten mit den wenigsten Nachbarn */ - private Knoten bestimmeBesten() { + protected Knoten bestimmeBesten() { List knoten = g.getAlleKnoten(k->!k.isMarkiert()); info("Wiederhole für jeden noch nicht markierten Knoten"); @@ -46,32 +46,4 @@ public class GraphAlgo_DominatingSetGreedyB extends GraphAlgo { return bester; } - // Anfang Methoden - public void fuehreAlgorithmusAus() { - if (g.getAnzahlKnoten()==0) { - return; - } - List knoten = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht()); - info("Solange es noch nicht überdeckte Knoten gibt, wiederhole..."); - int nr = 1; - while(knoten.size() > 0) { - info("Bestimme "+(nr++)+". hinzuzufügenden Knoten"); - infoIndentMore(); - Knoten bester = bestimmeBesten(); - bester.setMarkiert(true); - bester.setBesucht(false); - info("Markiere diesen Knoten ..."); - List nachbarn = g.getNachbarknoten(bester,kn->!kn.isMarkiert() && !kn.isBesucht()); - for(Knoten k : nachbarn) { - k.setBesucht(true); - } - info("... und setze alle bisher nicht überdeckten Nachbarn auf besucht"); - knoten = g.getAlleKnoten(kn->!kn.isMarkiert() && !kn.isBesucht()); - step(); - infoIndentLess(); - }// end of while - - } - - // Ende Methoden } diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyC.ctxt b/algorithmen/GraphAlgo_DominatingSetGreedyC.ctxt deleted file mode 100644 index 55de86f..0000000 --- a/algorithmen/GraphAlgo_DominatingSetGreedyC.ctxt +++ /dev/null @@ -1,11 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_DominatingSetGreedyC -comment0.text=\n\ Dieser\ Algorithmus\ bestimmt\ die\ kleinste\ dominierende\ Menge\ in\ einem\ Graphen\n\ und\ bestimmt\ den\ Zeitbedarf.\n\ Algorithmus\:\ Greedy\ mit\ Strategie\:\n\ \ Nimm\ den\ Knoten\ mit\ den\ meisten\ \ Nachbarn\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=graph.Knoten\ bestimmeBesten() -comment2.text=\ Bestimmt\ besten\ Knoten\ nach\ Strategie\:\n\ \ Nimm\ den\ Knoten\ mit\ den\ meisten\ \ Nachbarn\n -comment3.params= -comment3.target=void\ fuehreAlgorithmusAus() -numComments=4 diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyC.java b/algorithmen/GraphAlgo_DominatingSetGreedyC.java index 31dda8b..4480857 100644 --- a/algorithmen/GraphAlgo_DominatingSetGreedyC.java +++ b/algorithmen/GraphAlgo_DominatingSetGreedyC.java @@ -18,7 +18,7 @@ import graph.*; * @author Thomas Schaller */ -public class GraphAlgo_DominatingSetGreedyC extends GraphAlgo { +public class GraphAlgo_DominatingSetGreedyC extends GraphAlgo_DominatingSetGreedy { // Anfang Attribute @@ -29,7 +29,7 @@ public class GraphAlgo_DominatingSetGreedyC extends GraphAlgo { /** Bestimmt besten Knoten nach Strategie: * Nimm den Knoten mit den meisten Nachbarn */ - private Knoten bestimmeBesten() { + protected Knoten bestimmeBesten() { List knoten = g.getAlleKnoten(k->!k.isMarkiert()); info("Wiederhole für jeden noch nicht markierten Knoten"); @@ -48,32 +48,5 @@ public class GraphAlgo_DominatingSetGreedyC extends GraphAlgo { return bester; } - // Anfang Methoden - public void fuehreAlgorithmusAus() { - if (g.getAnzahlKnoten()==0) { - return; - } - List knoten = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht()); - info("Solange es noch nicht überdeckte Knoten gibt, wiederhole..."); - int nr = 1; - while(knoten.size() > 0) { - info("Bestimme "+(nr++)+". hinzuzufügenden Knoten"); - infoIndentMore(); - Knoten bester = bestimmeBesten(); - bester.setMarkiert(true); - bester.setBesucht(false); - info("Markiere diesen Knoten ..."); - List nachbarn = g.getNachbarknoten(bester,kn->!kn.isMarkiert() && !kn.isBesucht()); - for(Knoten k : nachbarn) { - k.setBesucht(true); - } - info("... und setze alle bisher nicht überdeckten Nachbarn auf besucht"); - knoten = g.getAlleKnoten(kn->!kn.isMarkiert() && !kn.isBesucht()); - step(); - infoIndentLess(); - }// end of while - - } - - // Ende Methoden + } diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyD.ctxt b/algorithmen/GraphAlgo_DominatingSetGreedyD.ctxt deleted file mode 100644 index 9ead33c..0000000 --- a/algorithmen/GraphAlgo_DominatingSetGreedyD.ctxt +++ /dev/null @@ -1,11 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_DominatingSetGreedyD -comment0.text=\n\ Dieser\ Algorithmus\ bestimmt\ die\ kleinste\ dominierende\ Menge\ in\ einem\ Graphen\n\ und\ bestimmt\ den\ Zeitbedarf.\n\ Algorithmus\:\ Greedy\ mit\ Strategie\:\n\ \ Nimm\ den\ Knoten\ mit\ den\ meisten\ \ Nachbarn\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=graph.Knoten\ bestimmeBesten() -comment2.text=\ Bestimmt\ besten\ Knoten\ nach\ Strategie\:\n\ \ Nimm\ den\ Knoten\ mit\ den\ meisten\ \ Nachbarn\n -comment3.params= -comment3.target=void\ fuehreAlgorithmusAus() -numComments=4 diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyD.java b/algorithmen/GraphAlgo_DominatingSetGreedyD.java index fdb1a3c..534a508 100644 --- a/algorithmen/GraphAlgo_DominatingSetGreedyD.java +++ b/algorithmen/GraphAlgo_DominatingSetGreedyD.java @@ -18,7 +18,7 @@ import graph.*; * @author Thomas Schaller */ -public class GraphAlgo_DominatingSetGreedyD extends GraphAlgo { +public class GraphAlgo_DominatingSetGreedyD extends GraphAlgo_DominatingSetGreedy { // Anfang Attribute @@ -29,7 +29,7 @@ public class GraphAlgo_DominatingSetGreedyD extends GraphAlgo { /** Bestimmt besten Knoten nach Strategie: * Nimm den Knoten mit den meisten Nachbarn */ - private Knoten bestimmeBesten() { + protected Knoten bestimmeBesten() { List knoten = g.getAlleKnoten(k->!k.isMarkiert()); info("Wiederhole für jeden noch nicht markierten Knoten"); @@ -48,32 +48,4 @@ public class GraphAlgo_DominatingSetGreedyD extends GraphAlgo { return bester; } - // Anfang Methoden - public void fuehreAlgorithmusAus() { - if (g.getAnzahlKnoten()==0) { - return; - } - List knoten = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht()); - info("Solange es noch nicht überdeckte Knoten gibt, wiederhole..."); - int nr = 1; - while(knoten.size() > 0) { - info("Bestimme "+(nr++)+". hinzuzufügenden Knoten"); - infoIndentMore(); - Knoten bester = bestimmeBesten(); - bester.setMarkiert(true); - bester.setBesucht(false); - info("Markiere diesen Knoten ..."); - List nachbarn = g.getNachbarknoten(bester,kn->!kn.isMarkiert() && !kn.isBesucht()); - for(Knoten k : nachbarn) { - k.setBesucht(true); - } - info("... und setze alle bisher nicht überdeckten Nachbarn auf besucht"); - knoten = g.getAlleKnoten(kn->!kn.isMarkiert() && !kn.isBesucht()); - step(); - infoIndentLess(); - }// end of while - - } - - // Ende Methoden } diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyE.ctxt b/algorithmen/GraphAlgo_DominatingSetGreedyE.ctxt deleted file mode 100644 index 24131ce..0000000 --- a/algorithmen/GraphAlgo_DominatingSetGreedyE.ctxt +++ /dev/null @@ -1,11 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_DominatingSetGreedyE -comment0.text=\n\ Dieser\ Algorithmus\ bestimmt\ die\ kleinste\ dominierende\ Menge\ in\ einem\ Graphen\n\ und\ bestimmt\ den\ Zeitbedarf.\n\ Algorithmus\:\ Greedy\ mit\ Strategie\:\n\ \ ein\ nicht\ abgedeckten\ Knoten,\ der\ von\ einem\ beliebigen\ schon\ ausgew\u00E4hlten\ Knoten\ die\ Entfernung\ 3\ hat\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=graph.Knoten\ bestimmeBesten() -comment2.text=\ Bestimmt\ besten\ Knoten\ nach\ Strategie\:\n\ \ ein\ nicht\ abgedeckten\ Knoten,\ der\ von\ einem\ beliebigen\ schon\ ausgew\u00E4hlten\ Knoten\ die\ Entfernung\ 3\ hat\n -comment3.params= -comment3.target=void\ fuehreAlgorithmusAus() -numComments=4 diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyE.java b/algorithmen/GraphAlgo_DominatingSetGreedyE.java index 67b250f..f5381d9 100644 --- a/algorithmen/GraphAlgo_DominatingSetGreedyE.java +++ b/algorithmen/GraphAlgo_DominatingSetGreedyE.java @@ -18,7 +18,7 @@ import graph.*; * @author Thomas Schaller */ -public class GraphAlgo_DominatingSetGreedyE extends GraphAlgo { +public class GraphAlgo_DominatingSetGreedyE extends GraphAlgo_DominatingSetGreedy { // Anfang Attribute @@ -30,7 +30,7 @@ public class GraphAlgo_DominatingSetGreedyE extends GraphAlgo { * ein nicht abgedeckten Knoten, der von einem beliebigen schon ausgewählten Knoten die Entfernung 3 hat */ - private Knoten bestimmeBesten() { + protected Knoten bestimmeBesten() { Random r= new Random(); List markierte = g.getAlleKnoten(k->k.isMarkiert() ); @@ -67,32 +67,5 @@ public class GraphAlgo_DominatingSetGreedyE extends GraphAlgo { return bester; } - // Anfang Methoden - public void fuehreAlgorithmusAus() { - if (g.getAnzahlKnoten()==0) { - return; - } - List knoten = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht()); - info("Solange es noch nicht überdeckte Knoten gibt, wiederhole..."); - int nr = 1; - while(knoten.size() > 0) { - info("Bestimme "+(nr++)+". hinzuzufügenden Knoten"); - infoIndentMore(); - Knoten bester = bestimmeBesten(); - bester.setMarkiert(true); - bester.setBesucht(false); - info("Markiere diesen Knoten ..."); - List nachbarn = g.getNachbarknoten(bester,kn->!kn.isMarkiert() && !kn.isBesucht()); - for(Knoten k : nachbarn) { - k.setBesucht(true); - } - info("... und setze alle bisher nicht überdeckten Nachbarn auf besucht"); - knoten = g.getAlleKnoten(kn->!kn.isMarkiert() && !kn.isBesucht()); - step(); - infoIndentLess(); - }// end of while - - } - - // Ende Methoden + } diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyF.ctxt b/algorithmen/GraphAlgo_DominatingSetGreedyF.ctxt deleted file mode 100644 index 2dcb231..0000000 --- a/algorithmen/GraphAlgo_DominatingSetGreedyF.ctxt +++ /dev/null @@ -1,11 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_DominatingSetGreedyF -comment0.text=\n\ Dieser\ Algorithmus\ bestimmt\ die\ kleinste\ dominierende\ Menge\ in\ einem\ Graphen\n\ und\ bestimmt\ den\ Zeitbedarf.\n\ Algorithmus\:\ Greedy\ mit\ Strategie\:\n\ \ ein\ nicht\ abgedeckten\ Knoten,\ der\ von\ einem\ beliebigen\ schon\ ausgew\u00E4hlten\ Knoten\ die\ Entfernung\ 3\ hat\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=graph.Knoten\ bestimmeBesten() -comment2.text=\ Bestimmt\ besten\ Knoten\ nach\ Strategie\:\n\ \ ein\ nicht\ abgedeckten\ Knoten,\ der\ von\ einem\ beliebigen\ schon\ ausgew\u00E4hlten\ Knoten\ die\ Entfernung\ 3\ hat\n -comment3.params= -comment3.target=void\ fuehreAlgorithmusAus() -numComments=4 diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyF.java b/algorithmen/GraphAlgo_DominatingSetGreedyF.java index 21673c2..3108c7a 100644 --- a/algorithmen/GraphAlgo_DominatingSetGreedyF.java +++ b/algorithmen/GraphAlgo_DominatingSetGreedyF.java @@ -18,7 +18,7 @@ import graph.*; * @author Thomas Schaller */ -public class GraphAlgo_DominatingSetGreedyF extends GraphAlgo { +public class GraphAlgo_DominatingSetGreedyF extends GraphAlgo_DominatingSetGreedy { // Anfang Attribute @@ -30,7 +30,7 @@ public class GraphAlgo_DominatingSetGreedyF extends GraphAlgo { * ein nicht abgedeckten Knoten, der von einem beliebigen schon ausgewählten Knoten die Entfernung 3 hat */ - private Knoten bestimmeBesten() { + protected Knoten bestimmeBesten() { Random r= new Random(); List markierte = g.getAlleKnoten(k->k.isMarkiert() ); @@ -67,32 +67,4 @@ public class GraphAlgo_DominatingSetGreedyF extends GraphAlgo { return bester; } - // Anfang Methoden - public void fuehreAlgorithmusAus() { - if (g.getAnzahlKnoten()==0) { - return; - } - List knoten = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht()); - info("Solange es noch nicht überdeckte Knoten gibt, wiederhole..."); - int nr = 1; - while(knoten.size() > 0) { - info("Bestimme "+(nr++)+". hinzuzufügenden Knoten"); - infoIndentMore(); - Knoten bester = bestimmeBesten(); - bester.setMarkiert(true); - bester.setBesucht(false); - info("Markiere diesen Knoten ..."); - List nachbarn = g.getNachbarknoten(bester,kn->!kn.isMarkiert() && !kn.isBesucht()); - for(Knoten k : nachbarn) { - k.setBesucht(true); - } - info("... und setze alle bisher nicht überdeckten Nachbarn auf besucht"); - knoten = g.getAlleKnoten(kn->!kn.isMarkiert() && !kn.isBesucht()); - step(); - infoIndentLess(); - }// end of while - - } - - // Ende Methoden } diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyG.ctxt b/algorithmen/GraphAlgo_DominatingSetGreedyG.ctxt deleted file mode 100644 index 258b852..0000000 --- a/algorithmen/GraphAlgo_DominatingSetGreedyG.ctxt +++ /dev/null @@ -1,11 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_DominatingSetGreedyG -comment0.text=\n\ Dieser\ Algorithmus\ bestimmt\ die\ kleinste\ dominierende\ Menge\ in\ einem\ Graphen\n\ und\ bestimmt\ den\ Zeitbedarf.\n\ Algorithmus\:\ Greedy\ mit\ Strategie\:\n\ \ ein\ nicht\ abgedeckten\ Knoten,\ der\ von\ einem\ beliebigen\ schon\ ausgew\u00E4hlten\ Knoten\ die\ Entfernung\ 3\ hat\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=graph.Knoten\ bestimmeBesten() -comment2.text=\ Bestimmt\ besten\ Knoten\ nach\ Strategie\:\n\ \ ein\ nicht\ abgedeckten\ Knoten,\ der\ von\ einem\ beliebigen\ schon\ ausgew\u00E4hlten\ Knoten\ die\ Entfernung\ 3\ hat\n -comment3.params= -comment3.target=void\ fuehreAlgorithmusAus() -numComments=4 diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyG.java b/algorithmen/GraphAlgo_DominatingSetGreedyG.java index cb4e7cf..c7730ec 100644 --- a/algorithmen/GraphAlgo_DominatingSetGreedyG.java +++ b/algorithmen/GraphAlgo_DominatingSetGreedyG.java @@ -18,7 +18,7 @@ import graph.*; * @author Thomas Schaller */ -public class GraphAlgo_DominatingSetGreedyG extends GraphAlgo { +public class GraphAlgo_DominatingSetGreedyG extends GraphAlgo_DominatingSetGreedy { // Anfang Attribute @@ -30,7 +30,7 @@ public class GraphAlgo_DominatingSetGreedyG extends GraphAlgo { * ein nicht abgedeckten Knoten, der von einem beliebigen schon ausgewählten Knoten die Entfernung 3 hat */ - private Knoten bestimmeBesten() { + protected Knoten bestimmeBesten() { Random r= new Random(); List markierte = g.getAlleKnoten(k->k.isMarkiert() ); @@ -67,32 +67,4 @@ public class GraphAlgo_DominatingSetGreedyG extends GraphAlgo { return bester; } - // Anfang Methoden - public void fuehreAlgorithmusAus() { - if (g.getAnzahlKnoten()==0) { - return; - } - List knoten = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht()); - info("Solange es noch nicht überdeckte Knoten gibt, wiederhole..."); - int nr = 1; - while(knoten.size() > 0) { - info("Bestimme "+(nr++)+". hinzuzufügenden Knoten"); - infoIndentMore(); - Knoten bester = bestimmeBesten(); - bester.setMarkiert(true); - bester.setBesucht(false); - info("Markiere diesen Knoten ..."); - List nachbarn = g.getNachbarknoten(bester,kn->!kn.isMarkiert() && !kn.isBesucht()); - for(Knoten k : nachbarn) { - k.setBesucht(true); - } - info("... und setze alle bisher nicht überdeckten Nachbarn auf besucht"); - knoten = g.getAlleKnoten(kn->!kn.isMarkiert() && !kn.isBesucht()); - step(); - infoIndentLess(); - }// end of while - - } - - // Ende Methoden } diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyH.ctxt b/algorithmen/GraphAlgo_DominatingSetGreedyH.ctxt deleted file mode 100644 index 003f822..0000000 --- a/algorithmen/GraphAlgo_DominatingSetGreedyH.ctxt +++ /dev/null @@ -1,11 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_DominatingSetGreedyH -comment0.text=\n\ Dieser\ Algorithmus\ bestimmt\ die\ kleinste\ dominierende\ Menge\ in\ einem\ Graphen\n\ und\ bestimmt\ den\ Zeitbedarf.\n\ Algorithmus\:\ Greedy\ mit\ Strategie\:\n\ \ ein\ nicht\ abgedeckten\ Knoten,\ der\ von\ m\u00F6glichst\ vielen\ schon\ ausgew\u00E4hlten\ Knoten\ die\ Entfernung\ 3\ hat\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=graph.Knoten\ bestimmeBesten() -comment2.text=\ Bestimmt\ besten\ Knoten\ nach\ Strategie\:\n\ \ ein\ nicht\ abgedeckten\ Knoten,\ der\ von\ m\u00F6glichst\ vielen\ schon\ ausgew\u00E4hlten\ Knoten\ die\ Entfernung\ 3\ hat\n -comment3.params= -comment3.target=void\ fuehreAlgorithmusAus() -numComments=4 diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyH.java b/algorithmen/GraphAlgo_DominatingSetGreedyH.java index b1d7c8d..05845e0 100644 --- a/algorithmen/GraphAlgo_DominatingSetGreedyH.java +++ b/algorithmen/GraphAlgo_DominatingSetGreedyH.java @@ -18,7 +18,7 @@ import graph.*; * @author Thomas Schaller */ -public class GraphAlgo_DominatingSetGreedyH extends GraphAlgo { +public class GraphAlgo_DominatingSetGreedyH extends GraphAlgo_DominatingSetGreedy { // Anfang Attribute @@ -29,7 +29,7 @@ public class GraphAlgo_DominatingSetGreedyH extends GraphAlgo { /** Bestimmt besten Knoten nach Strategie: * ein nicht abgedeckten Knoten, der von möglichst vielen schon ausgewählten Knoten die Entfernung 3 hat */ - private Knoten bestimmeBesten() { + protected Knoten bestimmeBesten() { Random r = new Random(); List markierte = g.getAlleKnoten(k->k.isMarkiert() ); List nichtabgedeckte = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht() ); @@ -70,32 +70,4 @@ public class GraphAlgo_DominatingSetGreedyH extends GraphAlgo { return bester; } - // Anfang Methoden - public void fuehreAlgorithmusAus() { - if (g.getAnzahlKnoten()==0) { - return; - } - List knoten = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht()); - info("Solange es noch nicht überdeckte Knoten gibt, wiederhole..."); - int nr = 1; - while(knoten.size() > 0) { - info("Bestimme "+(nr++)+". hinzuzufügenden Knoten"); - infoIndentMore(); - Knoten bester = bestimmeBesten(); - bester.setMarkiert(true); - bester.setBesucht(false); - info("Markiere diesen Knoten ..."); - List nachbarn = g.getNachbarknoten(bester,kn->!kn.isMarkiert() && !kn.isBesucht()); - for(Knoten k : nachbarn) { - k.setBesucht(true); - } - info("... und setze alle bisher nicht überdeckten Nachbarn auf besucht"); - knoten = g.getAlleKnoten(kn->!kn.isMarkiert() && !kn.isBesucht()); - step(); - infoIndentLess(); - }// end of while - - } - - // Ende Methoden } diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyI.ctxt b/algorithmen/GraphAlgo_DominatingSetGreedyI.ctxt deleted file mode 100644 index 611790a..0000000 --- a/algorithmen/GraphAlgo_DominatingSetGreedyI.ctxt +++ /dev/null @@ -1,11 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_DominatingSetGreedyI -comment0.text=\n\ Dieser\ Algorithmus\ bestimmt\ die\ kleinste\ dominierende\ Menge\ in\ einem\ Graphen\n\ und\ bestimmt\ den\ Zeitbedarf.\n\ Algorithmus\:\ Greedy\ mit\ Strategie\:\n\ \ ein\ nicht\ abgedeckten\ Knoten,\ der\ von\ den\ ausgew\u00E4hlten\ Knoten\ eine\ m\u00F6glichst\ gro\u00DFe\ Entfernung\ hat\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=graph.Knoten\ bestimmeBesten() -comment2.text=\ Bestimmt\ besten\ Knoten\ nach\ Strategie\:\n\ \ ein\ nicht\ abgedeckten\ Knoten,\ der\ von\ den\ ausgew\u00E4hlten\ Knoten\ eine\ m\u00F6glichst\ gro\u00DFe\ Entfernung\ hat\n -comment3.params= -comment3.target=void\ fuehreAlgorithmusAus() -numComments=4 diff --git a/algorithmen/GraphAlgo_DominatingSetGreedyI.java b/algorithmen/GraphAlgo_DominatingSetGreedyI.java index cdcf6d9..5fce4d6 100644 --- a/algorithmen/GraphAlgo_DominatingSetGreedyI.java +++ b/algorithmen/GraphAlgo_DominatingSetGreedyI.java @@ -18,7 +18,7 @@ import graph.*; * @author Thomas Schaller */ -public class GraphAlgo_DominatingSetGreedyI extends GraphAlgo { +public class GraphAlgo_DominatingSetGreedyI extends GraphAlgo_DominatingSetGreedy { // Anfang Attribute @@ -30,7 +30,7 @@ public class GraphAlgo_DominatingSetGreedyI extends GraphAlgo { * ein nicht abgedeckten Knoten, der von den ausgewählten Knoten eine möglichst große Entfernung hat */ - private Knoten bestimmeBesten() { + protected Knoten bestimmeBesten() { Random r = new Random(); List markierte = g.getAlleKnoten(k->k.isMarkiert() ); List nichtabgedeckte = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht() ); @@ -82,33 +82,4 @@ public class GraphAlgo_DominatingSetGreedyI extends GraphAlgo { return bester; } - - // Anfang Methoden - public void fuehreAlgorithmusAus() { - if (g.getAnzahlKnoten()==0) { - return; - } - List knoten = g.getAlleKnoten(k->!k.isMarkiert() && !k.isBesucht()); - info("Solange es noch nicht überdeckte Knoten gibt, wiederhole..."); - int nr = 1; - while(knoten.size() > 0) { - info("Bestimme "+(nr++)+". hinzuzufügenden Knoten"); - infoIndentMore(); - Knoten bester = bestimmeBesten(); - bester.setMarkiert(true); - bester.setBesucht(false); - info("Markiere diesen Knoten ..."); - List nachbarn = g.getNachbarknoten(bester,kn->!kn.isMarkiert() && !kn.isBesucht()); - for(Knoten k : nachbarn) { - k.setBesucht(true); - } - info("... und setze alle bisher nicht überdeckten Nachbarn auf besucht"); - knoten = g.getAlleKnoten(kn->!kn.isMarkiert() && !kn.isBesucht()); - step(); - infoIndentLess(); - }// end of while - - } - - // Ende Methoden } diff --git a/algorithmen/GraphAlgo_EulerkreisExistenz.ctxt b/algorithmen/GraphAlgo_EulerkreisExistenz.ctxt deleted file mode 100644 index 3325d14..0000000 --- a/algorithmen/GraphAlgo_EulerkreisExistenz.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_EulerkreisExistenz -comment0.text=\n\ Dieser\ Algorithmus\ testet,\ ob\ ein\ Eulerkreis\ existiert.\n\ Algorithmus\:\ Zun\u00E4chst\ wird\ auf\ geraden\ Grad\ der\ Knoten\ getestet,\ danach\ \n\ mit\ Tiefensuche\ der\ Zusammenhang\ des\ Graphen\ \u00FCberpr\u00FCft.\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -numComments=3 diff --git a/algorithmen/GraphAlgo_MST_Kruskal.ctxt b/algorithmen/GraphAlgo_MST_Kruskal.ctxt deleted file mode 100644 index 8a012a2..0000000 --- a/algorithmen/GraphAlgo_MST_Kruskal.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_MST_Kruskal -comment0.text=\n\n\ Dieser\ Algorithmus\ sucht\ einen\ minimal\ Spanning\ Tree\n\ Algorithmus\:\ Kruskal\n\n\ @version\ 1.0\ from\ 11.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -numComments=3 diff --git a/algorithmen/GraphAlgo_MST_Prim.ctxt b/algorithmen/GraphAlgo_MST_Prim.ctxt deleted file mode 100644 index dfdda3c..0000000 --- a/algorithmen/GraphAlgo_MST_Prim.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_MST_Prim -comment0.text=\n\n\ Dieser\ Algorithmus\ sucht\ einen\ minimal\ Spanning\ Tree\n\ Algorithmus\:\ Prim\n\n\ @version\ 1.0\ from\ 11.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -numComments=3 diff --git a/algorithmen/GraphAlgo_Moore.ctxt b/algorithmen/GraphAlgo_Moore.ctxt deleted file mode 100644 index f865934..0000000 --- a/algorithmen/GraphAlgo_Moore.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_Moore -comment0.text=\n\ Dieser\ Algorithmus\ findet\ die\ k\u00FCrzesten\ Pfade\ in\ einem\ ungewichteten\ Graphen.\n\ Algorithmus\:\ Algorithmus\ A\ von\ Moore\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -numComments=3 diff --git a/algorithmen/GraphAlgo_TSPBacktracking.ctxt b/algorithmen/GraphAlgo_TSPBacktracking.ctxt deleted file mode 100644 index fb44a09..0000000 --- a/algorithmen/GraphAlgo_TSPBacktracking.ctxt +++ /dev/null @@ -1,12 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_TSPBacktracking -comment0.text=\n\n\ Dieser\ Algorithmus\ sucht\ einen\ m\u00F6glichst\ kurzen\ Hamilton-Kreis\ (Traveling\n\ Salesman\ Problem).\n\ Algorithmus\:\ Backtracking\n\n\ @version\ 1.0\ from\ 11.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -comment3.params=akt -comment3.target=void\ probiere(graph.Knoten) -comment4.params= -comment4.target=java.lang.String\ getInfo() -numComments=5 diff --git a/algorithmen/GraphAlgo_TSPGenetisch.ctxt b/algorithmen/GraphAlgo_TSPGenetisch.ctxt deleted file mode 100644 index c0bfb1b..0000000 --- a/algorithmen/GraphAlgo_TSPGenetisch.ctxt +++ /dev/null @@ -1,22 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_TSPGenetisch -comment0.text=\n\n\ description\n\n\ @version\ 1.0\ from\ 26.04.2019\n\ @author\ \n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -comment3.params= -comment3.target=int[]\ erzeugeZufaelligeRundreise() -comment4.params=rr1\ rr2 -comment4.target=int[]\ kreuze(int[],\ int[]) -comment5.params=rr -comment5.target=int[]\ mutiere(int[]) -comment6.params=rr -comment6.target=int[]\ mutiere2(int[]) -comment7.params=rundreise -comment7.target=void\ showRundreise(int[]) -comment8.params=rundreise -comment8.target=double\ getLaenge(int[]) -comment9.params= -comment9.target=java.lang.String\ getInfo() -numComments=10 diff --git a/algorithmen/GraphAlgo_TSPGreedy.ctxt b/algorithmen/GraphAlgo_TSPGreedy.ctxt deleted file mode 100644 index ba92415..0000000 --- a/algorithmen/GraphAlgo_TSPGreedy.ctxt +++ /dev/null @@ -1,10 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_TSPGreedy -comment0.text=\n\n\ Dieser\ Algorithmus\ sucht\ einen\ m\u00F6glichst\ kurzen\ Hamilton-Kreis\ (Traveling\n\ Salesman\ Problem).\n\ Algorithmus\:\ Greedy\n\ Strategie\:\ Verl\u00E4ngere\ den\ Weg\ immer\ mit\ der\ k\u00FCrzesten\ Kante,\ die\ vom\ aktuellen\ Ende\ der\ Route\ ausgeht.\n\ vlg.\ Minimal\ Spanning\ Tree\ (Prim)\n\n\ @version\ 1.0\ from\ 11.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -comment3.params= -comment3.target=java.lang.String\ getInfo() -numComments=4 diff --git a/algorithmen/GraphAlgo_TSPGreedy2.ctxt b/algorithmen/GraphAlgo_TSPGreedy2.ctxt deleted file mode 100644 index bed43cb..0000000 --- a/algorithmen/GraphAlgo_TSPGreedy2.ctxt +++ /dev/null @@ -1,14 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_TSPGreedy2 -comment0.text=\n\n\ Dieser\ Algorithmus\ sucht\ einen\ m\u00F6glichst\ kurzen\ Hamilton-Kreis\ (Traveling\n\ Salesman\ Problem).\n\ Algorithmus\:\ Greedy\n\ Strategie\:\ Sortiere\ Kanten\ der\ L\u00E4nge\ nach.\ F\u00FCge\ sie\ der\ Reihe\ nach\ der\ Route\ hinzu,\ wenn\ nicht\ schon\ ein\n\ Weg\ zwischen\ den\ beiden\ Knoten\ vorhanden\ ist\ und\ die\ Knoten\ nicht\ schon\ Grad\ zwei\ erreicht\ haben.\n\ vgl.\ Minimal\ Spanning\ Tree\ (Kruskal)\n\n\ @version\ 1.0\ from\ 11.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -comment3.params=k -comment3.target=boolean\ istRoutenende(graph.Knoten) -comment4.params=k -comment4.target=int\ bestimmeGrad(graph.Knoten) -comment5.params= -comment5.target=java.lang.String\ getInfo() -numComments=6 diff --git a/algorithmen/GraphAlgo_TSPGreedyOpt.ctxt b/algorithmen/GraphAlgo_TSPGreedyOpt.ctxt deleted file mode 100644 index 2223194..0000000 --- a/algorithmen/GraphAlgo_TSPGreedyOpt.ctxt +++ /dev/null @@ -1,12 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_TSPGreedyOpt -comment0.text=\n\n\ Dieser\ Algorithmus\ sucht\ einen\ m\u00F6glichst\ kurzen\ Hamilton-Kreis\ (Traveling\n\ Salesman\ Problem).\n\ Algorithmus\:\ Greedy\ mit\ anschlie\u00DFender\ Optimierung\:\ \n\ Jeder\ Knoten\ wird\ der\ Reihe\ nach\ aus\ der\ Rundreise\ entfernt\ und\ dort\ wieder\ eingef\u00FCgt,\ wo\ die\ Rundreise\n\ sich\ am\ wenigsten\ verl\u00E4ngert.\ Diese\ Optimierung\ wird\ 5x\ wiederholt.\n\n\ @version\ 1.0\ from\ 11.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -comment3.params= -comment3.target=double\ getLaenge() -comment4.params= -comment4.target=java.lang.String\ getInfo() -numComments=5 diff --git a/algorithmen/GraphAlgo_Tiefensuche.ctxt b/algorithmen/GraphAlgo_Tiefensuche.ctxt deleted file mode 100644 index 353a61b..0000000 --- a/algorithmen/GraphAlgo_Tiefensuche.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_Tiefensuche -comment0.text=\n\ Dieser\ Algorithmus\ nummeriert\ alle\ Knoten\ des\ Graphen.\n\ Algorithmus\:\ Tiefensuche\ mit\ ToDo-Liste\ (Stapel)\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -numComments=3 diff --git a/algorithmen/GraphAlgo_TiefensucheRek.ctxt b/algorithmen/GraphAlgo_TiefensucheRek.ctxt deleted file mode 100644 index dd3889b..0000000 --- a/algorithmen/GraphAlgo_TiefensucheRek.ctxt +++ /dev/null @@ -1,10 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_TiefensucheRek -comment0.text=\n\ Dieser\ Algorithmus\ nummeriert\ alle\ Knoten\ des\ Graphen.\n\ Algorithmus\:\ Tiefensuche\ rekursiv\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -comment3.params=k\ nr -comment3.target=int\ nummeriere(graph.Knoten,\ int) -numComments=4 diff --git a/algorithmen/GraphAlgo_ZyklusBacktracking.ctxt b/algorithmen/GraphAlgo_ZyklusBacktracking.ctxt deleted file mode 100644 index 92c6516..0000000 --- a/algorithmen/GraphAlgo_ZyklusBacktracking.ctxt +++ /dev/null @@ -1,10 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_ZyklusBacktracking -comment0.text=\n\ Dieser\ Algorithmus\ ist\ ein\ Beispiel\ f\u00FCr\ einen\ Backtracking-Algorithmus.\n\ Er\ sucht\ einen\ Zyklus\ im\ Graphen.\n\ Algorithmus\:\ Backtracking\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -comment3.params=k -comment3.target=java.util.List\ backtracking(graph.Knoten) -numComments=4 diff --git a/algorithmen/GraphAlgo_toplogischeSortierung.ctxt b/algorithmen/GraphAlgo_toplogischeSortierung.ctxt deleted file mode 100644 index 63b2734..0000000 --- a/algorithmen/GraphAlgo_toplogischeSortierung.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=GraphAlgo_toplogischeSortierung -comment0.text=\n\ Dieser\ Algorithmus\ findet\ eine\ topologische\ Sortierung\ des\ Graphen.\n\n\ @version\ 1.0\ from\ 10.12.2020\n\ @author\ Thomas\ Schaller\n -comment1.params= -comment1.target=java.lang.String\ getBezeichnung() -comment2.params= -comment2.target=void\ fuehreAlgorithmusAus() -numComments=3 diff --git a/algorithmen/package.bluej b/algorithmen/package.bluej index b06e9a3..95b2c6b 100644 --- a/algorithmen/package.bluej +++ b/algorithmen/package.bluej @@ -23,16 +23,16 @@ dependency7.type=UsesDependency dependency8.from=GraphAlgo_DominatingSetGreedyH dependency8.to=GraphAlgo_Moore dependency8.type=UsesDependency -objectbench.height=135 -objectbench.width=1273 +objectbench.height=157 +objectbench.width=1896 package.divider.horizontal=0.6003172085646312 -package.divider.vertical=0.8287092882991556 -package.editor.height=666 -package.editor.width=1142 -package.editor.x=533 -package.editor.y=122 -package.frame.height=928 -package.frame.width=1297 +package.divider.vertical=0.829698857736241 +package.editor.height=792 +package.editor.width=1774 +package.editor.x=1919 +package.editor.y=0 +package.frame.height=1054 +package.frame.width=1922 package.numDependencies=8 package.numTargets=31 package.showExtends=true @@ -46,35 +46,35 @@ target1.height=50 target1.name=GraphAlgo_ColoringGreedyRandom target1.showInterface=false target1.type=ClassTarget -target1.width=250 +target1.width=260 target1.x=600 target1.y=590 target10.height=50 target10.name=GraphAlgo_DominatingSetGreedyF target10.showInterface=false target10.type=ClassTarget -target10.width=250 +target10.width=260 target10.x=290 target10.y=420 target11.height=50 -target11.name=GraphAlgo_TSPGreedy +target11.name=GraphAlgo_DominatingSetGreedyG target11.showInterface=false target11.type=ClassTarget -target11.width=230 -target11.x=600 -target11.y=160 +target11.width=260 +target11.x=290 +target11.y=470 target12.height=50 -target12.name=GraphAlgo_DominatingSetGreedyG +target12.name=GraphAlgo_TSPGreedy target12.showInterface=false target12.type=ClassTarget -target12.width=250 -target12.x=290 -target12.y=470 +target12.width=230 +target12.x=600 +target12.y=160 target13.height=50 target13.name=GraphAlgo_DominatingSetGreedyD target13.showInterface=false target13.type=ClassTarget -target13.width=250 +target13.width=260 target13.x=290 target13.y=320 target14.height=50 @@ -88,14 +88,14 @@ target15.height=50 target15.name=GraphAlgo_DominatingSetGreedyE target15.showInterface=false target15.type=ClassTarget -target15.width=250 +target15.width=260 target15.x=290 target15.y=370 target16.height=50 target16.name=GraphAlgo_DominatingSetGenetisch target16.showInterface=false target16.type=ClassTarget -target16.width=260 +target16.width=270 target16.x=290 target16.y=640 target17.height=50 @@ -109,14 +109,14 @@ target18.height=50 target18.name=GraphAlgo_DominatingSetGreedyH target18.showInterface=false target18.type=ClassTarget -target18.width=250 +target18.width=260 target18.x=290 target18.y=520 target19.height=50 target19.name=GraphAlgo_DominatingSetGreedyI target19.showInterface=false target19.type=ClassTarget -target19.width=240 +target19.width=250 target19.x=290 target19.y=570 target2.height=50 @@ -151,14 +151,14 @@ target23.height=50 target23.name=GraphAlgo_toplogischeSortierung target23.showInterface=false target23.type=ClassTarget -target23.width=240 +target23.width=250 target23.x=20 target23.y=370 target24.height=50 target24.name=GraphAlgo_DominatingSetBacktracking target24.showInterface=false target24.type=ClassTarget -target24.width=280 +target24.width=290 target24.x=290 target24.y=100 target25.height=50 @@ -193,15 +193,15 @@ target29.height=50 target29.name=GraphAlgo_ColoringBacktracking target29.showInterface=false target29.type=ClassTarget -target29.width=240 +target29.width=250 target29.x=600 target29.y=470 target3.height=50 -target3.name=GraphAlgo_TSPBacktracking +target3.name=GraphAlgo_MST_Prim target3.showInterface=false target3.type=ClassTarget target3.width=230 -target3.x=600 +target3.x=890 target3.y=100 target30.height=50 target30.name=GraphAlgo_Dijkstra @@ -218,33 +218,33 @@ target31.width=230 target31.x=600 target31.y=280 target4.height=50 -target4.name=GraphAlgo_MST_Prim +target4.name=GraphAlgo_TSPBacktracking target4.showInterface=false target4.type=ClassTarget target4.width=230 -target4.x=890 +target4.x=600 target4.y=100 target5.height=50 target5.name=GraphAlgo_DominatingSetGreedyB target5.showInterface=false target5.type=ClassTarget -target5.width=250 +target5.width=260 target5.x=290 target5.y=220 target6.height=50 -target6.name=GraphAlgo_DominatingSetGreedyC +target6.name=GraphAlgo target6.showInterface=false -target6.type=ClassTarget -target6.width=250 -target6.x=290 -target6.y=270 +target6.type=AbstractTarget +target6.width=90 +target6.x=310 +target6.y=10 target7.height=50 -target7.name=GraphAlgo +target7.name=GraphAlgo_DominatingSetGreedyC target7.showInterface=false -target7.type=AbstractTarget -target7.width=90 -target7.x=310 -target7.y=10 +target7.type=ClassTarget +target7.width=260 +target7.x=290 +target7.y=270 target8.height=50 target8.name=GraphAlgo_MST_Kruskal target8.showInterface=false @@ -256,6 +256,6 @@ target9.height=50 target9.name=GraphAlgo_DominatingSetGreedyA target9.showInterface=false target9.type=ClassTarget -target9.width=250 +target9.width=260 target9.x=290 target9.y=170 diff --git a/control/Controller.ctxt b/control/Controller.ctxt deleted file mode 100644 index 960abe6..0000000 --- a/control/Controller.ctxt +++ /dev/null @@ -1,66 +0,0 @@ -#BlueJ class context -comment0.target=Controller -comment0.text=\n\ Die\ Klasse\ Controller\ stellt\ den\ Controller\ des\ Hauptfensters\ /\ Menu\ dar.\n\n\ @author\ Thomas\ Schaller\n\ @version\ v6.7\ (9.12.2020)\n -comment1.params= -comment1.target=void\ initialize() -comment10.params=event -comment10.target=void\ mExperimentiereAuswahl(javafx.event.ActionEvent) -comment11.params=event -comment11.target=void\ mBeenden(javafx.event.ActionEvent) -comment12.params= -comment12.target=void\ menuChangeAnsicht() -comment13.params=event -comment13.target=void\ mChangeOptionBild(javafx.event.ActionEvent) -comment14.params=event -comment14.target=void\ mChangeOptionKantengewichte(javafx.event.ActionEvent) -comment15.params=event -comment15.target=void\ mChangeOptionKnoteninfo(javafx.event.ActionEvent) -comment16.params=event -comment16.target=void\ mChangeOptionKnotenname(javafx.event.ActionEvent) -comment17.params=event -comment17.target=void\ mChangeOptionKnotenwerte(javafx.event.ActionEvent) -comment18.params=event -comment18.target=void\ mChangeHilfefenster(javafx.event.ActionEvent) -comment19.params=event -comment19.target=void\ mOeffnen(javafx.event.ActionEvent) -comment2.params=tabOld\ tabNew -comment2.target=void\ changeTab(javafx.scene.control.Tab,\ javafx.scene.control.Tab) -comment20.params=dateiname -comment20.target=void\ graphLaden(java.lang.String) -comment21.params=event -comment21.target=void\ mSchliessen(javafx.event.ActionEvent) -comment22.params=event -comment22.target=void\ mSpeichern(javafx.event.ActionEvent) -comment23.params=event -comment23.target=void\ mBildExportieren(javafx.event.ActionEvent) -comment24.params=event -comment24.target=void\ mUeber(javafx.event.ActionEvent) -comment25.params=event -comment25.target=void\ mResetAlles(javafx.event.ActionEvent) -comment26.params=event -comment26.target=void\ mResetBesucht(javafx.event.ActionEvent) -comment27.params=event -comment27.target=void\ mResetFarbe(javafx.event.ActionEvent) -comment28.params=event -comment28.target=void\ mResetGeloescht(javafx.event.ActionEvent) -comment29.params=event -comment29.target=void\ mResetKantenmarkierung(javafx.event.ActionEvent) -comment3.params= -comment3.target=void\ oeffneHauptTab() -comment30.params=event -comment30.target=void\ mResetMarkierung(javafx.event.ActionEvent) -comment31.params=event -comment31.target=void\ mResetWert(javafx.event.ActionEvent) -comment4.params=event -comment4.target=void\ mNeuerGraph(javafx.event.ActionEvent) -comment5.params= -comment5.target=void\ schliesseTabs() -comment6.params=event -comment6.target=void\ mBearbeiten(javafx.scene.input.MouseEvent) -comment7.params=event -comment7.target=void\ mSimuliere(javafx.scene.input.MouseEvent) -comment8.params=event -comment8.target=void\ mExperimentiereKanten(javafx.event.ActionEvent) -comment9.params=event -comment9.target=void\ mExperimentiereKnoten(javafx.event.ActionEvent) -numComments=32 diff --git a/control/EditTabMitController.ctxt b/control/EditTabMitController.ctxt deleted file mode 100644 index e9d546f..0000000 --- a/control/EditTabMitController.ctxt +++ /dev/null @@ -1,32 +0,0 @@ -#BlueJ class context -comment0.target=EditTabMitController -comment0.text=\n\ Die\ Klasse\ EditTabMitController\ stellt\ einen\ Tab\ inclusive\ ihres\ Controllers\n\ zur\ Editierung\ eines\ Graphs\ dar.\n\n\ @author\ Thomas\ Schaller\n\ @version\ v6.7\ (9.12.2020)\n -comment1.params=graph\ options -comment1.target=EditTabMitController(graph.Graph,\ graph.GraphOptions) -comment10.params=event -comment10.target=void\ bDistanzenBestimmen(javafx.event.ActionEvent) -comment11.params=event -comment11.target=void\ graphClicked(javafx.scene.input.MouseEvent) -comment12.params= -comment12.target=void\ mLoesche() -comment13.params= -comment13.target=void\ mWertAendern() -comment14.params= -comment14.target=void\ mInfotextAendern() -comment2.params= -comment2.target=void\ initialize() -comment3.params=size -comment3.target=void\ sGroesseAendern(java.lang.Number) -comment4.params=gerichtet -comment4.target=void\ setGerichtet(boolean) -comment5.params=gewichtet -comment5.target=void\ setGewichtet(boolean) -comment6.params=anzeigen -comment6.target=void\ setInfotext(boolean) -comment7.params=t -comment7.target=void\ setKnotenTyp(javafx.scene.control.Toggle) -comment8.params=event -comment8.target=void\ bBildLaden(javafx.event.ActionEvent) -comment9.params=event -comment9.target=void\ bBildLoeschen(javafx.event.ActionEvent) -numComments=15 diff --git a/control/HauptTabMitController.ctxt b/control/HauptTabMitController.ctxt deleted file mode 100644 index 8d7cd54..0000000 --- a/control/HauptTabMitController.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=HauptTabMitController -comment0.text=\n\ Die\ Klasse\ HauptTabMitController\ stellt\ einen\ Tab\ inclusive\ ihres\ Controllers\n\ f\u00FCr\ das\ Hauptfenster\ des\ Graphentesters\ dar.\ Einzelne\ Knoten\ oder\ Kanten\ k\u00F6nnen\ \n\ selektiert\ werden.\n\n\ @author\ Thomas\ Schaller\n\ @version\ v6.7\ (9.12.2020)\n -comment1.params=graph\ options -comment1.target=HauptTabMitController(graph.Graph,\ graph.GraphOptions) -comment2.params= -comment2.target=void\ initialize() -numComments=3 diff --git a/control/Hilfefenster.ctxt b/control/Hilfefenster.ctxt deleted file mode 100644 index 288e563..0000000 --- a/control/Hilfefenster.ctxt +++ /dev/null @@ -1,36 +0,0 @@ -#BlueJ class context -comment0.target=Hilfefenster -comment0.text=\n\ Die\ Klasse\ Hilfefenster\ stellt\ ein\ Hilfefenster\ f\u00FCr\ die\ Simulation\ eines\n\ Algorithmus\ bereit.\n\n\ @author\ Thomas\ Schaller\n\ @version\ v6.7\ (9.12.2020)\n -comment1.params= -comment1.target=void\ initialize() -comment10.params= -comment10.target=void\ run() -comment11.params=a -comment11.target=void\ setReviewAllowed(boolean) -comment12.params= -comment12.target=void\ showState() -comment13.params= -comment13.target=void\ run() -comment14.params=t\ search\ nr -comment14.target=int\ calculateIndex(javafx.scene.control.TreeItem,\ javafx.scene.control.TreeItem,\ int) -comment15.params=event -comment15.target=void\ bCopyClicked(javafx.event.ActionEvent) -comment16.params=t\ tab -comment16.target=java.lang.String\ generateClipboardContent(javafx.scene.control.TreeItem,\ java.lang.String) -comment2.params=gp -comment2.target=void\ setGraphPlotter(graph.GraphPlotter) -comment3.params= -comment3.target=void\ loescheAlles() -comment4.params= -comment4.target=void\ run() -comment5.params=text -comment5.target=void\ append(java.lang.String) -comment6.params= -comment6.target=void\ run() -comment7.params= -comment7.target=void\ indentMore() -comment8.params= -comment8.target=void\ run() -comment9.params= -comment9.target=void\ indentLess() -numComments=17 diff --git a/control/MyClassLoader.ctxt b/control/MyClassLoader.ctxt deleted file mode 100644 index 01ccb96..0000000 --- a/control/MyClassLoader.ctxt +++ /dev/null @@ -1,8 +0,0 @@ -#BlueJ class context -comment0.target=MyClassLoader -comment0.text=\n\ Hilfsklasse,\ um\ Algorithmen-Classen\ dynamisch\ nachladen\ zu\ k\u00F6nnen\ und\ \n\ aktualisierte\ Class-Dateien\ w\u00E4hrend\ der\ Laufzeit\ erneut\ laden\ zu\ k\u00F6nnen.\n\ \n\ @author\ Schaller\ (nach\ http\://tutorials.jenkov.com/java-reflection/dynamic-class-loading-reloading.html)\n\ @version\ 16.02.2021\n -comment1.params=parent -comment1.target=MyClassLoader(java.lang.ClassLoader) -comment2.params=name -comment2.target=java.lang.Class\ loadClass(java.lang.String) -numComments=3 diff --git a/control/SimulationTabMitController.ctxt b/control/SimulationTabMitController.ctxt deleted file mode 100644 index 2497958..0000000 --- a/control/SimulationTabMitController.ctxt +++ /dev/null @@ -1,24 +0,0 @@ -#BlueJ class context -comment0.target=SimulationTabMitController -comment0.text=\n\ Die\ Klasse\ SimulationTabMitController\ stellt\ einen\ Tab\ inclusive\ ihres\ Controllers\n\ zur\ Simulation\ eines\ Algorithmus\ dar.\ Der\ Algorithmus\ kann\ ausgew\u00E4hlt\ und\ schrittweise\ \n\ durchgef\u00FChrt\ werden.\n\n\ @author\ Thomas\ Schaller\n\ @version\ v6.7\ (9.12.2020)\n -comment1.params=graph\ options -comment1.target=SimulationTabMitController(graph.Graph,\ graph.GraphOptions) -comment10.params=event -comment10.target=void\ mBreak(javafx.event.ActionEvent) -comment2.params= -comment2.target=void\ initialize() -comment3.params= -comment3.target=void\ afterClosing() -comment4.params= -comment4.target=void\ hilfefensterErzeugen() -comment5.params=b -comment5.target=void\ showHilfe(boolean) -comment6.params=graph\ options -comment6.target=void\ setGraph(graph.Graph,\ graph.GraphOptions) -comment7.params=event -comment7.target=void\ mReset(javafx.event.ActionEvent) -comment8.params=event -comment8.target=void\ mStep(javafx.event.ActionEvent) -comment9.params=event -comment9.target=void\ mStart(javafx.event.ActionEvent) -numComments=11 diff --git a/control/TabMitController.ctxt b/control/TabMitController.ctxt deleted file mode 100644 index 4dd3be9..0000000 --- a/control/TabMitController.ctxt +++ /dev/null @@ -1,16 +0,0 @@ -#BlueJ class context -comment0.target=TabMitController -comment0.text=\n\ Die\ Klasse\ TabMitController\ stellt\ die\ Oberklasse\ f\u00FCr\ alle\ Tabs\ des\ Graphentesters\n\ dar.\n\n\ @author\ Thomas\ Schaller\n\ @version\ v6.7\ (9.12.2020)\n -comment1.params= -comment1.target=void\ initialize() -comment2.params=taboptions -comment2.target=void\ tabOeffnen(graph.GraphOptions) -comment3.params= -comment3.target=graph.GraphOptions\ getGraphOptions() -comment4.params= -comment4.target=void\ update() -comment5.params=graph\ options -comment5.target=void\ setGraph(graph.Graph,\ graph.GraphOptions) -comment6.params= -comment6.target=graph.GraphPlotter\ getViewer() -numComments=7 diff --git a/control/UnterTabMitController.ctxt b/control/UnterTabMitController.ctxt deleted file mode 100644 index 4126cf0..0000000 --- a/control/UnterTabMitController.ctxt +++ /dev/null @@ -1,78 +0,0 @@ -#BlueJ class context -comment0.target=UnterTabMitController -comment0.text=\n\ Die\ Klasse\ UnterTabMitController\ stellt\ einen\ Tab\ inclusive\ ihres\ Controllers\n\ zur\ h\u00E4ndischen\ Erforschung\ eines\ Algorithmus.\ Es\ wird\ immer\ ein\ einzelner\ Knoten\ \n\ oder\ eine\ Kante\ fokussiert.\n\n\ @author\ Thomas\ Schaller\n\ @version\ v6.7\ (9.12.2020)\n -comment1.params=graph\ options -comment1.target=UnterTabMitController(graph.Graph,\ graph.GraphOptions) -comment10.params=event -comment10.target=void\ bBesucht(javafx.event.ActionEvent) -comment11.params=event -comment11.target=void\ bEnde(javafx.event.ActionEvent) -comment12.params=event -comment12.target=void\ knotenFarbe(javafx.scene.input.MouseEvent) -comment13.params=event -comment13.target=void\ bMarkieren(javafx.event.ActionEvent) -comment14.params= -comment14.target=void\ updateInfofeld() -comment15.params=event -comment15.target=void\ graphClicked(javafx.scene.input.MouseEvent) -comment16.params=event -comment16.target=void\ bHinzufuegenAnfang(javafx.event.ActionEvent) -comment17.params=event -comment17.target=void\ bHinzufuegenEnde(javafx.event.ActionEvent) -comment18.params=event -comment18.target=void\ bLoeschenAusListe(javafx.event.ActionEvent) -comment19.params=event -comment19.target=void\ bNaechster(javafx.event.ActionEvent) -comment2.params= -comment2.target=void\ initialize() -comment20.params=event -comment20.target=void\ bSort(javafx.event.ActionEvent) -comment21.params=event -comment21.target=void\ bVoheriger(javafx.event.ActionEvent) -comment22.params=event -comment22.target=void\ bWertAendern(javafx.event.ActionEvent) -comment23.params=event -comment23.target=void\ bGeheZu(javafx.event.ActionEvent) -comment24.params=event -comment24.target=void\ mBeenden(javafx.event.ActionEvent) -comment25.params=event -comment25.target=void\ mBesucheKnoten(javafx.event.ActionEvent) -comment26.params=event -comment26.target=void\ mBesuchtLoeschen(javafx.event.ActionEvent) -comment27.params=event -comment27.target=void\ mFaerbeKnoten(javafx.event.ActionEvent) -comment28.params=event -comment28.target=void\ mMarkiereKnoten(javafx.event.ActionEvent) -comment29.params=event -comment29.target=void\ mMarkierungenLoeschen(javafx.event.ActionEvent) -comment3.params=graph\ options -comment3.target=void\ setGraph(graph.Graph,\ graph.GraphOptions) -comment30.params=event -comment30.target=void\ mOeffnen(javafx.event.ActionEvent) -comment31.params=event -comment31.target=void\ mSchliessen(javafx.event.ActionEvent) -comment32.params=event -comment32.target=void\ mSpeichern(javafx.event.ActionEvent) -comment33.params=event -comment33.target=void\ mUeber(javafx.event.ActionEvent) -comment34.params=event -comment34.target=void\ mWertSetzen(javafx.event.ActionEvent) -comment35.params=event -comment35.target=void\ mZurueck(javafx.event.ActionEvent) -comment36.params=event -comment36.target=void\ bStatusRestore(javafx.event.ActionEvent) -comment37.params=event -comment37.target=void\ bStatusSave(javafx.event.ActionEvent) -comment4.params= -comment4.target=void\ buildAuswahl() -comment5.params= -comment5.target=void\ update() -comment6.params= -comment6.target=void\ fillLvAuswahl() -comment7.params= -comment7.target=void\ showAuswahl() -comment8.params=auswahl -comment8.target=void\ setAuswahl(java.util.List) -comment9.params=event -comment9.target=void\ bAnfang(javafx.event.ActionEvent) -numComments=38 diff --git a/graph/Graph.ctxt b/graph/Graph.ctxt deleted file mode 100644 index a77a112..0000000 --- a/graph/Graph.ctxt +++ /dev/null @@ -1,139 +0,0 @@ -#BlueJ class context -comment0.target=Graph -comment0.text=\n\ Dies\ ist\ das\ Herz\ vom\ "GraphTester"\ -\ der\ Graph\ selber,\ gepeichert\ als\ Adjazenzliste.\n\ Die\ Klasse\ erlaubt\ durch\ geeignete\ Methoden\:\n\ -\ die\ Speicherung\ als\ Adjazenzmatrix,\n\ -\ das\ Hinzufuegen\ und\ Loeschen\ von\ knoten\ und\ Kanten,\n\ -\ das\ Markieren\ von\ Knoten\ und\ Kanten,\n\ -\ eine\ Aussage\ darueber,\ ob\ Knoten\ oder\ Kanten\ enthalten\ sind\ und\n\ -\ eine\ Ausgabe\ des\ Graphen\ in\ textueller\ Form\ sowie\ als\ csv-Datei.\n\ \n\ \n\ @author\ Dirk\ Zechnall,\ Thomas\ Schaller\n\ @version\ 31.01.2021\ (v6.5)\n -comment1.params=isGerichtet\ isGewichtet -comment1.target=Graph(boolean,\ boolean) -comment1.text=\n\ Der\ Konstruktor\ erstellt\ einen\ neuen\ Graphen\ (genauer\ eine\ neue\ Adjazenzliste)\n\ @param\ isGerichtet\ gibt\ an,\ ob\ es\ sich\ um\ einen\ gerichteten\ Graphen\ handelt\n\ @param\ isGewichtet\ gibt\ an,\ ob\ die\ Kanten\ gewichtet\ sind.\n -comment10.params=k -comment10.target=int\ getNummer(Kante) -comment10.text=\ Gibt\ die\ Nummer\ einer\ Kante\ zur\u00FCck\n\ @param\ \ k\ gesuchte\ Kante\n\ @return\ Nummer\ der\ Kante\ (mit\ 0\ beginnend)\n -comment11.params= -comment11.target=double[][]\ getAdjazenzMatrix() -comment11.text=\n\ Die\ Methode\ getAdjazenzMatrix()\ gibt\ die\ Adjazenzmatrix\ zurueck.\n\ \n\ @return\ \ double[][]\ Die\ AdjazenzMatrix\ als\ zweidimensionales\ Array\n -comment12.params=filter -comment12.target=java.util.List\ getAlleKanten(java.util.function.Predicate[]) -comment12.text=\n\ Gibt\ eine\ Liste\ aller\ Kanten\ des\ Graphen\ zur\u00FCck.\n\ @param\ \ \ filter\ \ \ \ \ \ \ \ \ optionaler\ Filter,\ der\ auf\ die\ Liste\ angewendet\ wird.\ Er\ muss\ einen\ boolean-Wert\ zur\u00FCckgeben\:\ z.B.\ @literal{k->k.isMarkiert()\ &&\ k.isBesucht()}\n\ @return\ Liste\ aller\ Kanten\n -comment13.params= -comment13.target=void\ entferneMarkierungBeiAllenKnoten() -comment13.text=\n\ Entfernt\ die\ Markierung\ bei\ allen\ Knoten\ des\ Graphen.\n -comment14.params= -comment14.target=void\ initialisiereAlleKnoten() -comment14.text=\n\ Initialisiert\ alle\ Knoten\ des\ Graphen.\n -comment15.params= -comment15.target=void\ initialisiereAlleKanten() -comment15.text=\n\ Initialisiert\ alle\ Kanten\ des\ Graphen.\n -comment16.params=k -comment16.target=boolean\ isKnotenEnthalten(Knoten) -comment16.text=\n\ Ueberprueft,\ ob\ ein\ Knoten\ in\ der\ Knotenliste\ enthalten\ ist.\n\ Sobald\ in\ der\ Knotenliste\ der\ Knoten\ k\ gefunden\ wird,\ wird\ true\ ausgegeben.\n\ \n\ @param\ \ k\ \ Der\ gesuchte\ Knoten\n\ @return\ \ true\=\ ist\ enthalten,\ false\ \=\ ist\ nicht\ enthalten\n -comment17.params= -comment17.target=int\ getAnzahlKnoten() -comment17.text=\n\ Gibt\ die\ Anzahl\ der\ Knoten\ im\ Graph\ zurueck\n\ \n\ @return\ \ Anzahl\ der\ Knoten\n -comment18.params=filter -comment18.target=java.util.List\ getAlleKnoten(java.util.function.Predicate[]) -comment18.text=\n\ Gibt\ eine\ Liste\ aller\ Knoten\ des\ Graphen\ zurueck.\ \n\ @param\ \ \ filter\ \ \ \ \ \ \ \ \ optionaler\ Filter,\ der\ auf\ die\ Liste\ angewendet\ wird.\ Er\ muss\ einen\ boolean-Wert\ zur\u00FCckgeben\:\ z.B.\ @literal{k->k.isMarkiert()\ &&\ k.isBesucht()}\n\ @return\ \ Die\ Knotenliste.\ Falls\ leer\ wird\ eine\ leere\ Liste\ \ zurueckgegeben\n -comment19.params=k\ filter -comment19.target=java.util.List\ getNachbarknoten(Knoten,\ java.util.function.Predicate[]) -comment19.text=\n\ Gibt\ die\ Liste\ aller\ Nachbarknoten\ eines\ Knotens\ k\ zurueck,\ falls\ k\ in\ der\ Knotenliste\ vorhanden\ ist.\ \n\n\ @param\ \ \ k\ \ \ \ Der\ Knoten,\ zu\ dem\ die\ Adjazenzliste\ gesucht\ wird\n\ @param\ \ \ filter\ \ \ \ \ \ \ \ \ optionaler\ Filter,\ der\ auf\ die\ Liste\ angewendet\ wird.\ Er\ muss\ einen\ boolean-Wert\ zur\u00FCckgeben\:\ z.B.\ @literal{k->k.isMarkiert()\ &&\ k.isBesucht()}\n\ @return\ \ Liste\ der\ Nachbarknoten\n -comment2.params= -comment2.target=Graph() -comment2.text=\n\ Der\ Konstruktor\ erstellt\ einen\ neuen\ ungerichteten,\ ungewichteten\ Graphen\ (genauer\ eine\ neue\ Adjazenzliste)\n -comment20.params=k\ filter -comment20.target=java.util.List\ getAusgehendeKanten(Knoten,\ java.util.function.Predicate[]) -comment20.text=\n\ Gibt\ eine\ Liste\ der\ ausgehenden\ Kanten\ eines\ Knotens\ k\ zurueck,\ falls\ k\ in\ der\ Knotenliste\ vorhanden\ ist.\ \n\ Bei\ ungerichteten\ Graphen\ wird\ nicht\ zwischen\ eingehenden\ und\ ausgehenden\ Kanten\ \n\ unterschieden.\n\n\ @param\ \ \ k\ \ \ \ Der\ Knoten,\ zu\ dem\ die\ Kanten\ gesucht\ werden\n\ @param\ \ \ filter\ \ \ \ \ \ \ \ \ optionaler\ Filter,\ der\ auf\ die\ Liste\ angewendet\ wird.\ Er\ muss\ einen\ boolean-Wert\ zur\u00FCckgeben\:\ z.B.\ @literal{k->k.isMarkiert()\ &&\ k.isBesucht()}\n\ @return\ \ Liste\ der\ ausgehenden\ Kanten.\n -comment21.params=knotennr\ filter -comment21.target=java.util.List\ getAusgehendeKanten(int,\ java.util.function.Predicate[]) -comment21.text=\n\ Gibt\ eine\ Liste\ der\ ausgehenden\ Kanten\ eines\ Knotens\ k\ zurueck,\ falls\ k\ in\ der\ Knotenliste\ vorhanden\ ist.\ \n\ Bei\ ungerichteten\ Graphen\ wird\ nicht\ zwischen\ eingehenden\ und\ ausgehenden\ Kanten\ \n\ unterschieden.\n\n\ @param\ \ \ knotennr\ \ \ \ Nummer\ des\ Knoten,\ zu\ dem\ die\ Kanten\ gesucht\ werden\n\ @param\ \ \ filter\ \ \ \ \ \ \ \ \ optionaler\ Filter,\ der\ auf\ die\ Liste\ angewendet\ wird.\ Er\ muss\ einen\ boolean-Wert\ zur\u00FCckgeben\:\ z.B.\ @literal{k->k.isMarkiert()\ &&\ k.isBesucht()}\n\ @return\ \ Liste\ der\ ausgehenden\ Kanten.\n -comment22.params=knotennr\ filter -comment22.target=java.util.List\ getEingehendeKanten(int,\ java.util.function.Predicate[]) -comment22.text=\n\ Gibt\ eine\ Liste\ der\ eingehenden\ Kanten\ eines\ Knotens\ k\ zurueck,\ falls\ k\ in\ der\ Knotenliste\ vorhanden\ ist.\ \n\ Bei\ ungerichteten\ Graphen\ wird\ nicht\ zwischen\ eingehenden\ und\ ausgehenden\ Kanten\ \n\ unterschieden.\n\n\ @param\ \ \ knotennr\ \ \ \ Die\ Nummer\ des\ Knotens,\ zu\ dem\ die\ Kanten\ gesucht\ werden\n\ @param\ \ \ filter\ \ \ \ \ \ optionaler\ Filter,\ der\ auf\ die\ Liste\ angewendet\ wird.\ Er\ muss\ einen\ boolean-Wert\ zur\u00FCckgeben\:\ z.B.\ @literal{k->k.isMarkiert()\ &&\ k.isBesucht()}\n\ @return\ \ Liste\ der\ eingehenden\ Kanten.\n -comment23.params=k\ filter -comment23.target=java.util.List\ getEingehendeKanten(Knoten,\ java.util.function.Predicate[]) -comment23.text=\n\ Gibt\ eine\ Liste\ der\ eingehenden\ Kanten\ eines\ Knotens\ k\ zurueck,\ falls\ k\ in\ der\ Knotenliste\ vorhanden\ ist.\ \n\ Bei\ ungerichteten\ Graphen\ wird\ nicht\ zwischen\ eingehenden\ und\ ausgehenden\ Kanten\ \n\ unterschieden.\n\n\ @param\ \ \ k\ \ \ \ \ \ \ \ Knoten,\ zu\ dem\ die\ Kanten\ gesucht\ werden\n\ @param\ \ \ filter\ \ \ optionaler\ Filter,\ der\ auf\ die\ Liste\ angewendet\ wird.\ Er\ muss\ einen\ boolean-Wert\ zur\u00FCckgeben\:\ z.B.\ @literal{k->k.isMarkiert()\ &&\ k.isBesucht()}\n\ @return\ \ Liste\ der\ eingehenden\ Kanten.\n -comment24.params=knotennr -comment24.target=Knoten\ getKnoten(int) -comment24.text=\n\ Liefert\ einen\ Knoten\ des\ Graphen\n\ @param\ knotennr\ Nummer\ der\ Knoten\ (beginnend\ mit\ 0)\n\ @return\ liefert\ den\ Knoten\ mit\ dieser\ Nummer\n -comment25.params=k -comment25.target=void\ neuerKnoten(Knoten) -comment25.text=\n\ F\u00FCgt\ einen\ Knoten\ dem\ Graph\ hinzu.\n\ @param\ \ k\ \ \ \ Der\ Knoten,\ der\ hinzugefuegt\ werden\ soll\n -comment26.params=knotennr -comment26.target=void\ entferneKnoten(int) -comment26.text=\n\ Entfernt\ einen\ Knoten\ aus\ dem\ Graphen\n\n\ @param\ \ \ knotennr\ \ \ \ Nummer\ des\ Knotens,\ der\ geloescht\ werden\ soll\n -comment27.params=k -comment27.target=boolean\ entferneKnoten(Knoten) -comment27.text=\n\ Entfernt\ einen\ Knoten\ aus\ dem\ Graphen\n\n\ @param\ \ \ k\ \ \ \ Knoten,\ der\ geloescht\ werden\ soll\n\ @return\ \ gibt\ zur\u00FCck,\ ob\ der\ Knoten\ erfolgreich\ entfernt\ wurde.\n -comment28.params=e -comment28.target=boolean\ isKanteEnthalten(Kante) -comment28.text=\n\ Ueberprueft,\ ob\ eine\ Kante\ im\ Graphen\ enthalten\ ist.\n\n\ @param\ \ \ e\ \ \ \ \ Die\ zu\ suchende\ Kante\n\ @return\ \ Kante\ enthalten\ (true)\ oder\ nicht\ (false)\n -comment29.params=startNr\ zielNr -comment29.target=boolean\ isKanteEnthalten(int,\ int) -comment29.text=\n\ Ueberprueft,\ ob\ eine\ Kante\ im\ Graphen\ enthalten\ ist.\ \n\ In\ ungerichteten\ Graphen\ wird\ nicht\ zwischen\ Start-\ und\ Zielknoten\ unterschieden\n\n\ @param\ \ \ startNr\ \ \ \ Nummer\ des\ Startknotens\n\ @param\ \ \ zielNr\ \ \ \ \ Nummer\ des\ Zielknotens\n\ @return\ \ boolean\ \ \ \ \ Kante\ enthalten\ (true)\ oder\ nicht\ (false)\n -comment3.params= -comment3.target=void\ loescheGraph() -comment3.text=\n\ L\u00F6scht\ alle\ Knoten\ und\ Kanten\ eines\ Graphen\ und\ stellt\ auf\ ungerichtet\ und\ ungewichtet\ zur\u00FCck.\n -comment30.params=start\ ziel -comment30.target=boolean\ isKanteEnthalten(Knoten,\ Knoten) -comment30.text=\n\ Ueberprueft,\ ob\ eine\ Kante\ im\ Graphen\ enthalten\ ist.\ \n\ In\ ungerichteten\ Graphen\ wird\ nicht\ zwischen\ Start-\ und\ Zielknoten\ unterschieden\n\n\ @param\ \ \ start\ \ \ \ Startknoten\n\ @param\ \ \ ziel\ \ \ \ \ Zielknoten\n\ @return\ \ boolean\ \ \ \ \ Kante\ enthalten\ (true)\ oder\ nicht\ (false)\n -comment31.params=start\ ziel -comment31.target=Kante\ getKante(Knoten,\ Knoten) -comment31.text=\n\ Gibt\ eine\ gesuchte\ Kante\ aus\ dem\ Graphen\ zurueck.\n\ In\ ungerichteten\ Graphen\ wird\ nicht\ zwischen\ Start-\ und\ Zielknoten\ unterschieden\n\n\ @param\ \ \ start\ \ \ \ Der\ StartKnoten\n\ @param\ \ \ ziel\ \ \ \ \ Der\ StartKnoten\n\ @return\ \ \ \ Die\ gesuchte\ Kante\n -comment32.params=startnr\ zielnr -comment32.target=Kante\ getKante(int,\ int) -comment32.text=\n\ Gibt\ eine\ gesuchte\ Kante\ aus\ dem\ Graphen\ zurueck.\n\ In\ ungerichteten\ Graphen\ wird\ nicht\ zwischen\ Start-\ und\ Zielknoten\ unterschieden\n\n\ @param\ \ \ startnr\ \ \ \ Der\ Nummer\ des\ StartKnoten\n\ @param\ \ \ zielnr\ \ \ \ \ Die\ Nummer\ des\ Zielknoten\n\ @return\ \ Die\ gesuchte\ Kante\n -comment33.params=e -comment33.target=void\ neueKante(Kante) -comment33.text=\n\ Fuegt\ eine\ Kante\ dem\ Graphen\ hinzu.\n\ Dabei\ wird\ ueberprueft,\ ob\ die\ Kante\ schon\ im\ Graphen\ enthalten\ ist.\n\ \n\ Ist\ der\ Graph\ ungerichtet,\ werden\ sowohl\ "Hin-"\ und\ "RueckKante"\ erstellt.\n\n\ @param\ \ \ e\ \ \ \ \ Die\ Kante,\ die\ hinzugefuegt\ werden\ soll\n -comment34.params=start\ ziel\ gewicht -comment34.target=void\ neueKante(Knoten,\ Knoten,\ double) -comment34.text=\n\ Fuegt\ eine\ Kante\ dem\ Graphen\ hinzu.\n\ Dabei\ wird\ ueberprueft,\ ob\ die\ Kante\ schon\ im\ Graphen\ enthalten\ ist.\n\ \n\ Ist\ der\ Graph\ ungerichtet,\ werden\ sowohl\ "Hin-"\ und\ "RueckKante"\ erstellt.\n\n\ @param\ \ \ start\ \ \ \ \ Der\ StartKnoten\ der\ Kante,\ die\ hinzugefuegt\ werden\ soll\n\ @param\ \ \ ziel\ \ \ \ \ Der\ ZielKnoten\ der\ Kante,\ die\ hinzugefuegt\ werden\ soll\n\ @param\ \ \ gewicht\ \ \ \ \ Das\ Gewicht\ der\ Kante,\ die\ hinzugefuegt\ werden\ soll\n -comment35.params=e -comment35.target=void\ entferneKante(Kante) -comment35.text=\n\ Entfernt\ eine\ Kante\ aus\ dem\ Graphen.\n\ Ist\ der\ Graph\ ungerichtet,\ werden\ sowohl\ "Hin-"\ und\ "RueckKante"\ entfernt.\n\n\ @param\ \ \ e\ Die\ zu\ entfernende\ Kante\n -comment36.params=start\ ziel -comment36.target=void\ entferneKante(Knoten,\ Knoten) -comment36.text=\n\ Entfernt\ eine\ Kante\ aus\ dem\ Graphen.\n\ Dabei\ wird\ ueberprueft,\ ob\ die\ Kante\ ueberhaupt\ im\ Graphen\ enthalten\ ist.\n\ \n\ Ist\ der\ Graph\ ungerichtet,\ werden\ sowohl\ "Hin-"\ und\ "RueckKante"\ entfernt.\n\n\ @param\ \ \ start\ \ \ \ StartKnotens\n\ @param\ \ \ ziel\ \ \ \ \ ZielKnotens\n -comment37.params=startnr\ zielnr -comment37.target=void\ entferneKante(int,\ int) -comment37.text=\n\ Entfernt\ eine\ Kante\ aus\ dem\ Graphen.\n\ Ist\ der\ Graph\ ungerichtet,\ werden\ sowohl\ "Hin-"\ und\ "RueckKante"\ entfernt.\n\n\ @param\ \ \ startnr\ \ \ \ Nummer\ des\ StartKnotens\n\ @param\ \ \ zielnr\ \ \ \ \ Nummer\ des\ ZielKnotens\n -comment38.params= -comment38.target=boolean\ isLeer() -comment38.text=\n\ Ueberprueft,\ ob\ die\ Adjazenzliste\ leer\ ist,\ d.h.\ keine\ Knoten\ im\ Graphen\ enthalten\ sind.\n\ \n\ @return\ \ \ true,\ wenn\ die\ Liste\ leer\ ist,\ sonst\ false\n -comment39.params= -comment39.target=void\ loescheAlles() -comment39.text=\n\ Loescht\ den\ gesamten\ Graphen\n -comment4.params=csvParser -comment4.target=boolean\ ladeGraph(imp.Table) -comment4.text=\n\ Ein\ Graph\ wird\ aus\ einer\ csv-Datei\ erstellt,\ die\ entweder\n\ eine\ Matrix\ oder\ eine\ Adjazenzliste\ enth\u00E4lt,\ die\ den\ Graph\ beschreibt.\n\n\ @param\ \ csvParser\ \ \ Eine\ CSV-Datei\ als\ Table-Objekt\n\ @return\ gibt\ zur\u00FCck,\ ob\ das\ Laden\ erfolgreich\ war\n -comment40.params=asMatrix -comment40.target=java.lang.String\ toCSVString(boolean) -comment40.text=\n\ Die\ Methode\ erstellt\ eine\ CSV-Ausgabe\ des\ Graphen\ entweder\ als\ Adjazenzliste\ oder\ als\ Adjazenzmatrix.\n\n\ @param\ \ \ asMatrix\ \ \ \ true,\ falls\ die\ CSV-Ausgabe\ eine\ AdjazenzMatrix\ sein\ soll,\ sonst\ false\n\ @return\ \ CSV-Ausgabe\n -comment41.params= -comment41.target=java.lang.String\ toString() -comment41.text=\n\ Textuelle\ Repraesentation\ des\ Graphen.\n\ \n\ @return\ \ Der\ Graph\ als\ Stringrepraesentation\n -comment42.params= -comment42.target=void\ ausgabe() -comment42.text=\n\ Konsolenausgabe\ der\ textuellen\ Repraesentation\ des\ Graphen.\n -comment43.params=k\ zeigeWert -comment43.target=java.lang.String\ getKnoteninfo(Knoten,\ boolean) -comment43.text=\n\ Info\ \u00FCber\ einen\ Knoten\ zur\u00FCckgeben\ \n\ @param\ k\ Knoten,\ des\ Info\ ermittelt\ werden\ soll\n\ @param\ zeigeWert\ Soll\ der\ Wert\ des\ Knoten\ in\ der\ Info\ enthalten\ sein\n\ @return\ Infotext\ oder\ Nummer\ des\ Knoten\ und\ ggf.\ sein\ Wert\n -comment44.params= -comment44.target=java.util.List\ getStatus() -comment44.text=\ Speichert\ den\ Zustand\ des\ Graphen\ als\ String-List\n\ @return\ List\ mit\ Zustand\n -comment45.params=status -comment45.target=void\ setStatus(java.util.List) -comment45.text=\ Stellt\ den\ Zustand\ des\ Graphen\ aus\ String-List\ wieder\ her\n\ @param\ status\ List\ mit\ Zustand\n -comment5.params=isGewichtet -comment5.target=void\ setGewichtet(boolean) -comment5.text=\n\ Legt\ fest,\ ob\ der\ Graph\ gewichtet\ oder\ ungewichtet\ ist.\n\n\ @param\ isGewichtet\ neuer\ Wert\n -comment6.params= -comment6.target=boolean\ isGewichtet() -comment6.text=\n\ Gibt\ zurueck,\ ob\ der\ Graph\ gewichtet\ oder\ ungewichtet\ ist\n\n\ @return\ gewichtet?\ (true/false)\n -comment7.params=isGerichtet -comment7.target=void\ setGerichtet(boolean) -comment7.text=\n\ Legt\ fest,\ ob\ der\ Graph\ gerichtet\ oder\ ungerichtet\ ist.\n\n\ @param\ \ isGerichtet\ neuer\ Wert\n -comment8.params= -comment8.target=boolean\ isGerichtet() -comment8.text=\n\ Gibt\ zurueck,\ ob\ der\ Graph\ gerichtet\ oder\ ungerichtet\ ist.\n\n\ @return\ \ gerichtet?\ (true/false)\n -comment9.params=k -comment9.target=int\ getNummer(Knoten) -comment9.text=\ Gibt\ die\ Nummer\ eines\ Knotens\ im\ Graphen\ zur\u00FCck\n\ @param\ \ k\ \ gesuchter\ Knoten\n\ @return\ Nummer\ des\ Knotens\ (mit\ 0\ beginnend)\n -numComments=46 diff --git a/graph/GraphElement.ctxt b/graph/GraphElement.ctxt deleted file mode 100644 index dcc5d91..0000000 --- a/graph/GraphElement.ctxt +++ /dev/null @@ -1,10 +0,0 @@ -#BlueJ class context -comment0.target=GraphElement -comment0.text=\n\ Die\ Klasse\ GraphElement\ ist\ eine\ Oberklasse\ von\ Knoten\ und\ Kanten.\n\ Sie\ ist\ nur\ f\u00FCr\ die\ interne\ Verarbeitung\ wichtig.\n\n\ @author\ Thomas\ Schaller\n\ @version\ v1.1\n -comment1.params=e -comment1.target=int\ compareTo(GraphElement) -comment2.params= -comment2.target=java.lang.String\ getStatus() -comment3.params=status -comment3.target=void\ setStatus(java.lang.String) -numComments=4 diff --git a/graph/GraphOptions.ctxt b/graph/GraphOptions.ctxt deleted file mode 100644 index ebf18f0..0000000 --- a/graph/GraphOptions.ctxt +++ /dev/null @@ -1,12 +0,0 @@ -#BlueJ class context -comment0.target=GraphOptions -comment0.text=\n\ Die\ Klasse\ GraphOptions\ speichert,\ wie\ ein\ Graph\ in\ einem\ Fenster\ vom\ \n\ GraphPlotter\ angezeigt\ wird.\n\n\ @author\ Thomas\ Schaller\n\ @version\ v6.7\ (9.12.2020)\n -comment1.params= -comment1.target=GraphOptions() -comment2.params=csvParser -comment2.target=void\ ladeGraph(imp.Table) -comment3.params= -comment3.target=java.lang.String\ getText() -comment4.params= -comment4.target=GraphOptions\ copy() -numComments=5 diff --git a/graph/GraphPlotter.ctxt b/graph/GraphPlotter.ctxt deleted file mode 100644 index 9460701..0000000 --- a/graph/GraphPlotter.ctxt +++ /dev/null @@ -1,57 +0,0 @@ -#BlueJ class context -comment0.target=GraphPlotter -comment0.text=\n\ Der\ GraphPlotter\ ist\ das\ Herzstueck\ der\ Visualisierung\ und\ dient\ als\ Schnittstelle\ zur\ GUI.\n\ \n\ @author\ Thomas\ Schaller\n\ @version\ 09.12.2020\ (v6.7)\n -comment1.params= -comment1.target=GraphPlotter() -comment1.text=\n\ Der\ Konstruktor\ legt\ sowohl\ Einstellungen\ des\ mxGraphen\ (Drag&Drop,\ Editable,\ ...)\ als\ auch\ des\ Graphen\ (gewichtet,\ gerichtet,\ ...)\ fest.\n\n\ @param\ \ boolean\ isDirected\ \ Gibt\ an,\ ob\ der\ Graph\ gerichtet\ oder\ ungerichtet\ ist\n\ @param\ \ boolean\ isWeighted\ \ Gibt\ an,\ ob\ der\ Graph\ gewichtet\ oder\ ungewichtet\ ist\n\ @param\ \ String\ hintergrundBild\ \ \ Gibt\ den\ Namen\ eines\ Hintergrundbildes\ an\n -comment10.params=x\ y -comment10.target=Knoten\ getKnotenAt(int,\ int) -comment11.params=x\ y -comment11.target=Kante\ getKanteAt(int,\ int) -comment12.params=p\ startx\ starty\ endx\ endy -comment12.target=void\ drawArrow(imp.Picture,\ int,\ int,\ int,\ int) -comment13.params=color -comment13.target=java.lang.String\ darker(java.lang.String) -comment14.params=color -comment14.target=java.lang.String\ brighter(java.lang.String) -comment15.params=d -comment15.target=java.lang.String\ format(double) -comment16.params= -comment16.target=imp.Picture\ updateImage() -comment17.params= -comment17.target=GraphOptions\ getGraphOptions() -comment18.params= -comment18.target=Graph\ getGraph() -comment18.text=\n\ Gibt\ den\ Graphen\ zurueck.\n\ \n\ @return\ \ Graph\n -comment19.params= -comment19.target=Knoten\ getSelectedKnoten() -comment19.text=\n\ Gibt\ das\ selektierte\ Knotenobjekt\ zurueck.\n\ \n\ @return\ \ Object\n -comment2.params= -comment2.target=void\ setEditable() -comment20.params= -comment20.target=java.util.List\ getSelectedKnotenListe() -comment20.text=\n\ Gibt\ die\ selektierte\ KnotenobjektListe\ (als\ Array)\ zurueck.\n\ \n\ @return\ \ Object[]\n -comment21.params= -comment21.target=Kante\ getSelectedKante() -comment21.text=\n\ Gibt\ das\ selektierte\ Kantenobjekt\ zurueck.\n\ \n\ @return\ \ Object\n -comment22.params= -comment22.target=java.lang.String\ toString() -comment22.text=\n\ Ueberschreibt\ die\ Methode\ toString.\ Eine\ String-Repraesentation\ des\ GraphPlotters\ wird\ ausgegeben.\n\n\ @return\ \ String\ \ Die\ String-Repraesentation\ des\ GraphPlotters\n -comment23.params= -comment23.target=void\ ausgabe() -comment23.text=\n\ Gibt\ die\ String-Repraesentation\ des\ GraphPlotters\ auf\ der\ Konsole\ aus.\n -comment3.params=graph\ options -comment3.target=void\ setGraph(Graph,\ GraphOptions) -comment4.params=k -comment4.target=void\ setRestrictTo(GraphElement) -comment5.params= -comment5.target=GraphElement\ getRestrictTo() -comment6.params=mouseEvent -comment6.target=void\ mouseClicked(javafx.scene.input.MouseEvent) -comment7.params=mouseEvent -comment7.target=void\ mouseDown(javafx.scene.input.MouseEvent) -comment8.params=mouseEvent -comment8.target=void\ mouseDragged(javafx.scene.input.MouseEvent) -comment9.params=mouseEvent -comment9.target=void\ mouseUp(javafx.scene.input.MouseEvent) -numComments=24 diff --git a/graph/Hilfe.ctxt b/graph/Hilfe.ctxt deleted file mode 100644 index 5908eb5..0000000 --- a/graph/Hilfe.ctxt +++ /dev/null @@ -1,15 +0,0 @@ -#BlueJ class context -comment0.target=Hilfe -comment1.params= -comment1.target=void\ loescheAlles() -comment2.params=text -comment2.target=void\ append(java.lang.String) -comment3.params= -comment3.target=void\ indentMore() -comment4.params= -comment4.target=void\ indentLess() -comment5.params=gp -comment5.target=void\ setGraphPlotter(GraphPlotter) -comment6.params=a -comment6.target=void\ setReviewAllowed(boolean) -numComments=7 diff --git a/graph/Kante.ctxt b/graph/Kante.ctxt deleted file mode 100644 index 2be0d9a..0000000 --- a/graph/Kante.ctxt +++ /dev/null @@ -1,64 +0,0 @@ -#BlueJ class context -comment0.target=Kante -comment0.text=\n\ Die\ Klasse\ Kante\ beschreibt\ die\ Datenstruktur\ einer\ Kante,\ bestehend\ aus\ Startknoten,\ Gewicht\ und\ Zielknoten.\n\ Da\ Kanten\ innerhalb\ von\ Adjazenzlisten\ und\ -Matrizen\ repraesentiert\ werden,\ ist\ diese\ Klasse\ eigentlich\ unnoetig\!\n\ Sie\ wurde\ zum\ Zweck\ der\ Vereinfachung\ -\ sozusagen\ als\ Zwischenspeicher\ von\ Kanten\ -\ eingefuehrt.\n\ Auch\ soll\ sie\ das\ Kantengewicht\ verwalten\ und\ Aufschluss\ darueber\ geben,\ ob\ sie\ gefaerbt/geloescht\ ist\ oder\ nicht.\n\ \n\ @author\ \ Dirk\ Zechnall,\ Thomas\ Schaller\n\ @version\ 22.07.2020\ (v6.4)\n -comment1.params=neuerStart\ neuerZiel\ neuesGewicht -comment1.target=Kante(Knoten,\ Knoten,\ double) -comment1.text=\n\ Der\ Konstruktor\ erstellt\ eine\ neue\ Kante\ mit\ Start-\ und\ Zielknoten\ und\ Kantengewicht.\n\ Die\ Kante\ ist\ zu\ Beginn\ ungefaerbt.\n\n\ @param\ \ neuerStart\ \ Der\ neue\ Startknoten\n\ @param\ \ neuerZiel\ \ Der\ neue\ Zielknoten\n\ @param\ \ neuesGewicht\ \ Das\ neue\ Kantengewicht\n -comment10.params= -comment10.target=Knoten\ getZiel() -comment10.text=\n\ Gibt\ den\ Zielknoten\ der\ Kante\ zurueck\n\ \n\ @return\ \ Zielknoten\n -comment11.params=k -comment11.target=Knoten\ getAnderesEnde(Knoten) -comment11.text=\n\ Gibt\ Knoten\ am\ anderen\ Ende\ der\ Kante\ zurueck\n\ @param\ k\ Knoten\ am\ ersten\ Ende\ der\ Kante\n\ @return\ \ Knoten\ am\ anderen\ Ende\n -comment12.params=wert -comment12.target=void\ setMarkiert(boolean) -comment12.text=\n\ Setzt\ das\ markiert-Attribut\ der\ Kante\n\n\ @param\ \ wert\ \ Der\ neu\ zu\ setzende\ markiert-Wert\n -comment13.params= -comment13.target=boolean\ isMarkiert() -comment13.text=\n\ Gibt\ zur\u00FCck,\ ob\ die\ Kanten\ markiert\ ist\n\ \n\ @return\ \ markiert?\n -comment14.params=wert -comment14.target=void\ setGeloescht(boolean) -comment14.text=\n\ Setzt\ das\ gel\u00F6scht-Attribut\ der\ Kante\n\n\ @param\ \ wert\ \ Der\ neu\ zu\ setzende\ gel\u00F6scht-Wert\n -comment15.params= -comment15.target=boolean\ isGeloescht() -comment15.text=\n\ Gibt\ den\ gel\u00F6scht-Wert\ der\ Kante\ zurueck\n\ \n\ @return\ \ gel\u00F6scht?\n -comment16.params= -comment16.target=int\ getFarbe() -comment16.text=\n\ Gibt\ zurueck,\ in\ welcher\ Farbe\ die\ Kante\ gezeichnet\ werden\ soll.\n\ Ist\ die\ Farbe\ nicht\ gesetzt,\ dann\ wird\ eine\ unmarkierte\ Kante\ in\ Farbe\ 1\ \n\ und\ eine\ markierte\ in\ Farbe\ 2\ gezeichnet.\n\ @return\ Nummer\ der\ Farbe\n -comment17.params=farbe -comment17.target=void\ setFarbe(int) -comment17.text=\n\ Setzt\ die\ Farbe\ auf\ einen\ bestimmten\ Farbindex\n\ @param\ farbe\ Index\ der\ Farbe\ (0-19)\n -comment18.params= -comment18.target=void\ setStandardFarbe() -comment18.text=\n\ Setzt\ die\ Farbe\ auf\ die\ Standardfarbgebung\ zur\u00FCck\n -comment19.params=e -comment19.target=int\ compareTo(GraphElement) -comment19.text=\ Vergleicht\ die\ Kante\ mit\ einer\ anderen\ Kante\ bez\u00FCglich\ ihres\ Gewichts\n\ @param\ e\ andere\ Kante\n\ @return\ kleiner\ 0\ die\ andere\ Kante\ hat\ ein\ gr\u00F6\u00DFeres\ Gewicht,\ gr\u00F6\u00DFer\ 0\ die\ andere\ Kante\ hat\ ein\ kleineres\ Gewicht,\ gleich\ 0\ beides\ sind\ gleich\n -comment2.params= -comment2.target=void\ init() -comment2.text=\n\ Die\ Methode\ init\ initialisiert\ die\ Kantenfaerbung\ (auf\ unmarkiert)\n -comment20.params= -comment20.target=java.lang.String\ toString() -comment20.text=\n\ Die\ Methode\ ueberschreibt\ die\ Methode\ toString()\ und\ gibt\ die\ String-Raepraesentation\ einer\ Kante\ zurueck\n\ \n\ @return\ \ \ \ \ \ String-Raepraesentation\ der\ Kante\n -comment3.params=status -comment3.target=void\ setStatus(java.lang.String) -comment3.text=\n\ Setzt\ den\ Status\ einer\ Kante,\ der\ in\ einem\ String\ gespeichert\ ist.\n\ Form\:\ markiert,geloescht,farbe\ \n\ Dabei\ sind\ markiert\ und\ geloescht\ boolsche\ Werte\ (0\ \=\ false,\ 1\ \=\ true)\ und\n\ die\ farbe\ eine\ Zahl\n\ @param\ status\ \ Statusstring\n -comment4.params= -comment4.target=java.lang.String\ getStatus() -comment4.text=\n\ Liefert\ den\ Status\ einer\ Kante\ als\ String.\n\ Form\:\ markiert,geloescht,farbe\ \n\ Dabei\ sind\ markiert\ und\ geloescht\ boolsche\ Werte\ (0\ \=\ false,\ 1\ \=\ true)\ und\n\ die\ farbe\ eine\ Zahl\n\ @return\ Statusstring\n -comment5.params=neuesGewicht -comment5.target=void\ setGewicht(double) -comment5.text=\n\ Setzt\ das\ Gewicht\ der\ Kante\n\n\ @param\ \ neuesGewicht\ \ Das\ neu\ zu\ setzende\ Gewicht\n -comment6.params= -comment6.target=double\ getGewicht() -comment6.text=\n\ Gibt\ das\ Gewicht\ der\ Kante\ zurueck\n\ \n\ @return\ \ Gewicht\ der\ Kante\n -comment7.params=neuerSatrtKnoten -comment7.target=void\ setStart(Knoten) -comment7.text=\n\ Setzt\ den\ Startknoten\ der\ Kante\n\n\ @param\ \ neuerSatrtKnoten\ \ Der\ neu\ zu\ setzende\ Startknoten\n -comment8.params= -comment8.target=Knoten\ getStart() -comment8.text=\n\ Gibt\ den\ Startknoten\ der\ Kante\ zurueck\n\ \n\ @return\ \ Startknoten\n -comment9.params=neuerZielKnoten -comment9.target=void\ setZiel(Knoten) -comment9.text=\n\ Setzt\ den\ Zielknoten\ der\ Kante\n\n\ @param\ \ neuerZielKnoten\ \ Der\ neu\ zu\ setzende\ Zielknoten\n -numComments=21 diff --git a/graph/Knoten.ctxt b/graph/Knoten.ctxt deleted file mode 100644 index 4ec16d9..0000000 --- a/graph/Knoten.ctxt +++ /dev/null @@ -1,76 +0,0 @@ -#BlueJ class context -comment0.target=Knoten -comment0.text=\n\ Diese\ Klasse\ Knoten\ definiert\ einen\ Knoten.\n\ Knoten\ haben\ eine\ Position,\ eine\ Farbe\ und\ einen\ Wert\ f\u00FCr\ sonstige\ Codierungszwecke\ und\ sind\ markiert\ und/oder\ besucht.\n\ Im\ Infotext\ kann\ eine\ zus\u00E4tzliche\ Information\ f\u00FCr\ die\ Anzeige\ gespeichert\ werden.\n\ \n\ @author\ Dirk\ Zechnall,\ Thomas\ Schaller\n\ @version\ 22.07.2020\ (v6.4)\n -comment1.params=x\ y -comment1.target=Knoten(int,\ int) -comment1.text=\n\ Der\ Konstruktor\ erstellt\ einen\ neuen\ Knoten\ mit\ einem\ neuen\ Namen\n\n\ @param\ \ x\ \ x-Position\ des\ Knotens\n\ @param\ \ y\ \ y-Position\ des\ Knotens\n -comment10.params= -comment10.target=double\ getDoubleWert() -comment10.text=\n\ Gibt\ den\ Wert\ vom\ Knoten\ als\ Double-Wert\ zurueck\n\ \n\ @return\ \ Wert\ des\ Knotens\n -comment11.params=markiert -comment11.target=void\ setMarkiert(boolean) -comment11.text=\n\ Setzt\ das\ Markiertattribut\ vom\ Knoten\n\n\ @param\ \ markiert\ \ Der\ neu\ zu\ setzende\ Markiertwert\n -comment12.params= -comment12.target=boolean\ isMarkiert() -comment12.text=\n\ Gibt\ den\ Markiertwert\ vom\ Knoten\ zurueck\n\ \n\ @return\ \ markiert?\n -comment13.params=markiert -comment13.target=void\ setBesucht(boolean) -comment13.text=\n\ Setzt\ das\ Besuchtattribut\ vom\ Knoten\n\n\ @param\ \ markiert\ \ Der\ neu\ zu\ setzende\ Besuchtwert\n -comment14.params= -comment14.target=boolean\ isBesucht() -comment14.text=\n\ Gibt\ den\ Besuchtwert\ vom\ Knoten\ zurueck\n\ \n\ @return\ \ besucht?\n -comment15.params= -comment15.target=int\ getFarbe() -comment15.text=\n\ Gibt\ den\ Index\ der\ Farbe\ des\ Knoten\ zur\u00FCck.\n\ Standardm\u00E4\u00DFig\ h\u00E4ngt\ die\ Farbe\ von\ den\ Attributen\ markiert\ und\ besucht\ ab.\n\ Durch\ Setzen\ der\ Farbe\ kann\ die\ Farbe\ gezielt\ gesetzt\ werden.\n\ @return\ Farbe\ des\ Knotens\n -comment16.params=farbe -comment16.target=void\ setFarbe(int) -comment16.text=\n\ Setzt\ den\ Index\ der\ Farbe\ des\ Knoten.\n\ Standardm\u00E4\u00DFig\ h\u00E4ngt\ die\ Farbe\ von\ den\ Attributen\ markiert,\ besucht\ und\ beendet\ ab.\n\ Durch\ Setzen\ der\ Farbe\ kann\ die\ Farbe\ gezielt\ gesetzt\ werden.\n\ @param\ farbe\ Index\ der\ Farbe\ (0-19)\n -comment17.params= -comment17.target=boolean\ isFarbeAutomatisch() -comment17.text=\ Gibt\ zur\u00FCck,\ ob\ die\ Knotenfarbe\ automatisch\ aus\ den\ Attributen\ ermittelt\ wird.\n\ @return\ true\=Farbe\ wird\ automatisch\ bestimmt,\ false\=Farbe\ wurde\ explizit\ gesetzt.\n\ \ \ \ \ \n -comment18.params=auto -comment18.target=void\ setFarbeAutomatisch(boolean) -comment18.text=\ Legt\ fest,\ ob\ die\ Knotenfarbe\ automatisch\ aus\ den\ Attributen\ ermittelt\ wird.\n\ @param\ auto\ true\=Farbe\ wird\ automatisch\ bestimmt,\n\ \ \ \ \ \ \ \ \ \ \ \ \ false\=Farbe\ wird\ explizit\ gesetzt.\n -comment19.params= -comment19.target=int\ getX() -comment19.text=\ Liefert\ die\ x-Position\ des\ Knotens\n\ @return\ x-Postion\n -comment2.params=x\ y\ neuerWert -comment2.target=Knoten(int,\ int,\ double) -comment2.text=\n\ Der\ Konstruktor\ erstellt\ einen\ neuen\ Knoten\ mit\ einem\ Startwert\n\n\ @param\ \ x\ \ x-Position\ des\ Knotens\n\ @param\ \ y\ \ y-Position\ des\ Knotens\ \ \ \ \n\ @param\ \ neuerWert\ \ Der\ neue\ Wert\ des\ Knotens\ \n -comment20.params= -comment20.target=int\ getY() -comment20.text=\ Liefert\ die\ y-Position\ des\ Knotens\n\ @return\ y-Postion\n -comment21.params=x -comment21.target=void\ setX(int) -comment21.text=\ Setzt\ die\ x-Position\ des\ Knotens\n\ @param\ x\ x-Postion\n -comment22.params=y -comment22.target=void\ setY(int) -comment22.text=\ Setzt\ die\ y-Position\ des\ Knotens\n\ @param\ y\ y-Postion\n -comment23.params=e -comment23.target=int\ compareTo(GraphElement) -comment23.text=\ Vergleicht\ den\ Knoten\ mit\ einem\ anderen\ Knoten\ bez\u00FCglich\ seines\ Werts\n\ @param\ e\ anderer\ Knoten\n\ @return\ kleiner\ 0\ der\ andere\ Knoten\ hat\ einen\ gr\u00F6\u00DFeren\ Wert,\ gr\u00F6\u00DFer\ 0\ der\ andere\ Knoten\ hat\ einen\ kleineren\ Wert,\ gleich\ 0\ beide\ sind\ gleich\n -comment24.params= -comment24.target=java.lang.String\ toString() -comment24.text=\n\ Die\ Methode\ ueberschreibt\ die\ Methode\ toString()\ und\ gibt\ die\ String-Raepraesentation\ eines\ Knotens\ zurueck\n\ \n\ @return\ \ \ \ \ \ String-Raepraesentation\ des\ Knotens\n -comment3.params=status -comment3.target=void\ setStatus(java.lang.String) -comment3.text=\n\ Setzt\ den\ Status\ eines\ Knotens\ aus\ einem\ Status-String\n\ Format\:\ wert,markiert,besucht,farbe\n\ wobei\ wert\ eine\ double-Zahl,\ mariert\ und\ besucht\ ein\ boolean-Wert\ (0\=false,\ 1\ \=\ true)\ und\n\ farbe\ eine\ zahl\ ist.\n\n\ @param\ \ status\ Der\ Statusstring\n -comment4.params= -comment4.target=java.lang.String\ getStatus() -comment4.text=\n\ Liefert\ den\ Status\ eines\ Knotens\ als\ Status-String\n\ Format\:\ wert,markiert,besucht,farbe\n\ wobei\ wert\ eine\ double-Zahl,\ mariert\ und\ besucht\ ein\ boolean-Wert\ (0\=false,\ 1\ \=\ true)\ und\n\ farbe\ eine\ zahl\ ist.\n\n\ @return\ Der\ Statusstring\n -comment5.params= -comment5.target=void\ init() -comment5.text=\n\ Die\ Methode\ init\ initialisiert\ den\ Zustand\ eines\ Knotens\n -comment6.params=infotext -comment6.target=void\ setInfotext(java.lang.String) -comment6.text=\ Setzt\ den\ Infotext\ f\u00FCr\ einen\ Knoten\n\ @param\ infotext\ Der\ neue\ Text\n -comment7.params= -comment7.target=java.lang.String\ getInfotext() -comment7.text=\ Liefert\ den\ Infotext\ des\ Knotens\n\ @return\ Der\ Infotext\n -comment8.params=neuerWert -comment8.target=void\ setWert(double) -comment8.text=\n\ Setzt\ den\ Wert\ beim\ Knoten\n\n\ @param\ \ neuerWert\ \ Der\ neu\ zu\ setzende\ Wert\n -comment9.params= -comment9.target=int\ getIntWert() -comment9.text=\n\ Gibt\ den\ Wert\ vom\ Knoten\ als\ Integer-Wert\ zurueck\n\ \n\ @return\ \ Wert\ des\ Knotens\n -numComments=25 diff --git a/imp/HSB.ctxt b/imp/HSB.ctxt deleted file mode 100644 index 44223b9..0000000 --- a/imp/HSB.ctxt +++ /dev/null @@ -1,16 +0,0 @@ -#BlueJ class context -comment0.target=HSB -comment0.text=\n\ Hilfsklasse\ f\u00FCr\ das\ HSB-Farbmodell\n\n\ @author\ Thomas\ Schaller\n\ @version\ V1.0\ 14.01.2020\n -comment1.params=c -comment1.target=double\ getHue(java.awt.Color) -comment1.text=\n\ Liefert\ den\ Farbton\ als\ Winkel\ zwischen\ 0.0\u00B0\ und\ 360.0\u00B0.\n\ @param\ Color\ c\ Farbe,\ deren\ Farbton\ bestimmt\ werden\ soll.\n\ @return\ Farbton\ \n -comment2.params=c -comment2.target=double\ getSaturation(java.awt.Color) -comment2.text=\n\ Liefert\ die\ S\u00E4ttigung\ als\ Wert\ zwischen\ 0.0\ (0%)\ und\ 1.0\ (100%).\n\ @param\ Color\ c\ Farbe,\ deren\ S\u00E4ttigung\ bestimmt\ werden\ soll.\n\ @return\ S\u00E4ttigung\n -comment3.params=c -comment3.target=double\ getBrightness(java.awt.Color) -comment3.text=\n\ Liefert\ die\ Helligkeit\ als\ Wert\ zwischen\ 0.0\ (0%)\ und\ 1.0\ (100%).\n\ @param\ Color\ c\ Farbe,\ deren\ Helligkeit\ bestimmt\ werden\ soll.\n\ @return\ S\u00E4ttigung\n -comment4.params=h\ s\ b -comment4.target=java.awt.Color\ getColor(double,\ double,\ double) -comment4.text=\n\ Liefert\ ein\ Java-Color-Objekt\ mit\ den\ angegebenen\ HSB-Werten.\n\ @param\ h\ Farbton\ (Hue)\n\ @param\ s\ S\u00E4ttigung\ (Saturation)\n\ @param\ b\ Brightness\ (Helligkeit)\n\ @return\ Java-Color-Objekt\n -numComments=5 diff --git a/imp/NumberField.ctxt b/imp/NumberField.ctxt deleted file mode 100644 index bfca8c5..0000000 --- a/imp/NumberField.ctxt +++ /dev/null @@ -1,15 +0,0 @@ -#BlueJ class context -comment0.target=NumberField -comment1.params=start\ end\ text -comment1.target=void\ replaceText(int,\ int,\ java.lang.String) -comment2.params=text -comment2.target=void\ replaceSelection(java.lang.String) -comment3.params= -comment3.target=double\ getDoubleValue() -comment4.params= -comment4.target=int\ getIntValue() -comment5.params=v -comment5.target=void\ setValue(double) -comment6.params=v -comment6.target=void\ setValue(int) -numComments=7 diff --git a/imp/Picture.ctxt b/imp/Picture.ctxt deleted file mode 100644 index 58ba907..0000000 --- a/imp/Picture.ctxt +++ /dev/null @@ -1,146 +0,0 @@ -#BlueJ class context -comment0.target=Picture -comment0.text=\n\n\ Bildklasse\ fuer\ die\ Simulation\ von\ Processing-Befehlen\n\ \n\ Diese\ Klasse\ stellt\ ein\ BufferedImage\ bereit,\ in\ das\ mit\ Processing-Befehlen\ gezeichnet\n\ werden\ kann.\ \n\ Zusaetzlich\ kann\ ein\ Bildanzeiger\ ueber\ jede\ Aenderung\ des\ Bildes\ informiert\ werden,\n\ um\ "Zurueck"-Befehle\ zu\ ermoeglichen.\ Der\ Bildanzeiger\ ist\ entweder\ eine\ normale\ Java\n\ ScrollPane\ oder\ ein\ Actor\ aus\ Greenfoot.\n\ Die\ Dokumentation\ der\ einzelnen\ Zeichenmethoden\ ist\ der\ Processing-Reference\ \n\ (https\://processing.org/reference/\ steht\ unter\ CC-Lizenz\:\ https\://creativecommons.org/)\ \n\ entnommen\ und\ mit\ Deepl.com\ ins\ Deutsche\ uebersetzt.\n\n\ @version\ 1.0\ from\ 23.01.2019\n\ @author\ Thomas\ Schaller\ (ZPG\ Informatik\ Klasse\ 9)\n -comment1.params= -comment1.target=Picture() -comment1.text=\ \n\ Erzeugt\ ein\ Bild\ mit\ Standardgroesse\ 500x400\n -comment10.params=width\ height -comment10.target=void\ size(int,\ int) -comment10.text=\n\ Definiert\ die\ Dimension\ der\ Breite\ und\ Hoehe\ des\ Anzeigefensters\ in\ Pixeleinheiten.\ \n\ Die\ eingebauten\ Variablen\ Breite\ und\ Hoehe\ werden\ durch\ die\ an\ diese\ Funktion\ uebergebenen\ Parameter\ festgelegt.\ So\ weist\ beispielsweise\ \n\ der\ Befehl\ size(640,\ 480)\ der\ Variablen\ Breite\ 640\ und\ der\ Variablen\ Hoehe\ 480\ zu.\ \n\ @param\ width\ Breite\ des\ Bildes\n\ @param\ height\ Hoehe\ des\ Bildes\n -comment11.params= -comment11.target=int\ getWidth() -comment11.text=\ \n\ Liefert\ die\ Breite\ des\ Bildes\ zurueck.\n\ @return\ Breite\ des\ Bildes\n -comment12.params= -comment12.target=int\ getHeight() -comment12.text=\ \n\ Liefert\ die\ Hoehe\ des\ Bildes\ zurueck.\n\ @return\ Hoehe\ des\ Bildes\n -comment13.params= -comment13.target=void\ pushImage() -comment13.text=\n\ Erzeugt\ eine\ Kopie\ des\ Bildes\ und\ uebergibt\ sie\ an\ den\ Observer\ (falls\ existent),\ damit\ dieser\ die\ Versionen\ speichern\ kann\n -comment14.params=autoRefresh -comment14.target=void\ setAutoRefresh(boolean) -comment14.text=\n\ Legt\ fest,\ ob\ nach\ jedem\ Zeichenbefehl\ automatisch\ das\ Bild\ auch\ in\n\ der\ Oberflaeche\ aktualisiert\ wird.\ Die\ Einstellung\ "false"\ beschleunigt\n\ das\ Zeichnen\ aufwaendiger\ Bilder\ und\ verhindert\ "Flackern".\n\ Das\ Neuzeichnen\ kann\ durch\ die\ Methode\ "refresh"\ gezielt\ ausgeloest\ werden.\n\ @param\ autorefresh\ true\ \=\ nach\ jedem\ Zeichenbefehl\ die\ Anzeige\ aktualisieren,\ false\=\ nur\ durch\ die\ Methode\ refresh\ neu\ zeichnen\n -comment15.params= -comment15.target=void\ repaint() -comment15.text=\n\ Auch\ die\ anzeigenden\ Klasse\ wird\ zum\ Neuzeichnen\ aufgefordert.\n -comment16.params= -comment16.target=void\ forceRepaint() -comment16.text=\n\ Ein\ repaint()\ (das\ Neuzeichnen)\ kann\ manuell\ erzwungen\ werden.\n -comment17.params= -comment17.target=void\ clear() -comment17.text=\ \n\ Loescht\ den\ Inhalt\ des\ Bildes.\n\ Der\ Hintergrund\ wird\ mit\ der\ Hintergrundfarbe\ neu\ gefuellt.\n -comment18.params=coord\ mode -comment18.target=void\ convert(int[],\ int) -comment18.text=\ \n\ Konvertiert\ die\ in\ einem\ bestimmten\ Modus\ gegebenen\ Koordinaten\ in\ die\ Java-uebliche\ Links_Oben_Breite_Hoehe\ Version\n\ Die\ Aenderungen\ werden\ direkt\ im\ Array\ vorgenommen\n\ @param\ coord\ Array\ mit\ vier\ Koordinateneintraegen\ im\ gegebenen\ Modus\n\ @param\ mode\ \ Modus\ der\ Koordinaten\ (CORNER,\ CORNERS,\ RADIUS\ oder\ CENTER)\n -comment19.params=mode -comment19.target=void\ rectMode(int) -comment19.text=\n\ Aendert\ den\ Koordinaten-Modus\ beim\ Zeichnen\ von\ Rechtecken.\n\ Aendert\ die\ Position,\ von\ der\ aus\ Rechtecke\ gezeichnet\ werden,\ indem\ es\ die\ Art\ und\ Weise\ aendert,\ wie\ Parameter,\ die\ an\ rect()\ uebergeben\ werden,\ interpretiert\ werden.\n\ Der\ Standardmodus\ ist\ rectMode(Bild.CORNER),\ der\ die\ ersten\ beiden\ Parameter\ von\ rect()\ als\ die\ linke\ obere\ Ecke\ der\ Form\ interpretiert,\ \n\ waehrend\ der\ dritte\ und\ vierte\ Parameter\ seine\ Breite\ und\ Hoehe\ sind.\n\ rectMode(Bild.CORNERS)\ interpretiert\ die\ ersten\ beiden\ Parameter\ von\ rect()\ als\ die\ Position\ einer\ Ecke\ \n\ und\ die\ dritten\ und\ vierten\ Parameter\ als\ die\ Position\ der\ gegenueberliegenden\ Ecke.\n\ rectMode(Bild.CENTER)\ interpretiert\ die\ ersten\ beiden\ Parameter\ von\ rect()\ als\ Mittelpunkt\ der\ Form,\ \n\ waehrend\ der\ dritte\ und\ vierte\ Parameter\ seine\ Breite\ und\ Hoehe\ sind.\n\ rectMode(RADIUS)\ verwendet\ auch\ die\ ersten\ beiden\ Parameter\ von\ rect()\ als\ Mittelpunkt\ der\ Form,\ \n\ verwendet\ aber\ den\ dritten\ und\ vierten\ Parameter,\ um\ die\ Haelfte\ der\ Breite\ und\ Hoehe\ der\ Formen\ festzulegen.\n\ @param\ mode\ Modus\ der\ Koordinateninterpretation\ (CORNER,\ CORNERS,\ CENTER\ oder\ RADIUS)\n -comment2.params=width\ height -comment2.target=Picture(int,\ int) -comment2.text=\n\ Erzeugt\ ein\ Bild\ der\ angegeben\ Groesse\n\ @param\ width\ Breite\ des\ Bildes\n\ @param\ height\ Hoehe\ des\ Bildes\n -comment20.params=mode -comment20.target=void\ ellipseMode(int) -comment20.text=\n\ Aendert\ den\ Koordinaten-Modus\ beim\ Zeichnen\ von\ Kreisen/Ellipsen.\n\ Aendert\ die\ Position,\ von\ der\ aus\ Kreise/Ellipsen\ gezeichnet\ werden,\ indem\ es\ die\ Art\ und\ Weise\ aendert,\ wie\ Parameter,\ die\ an\ ellipse()\ uebergeben\ werden,\ interpretiert\ werden.\n\ Der\ Standardmodus\ ist\ ellipseMode(Bild.CENTER),\ der\ die\ ersten\ beiden\ Parameter\ von\ ellipse()\ als\ Mittelpunkt\ der\ Form\ interpretiert,\ \n\ waehrend\ der\ dritte\ und\ vierte\ Parameter\ seine\ Breite\ und\ Hoehe\ sind.\n\ ellipseMode(Bild.CORNER)\ interpretiert\ die\ ersten\ beiden\ Parameter\ von\ ellipse()\ als\ die\ Position\ einer\ Ecke\ \n\ und\ die\ dritten\ und\ vierten\ Parameter\ als\ Breite\ und\ Hoehe\ der\ Form.\n\ ellipseMode(Bild.CORNERS)\ interpretiert\ die\ ersten\ beiden\ Parameter\ von\ ellipse()\ als\ die\ Position\ einer\ Ecke\ \n\ und\ die\ dritten\ und\ vierten\ Parameter\ als\ die\ Position\ der\ gegenueberliegenden\ Ecke.\n\ ellipseMode(RADIUS)\ verwendet\ auch\ die\ ersten\ beiden\ Parameter\ von\ ellipse()\ als\ Mittelpunkt\ der\ Form,\ \n\ verwendet\ aber\ den\ dritten\ und\ vierten\ Parameter,\ um\ die\ Haelfte\ der\ Breite\ und\ Hoehe\ der\ Formen\ festzulegen.\n\ @param\ mode\ Modus\ der\ Koordinateninterpretation\ (CORNER,\ CORNERS,\ CENTER\ oder\ RADIUS)\n -comment21.params=mode -comment21.target=void\ textMode(int) -comment21.text=\n\ Aendert\ den\ Koordinaten-Modus\ beim\ Zeichnen\ von\ Texten.\n\ Aendert\ die\ Position,\ an\ der\ Texte\ gezeichnet\ werden,\ indem\ es\ die\ Art\ und\ Weise\ aendert,\ wie\ Parameter,\ die\ an\ text()\ uebergeben\ werden,\ interpretiert\ werden.\n\ Der\ Standardmodus\ ist\ textMode(Bild.CORNER),\ der\ die\ Koordinaten\ von\ text()\ als\ \n\ linke\ untere\ Ecke\ des\ Textes\ interpretiert.\n\ textMode(Bild.CENTER)\ interpretiert\ sie\ als\ Koordinaten\ des\ Mittelpunktes\ des\ Textes..\n\ @param\ mode\ Modus\ der\ Koordinateninterpretation\ (CORNER,\ CENTER)\n -comment22.params=x1\ y1\ x2\ y2 -comment22.target=void\ line(int,\ int,\ int,\ int) -comment22.text=\n\ Zeichnet\ eine\ Linie\ (einen\ direkten\ Weg\ zwischen\ zwei\ Punkten)\ auf\ den\ Bildschirm.\ \n\ Um\ eine\ Linie\ einzufaerben,\ verwenden\ Sie\ die\ {@link\ \#stroke(int,\ int,\ int)\ stroke()}\ Funktion.\ Eine\ Zeile\ kann\ nicht\ gefuellt\ werden,\ daher\ hat\ die\ Funktion\ fill()\ keinen\ \n\ Einfluss\ auf\ die\ Farbe\ einer\ Zeile.\ Linien\ werden\ standardmaessig\ mit\ einer\ Breite\ von\ einem\ Pixel\ gezeichnet,\ dies\ kann\ jedoch\ mit\ der\ Funktion\ \n\ {@link\ \#strokeWeight(double)\ strokeWeight()}\ geaendert\ werden.\n\ @param\ x1\ x-Koordinate\ des\ 1.\ Punktes\n\ @param\ y1\ y-Koordinate\ des\ 1.\ Punktes\n\ @param\ x2\ x-Koordinate\ des\ 2.\ Punktes\n\ @param\ y2\ y-Koordinate\ des\ 2.\ Punktes\n -comment23.params=a\ b\ c\ d -comment23.target=void\ rect(int,\ int,\ int,\ int) -comment23.text=\n\ Zeichnet\ ein\ Rechteck\ auf\ das\ Bild.\ \n\ Standardmaessig\ legen\ die\ ersten\ beiden\ Parameter\ die\ Position\ der\ linken\ oberen\ Ecke\ fest,\ der\ dritte\ die\ Breite\ und\ der\ vierte\ die\ Hoehe.\ \n\ Die\ Art\ und\ Weise,\ wie\ diese\ Parameter\ interpretiert\ werden,\ kann\ jedoch\ mit\ der\ Funktion\ {@link\ \#rectMode(int)\ rectMode()}\ geaendert\ werden.\n\ Durch\ den\ Befehl\ {@link\ \#fill(int,int,int)\ fill()}\ /{@link\ \#noFill()\ noFill()}\ \ kann\ die\ Fuellfarbe\ des\ Rechtecks\ gewaehlt\ werden,\ durch\ {@link\ \#stroke(int,\ int,\ int)\ stroke()}/{@link\ \#noStroke()\ noStroke()}\ \ die\ Rahmenfarbe.\n\ @param\ a\ meist\ die\ x-Koordinate\ der\ linken\ oberen\ Ecke\ (kann\ durch\ rectMode()\ geaendert\ werden).\n\ @param\ b\ meist\ die\ y-Koordinate\ der\ linken\ oberen\ Ecke\ (kann\ durch\ rectMode()\ geaendert\ werden).\n\ @param\ c\ meist\ die\ Breite\ des\ Rechtecks\ (kann\ durch\ rectMode()\ geaendert\ werden).\n\ @param\ d\ meist\ die\ Hoehe\ des\ Rechtecks\ (kann\ durch\ rectMode()\ geaendert\ werden).\n\ \n -comment24.params=a\ b\ c\ d -comment24.target=void\ ellipse(int,\ int,\ int,\ int) -comment24.text=\n\ Zeichnet\ eine\ Ellipse/Kreis\ auf\ das\ Bild.\ \n\ Standardmaessig\ legen\ die\ ersten\ beiden\ Parameter\ die\ Position\ des\ Mittelpunkts\ fest,\ der\ dritte\ die\ Breite\ und\ der\ vierte\ die\ Hoehe.\ \n\ Die\ Art\ und\ Weise,\ wie\ diese\ Parameter\ interpretiert\ werden,\ kann\ jedoch\ mit\ der\ Funktion\ {@link\ \#ellipseMode(int)\ ellipseMode()}\ geaendert\ werden.\n\ Durch\ den\ Befehl\ {@link\ \#fill(int,int,int)\ fill()}\ /{@link\ \#noFill()\ noFill()}\ kann\ die\ Fuellfarbe\ des\ Rechtecks\ gewaehlt\ werden,\ durch\ {@link\ \#stroke(int,\ int,\ int)\ stroke()}/{@link\ \#noStroke()\ noStroke()}\ \ die\ Rahmenfarbe.\n\ @param\ a\ meist\ die\ x-Koordinate\ des\ Mittelpunkts\ (kann\ durch\ ellipseMode()\ geaendert\ werden).\n\ @param\ b\ meist\ die\ y-Koordinate\ des\ Mittelpunkts\ (kann\ durch\ ellipseMode()\ geaendert\ werden).\n\ @param\ c\ meist\ die\ Breite\ des\ Rechtecks\ (kann\ durch\ ellipseMode()\ geaendert\ werden).\n\ @param\ d\ meist\ die\ Hoehe\ des\ Rechtecks\ (kann\ durch\ ellipseMode()\ geaendert\ werden).\n\ \n -comment25.params=x1\ y1\ x2\ y2\ x3\ y3 -comment25.target=void\ triangle(int,\ int,\ int,\ int,\ int,\ int) -comment25.text=\n\ Zeichnet\ ein\ Dreieck\ auf\ das\ Bild.\ \n\ Ein\ Dreieck\ ist\ eine\ Ebene,\ die\ durch\ die\ Verbindung\ von\ drei\ Punkten\ entsteht.\ Die\ ersten\ beiden\ Argumente\ spezifizieren\ den\ \n\ ersten\ Punkt,\ die\ mittleren\ beiden\ Argumente\ spezifizieren\ den\ zweiten\ Punkt\ und\ die\ letzten\ beiden\ Argumente\ spezifizieren\ den\ dritten\ Punkt.\ \n\ Durch\ den\ Befehl\ {@link\ \#fill(int,int,int)\ fill()}\ /{@link\ \#noFill()\ noFill()}\ kann\ die\ Fuellfarbe\ des\ Rechtecks\ gewaehlt\ werden,\ durch\ {@link\ \#stroke(int,\ int,\ int)\ stroke()}/{@link\ \#noStroke()\ noStroke()}\ \ die\ Rahmenfarbe.\n\ @param\ x1\ meist\ die\ x-Koordinate\ des\ 1.\ Punkts.\n\ @param\ y1\ meist\ die\ y-Koordinate\ des\ 1.\ Punkts.\n\ @param\ x2\ meist\ die\ x-Koordinate\ des\ 2.\ Punkts.\n\ @param\ y2\ meist\ die\ y-Koordinate\ des\ 2.\ Punkts.\n\ @param\ x3\ meist\ die\ x-Koordinate\ des\ 3.\ Punkts.\n\ @param\ y3\ meist\ die\ y-Koordinate\ des\ 3.\ Punkts.\n -comment26.params=x1\ y1\ x2\ y2\ x3\ y3\ x4\ y4 -comment26.target=void\ quad(int,\ int,\ int,\ int,\ int,\ int,\ int,\ int) -comment26.text=\n\ Zeichnet\ ein\ Viereck\ auf\ das\ Bild.\ \n\ Ein\ Viereck\ ist\ ein\ vierseitiges\ Polygon.\ Es\ ist\ aehnlich\ wie\ ein\ Rechteck,\ aber\ die\ Winkel\ zwischen\ seinen\ Kanten\ \n\ sind\ nicht\ auf\ neunzig\ Grad\ beschraenkt.\ Das\ erste\ Paar\ von\ Parametern\ (x1,y1)\ setzt\ den\ ersten\ Scheitelpunkt\ und\ die\ nachfolgenden\ \n\ Paare\ sollten\ im\ Uhrzeigersinn\ oder\ gegen\ den\ Uhrzeigersinn\ um\ die\ definierte\ Form\ herum\ verlaufen.\ \n\ Durch\ den\ Befehl\ {@link\ \#fill(int,int,int)\ fill()}\ /{@link\ \#noFill()\ noFill()}\ kann\ die\ Fuellfarbe\ des\ Rechtecks\ gewaehlt\ werden,\ durch\ {@link\ \#stroke(int,\ int,\ int)\ stroke()}/{@link\ \#noStroke()\ noStroke()}\ \ die\ Rahmenfarbe.\n\ @param\ x1\ meist\ die\ x-Koordinate\ des\ 1.\ Punkts.\n\ @param\ y1\ meist\ die\ y-Koordinate\ des\ 1.\ Punkts.\n\ @param\ x2\ meist\ die\ x-Koordinate\ des\ 2.\ Punkts.\n\ @param\ y2\ meist\ die\ y-Koordinate\ des\ 2.\ Punkts.\n\ @param\ x3\ meist\ die\ x-Koordinate\ des\ 3.\ Punkts.\n\ @param\ y3\ meist\ die\ y-Koordinate\ des\ 3.\ Punkts.\n\ @param\ x4\ meist\ die\ x-Koordinate\ des\ 3.\ Punkts.\n\ @param\ y4\ meist\ die\ y-Koordinate\ des\ 3.\ Punkts.\n -comment27.params=x\ y -comment27.target=void\ polygon(int[],\ int[]) -comment27.text=\n\ Zeichnet\ ein\ Polygon\ auf\ das\ Bild.\n\ Gleich\ lange\ Listen\ von\ x\ und\ y-Koordinaten\ bestimmen\ die\ Eckpunkte\ des\ Polygons.\n\ Durch\ den\ Befehl\ {@link\ \#fill(int,int,int)\ fill()}\ /{@link\ \#noFill()\ noFill()}\ kann\ die\ Fuellfarbe\ des\ Rechtecks\ gewaehlt\ werden,\ durch\ {@link\ \#stroke(int,\ int,\ int)\ stroke()}/{@link\ \#noStroke()\ noStroke()}\ die\ Rahmenfarbe.\n\ @param\ x\ Liste\ der\ x-Koordinaten\ der\ Punkte.\n\ @param\ y\ Liste\ der\ y-Koordinaten\ der\ Punkte.\n -comment28.params=x\ y -comment28.target=void\ point(int,\ int) -comment28.text=\n\ Zeichnet\ einen\ Punkt,\ d.h.\ einen\ Kreis\ in\ der\ Dimension\ eines\ Pixels.\ \n\ Der\ erste\ Parameter\ ist\ der\ x-Wert\ fuer\ den\ Punkt,\ der\ zweite\ Wert\ ist\ der\ y-Wert\ fuer\ den\ Punkt.\ \n\ @param\ x\ x-Koordinate\ des\ Punktes\n\ @param\ y\ y-Koordinate\ des\ Punktes\n -comment29.params=s\ x\ y -comment29.target=void\ text(java.lang.String,\ int,\ int) -comment29.text=\n\ Gibt\ einen\ Text\ an\ den\ gegebenen\ Koordinaten\ aus\n\ Zur\ Ausgabe\ des\ Textes\ wird\ der\ ausgewaehlte\ Font\ verwendet.\ Dieser\ muss\ vorher\ mit\ {@link\ \#textFont(Font)\ textFont()\ }\ festgelegt.\n\ @param\ s\ Text,\ der\ angezeigt\ werden\ soll\n\ @param\ x\ x-Koordinate\ des\ Textanfangs\n\ @param\ y\ y-Koordinate\ der\ Grundlinie\ des\ Textes.\n -comment3.params=filename -comment3.target=Picture(java.lang.String) -comment3.text=\ \n\ Erzeugt\ ein\ Bild\ aus\ einer\ Datei\n\ @param\ filename\ Dateiname\ des\ Bildes\n -comment30.params=font -comment30.target=void\ textFont(java.awt.Font) -comment30.text=\n\ Legt\ die\ Schriftart\ fuer\ Textausgaben\ fest.\n\ Jeder\ uebliche\ Java-Font\ kann\ verwendet\ werden.\ Er\ kann\ mit\ z.B.\ Font\ f\ \=\ new\ Font(\ "Arial",\ Font.PLAIN,\ 14\ );\ definiert\ werden.\ \n\ @param\ font\ ein\ Font-Objekt\ \n -comment31.params=color -comment31.target=java.awt.Color\ decode(java.lang.String) -comment31.text=\ \n\ Hilfsfunktion\ zur\ Interpretation\ von\ Farben\n -comment32.params=color -comment32.target=java.awt.Color\ decode(int) -comment32.text=\ \n\ Hilfsfunktion\ zur\ Interpretation\ von\ Farben\n -comment33.params=pencolor -comment33.target=void\ stroke(java.lang.String) -comment33.text=\n\ Legt\ die\ Farbe\ fest,\ mit\ der\ Linien\ und\ Raender\ um\ Formen\ gezeichnet\ werden.\ \n\ Diese\ Farbe\ wird\ hexadezimal\ in\ Form\ der\ RGB\ angegeben\:\ z.B.\ \ "CCFFAA"\ oder\ "004E23".\ Die\ Syntax\ verwendet\ sechs\ Ziffern\ -\ je\ zwei\ fuer\ die\ roten,\ gruenen\ und\ blauen\ Komponenten,\n\ um\ eine\ Farbe\ anzugeben\ (genau\ wie\ Farben\ typischerweise\ in\ HTML\ und\ CSS\ angegeben\ werden).\ \n\ @param\ pencolor\ Stiftfarbe\ in\ Hexadezimaldarstellung\n -comment34.params=pencolor -comment34.target=void\ stroke(int) -comment34.text=\n\ Legt\ die\ Farbe\ fest,\ mit\ der\ Linien\ und\ Raender\ um\ Formen\ gezeichnet\ werden.\ \n\ Diese\ Farbe\ wird\ entweder\ als\ Graustufe\ (0-255)\ oder\ als\ 3-Byte\ RGB-Wert\ angegeben\n\ @param\ pencolor\ Stiftfarbe\ (0-255\:\ Graustufe\ zwischen\ 0\ schwarz\ und\ 255\ weiss,\ sonst\:\ c\ wird\ als\ 3-Byte\ RGB-Wert\ interpretiert)\n -comment35.params=r\ g\ b -comment35.target=void\ stroke(int,\ int,\ int) -comment35.text=\n\ Legt\ die\ Farbe\ fest,\ mit\ der\ Linien\ und\ Raender\ um\ Formen\ gezeichnet\ werden.\ \n\ Diese\ Farbe\ wird\ komponentenweise\ als\ RGB-Wert\ angegeben\n\ @param\ r\ Rotanteil\ (0-255)\ der\ Stiftfarbe\n\ @param\ g\ Gruenanteil\ (0-255)\ der\ Stiftfarbe\n\ @param\ b\ Blauanteil\ (0-255)\ der\ Stiftfarbe\n -comment36.params= -comment36.target=void\ noStroke() -comment36.text=\n\ Legt\ fest,\ dass\ keine\ Linien\ oder\ Raender\ um\ Formen\ gezeichnet\ werden\ soll.\ \n -comment37.params=width -comment37.target=void\ strokeWeight(double) -comment37.text=\n\ Legt\ die\ Breite\ des\ Strichs\ fuer\ Linien,\ Punkte\ und\ den\ Rand\ um\ Formen\ fest.\ \n\ Alle\ Breiten\ werden\ in\ Pixeleinheiten\ angegeben.\ \n\ @param\ width\ Breite\ in\ Pixel\n -comment38.params=fillcolor -comment38.target=void\ fill(java.lang.String) -comment38.text=\n\ Legt\ die\ Farbe\ fest,\ mit\ der\ Formen\ gefuellt\ werden.\ \n\ Diese\ Farbe\ wird\ hexadezimal\ in\ Form\ der\ RGB\ angegeben\:\ z.B.\ \ "CCFFAA"\ oder\ "004E23".\ Die\ Syntax\ verwendet\ sechs\ Ziffern\ -\ je\ zwei\ fuer\ die\ roten,\ gruenen\ und\ blauen\ Komponenten,\n\ um\ eine\ Farbe\ anzugeben\ (genau\ wie\ Farben\ typischerweise\ in\ HTML\ und\ CSS\ angegeben\ werden).\ \n\ @param\ fillcolor\ Fuellfarbe\ in\ Hexadezimaldarstellung\n -comment39.params=fillcolor -comment39.target=void\ fill(int) -comment39.text=\n\ Legt\ die\ Farbe\ fest,\ mit\ der\ Formen\ gefuellt\ werden.\n\ Diese\ Farbe\ wird\ entweder\ als\ Graustufe\ (0-255)\ oder\ als\ 3-Byte\ RGB-Wert\ angegeben.\n\ @param\ fillcolor\ Fuellfarbe\ (0-255\:\ Graustufe\ zwischen\ 0\ schwarz\ und\ 255\ weiss,\ sonst\:\ c\ wird\ als\ 3-Byte\ RGB-Wert\ interpretiert)\n -comment4.params=width\ height\ background -comment4.target=Picture(int,\ int,\ java.lang.String) -comment4.text=\n\ Erzeugt\ ein\ Bild\ der\ angegebenen\ Groesse\ mit\ festgelegtem\ Hintergrund\n\ @param\ width\ Breite\ des\ Bildes\n\ @param\ height\ Hoehe\ des\ Bildes\n\ @param\ background\ Farbe\ des\ Hintergrunds\n -comment40.params=r\ g\ b -comment40.target=void\ fill(int,\ int,\ int) -comment40.text=\n\ Legt\ die\ Farbe\ fest,\ mit\ der\ Formen\ gefuellt\ werden.\n\ Diese\ Farbe\ wird\ komponentenweise\ als\ RGB-Wert\ angegeben.\n\ @param\ r\ Rotanteil\ (0-255)\ der\ Fuellfarbe\n\ @param\ g\ Gruenanteil\ (0-255)\ der\ Fuellfarbe\n\ @param\ b\ Blauanteil\ (0-255)\ der\ Fuellfarbe\n -comment41.params= -comment41.target=void\ noFill() -comment41.text=\ Legt\ fest,\ dass\ die\ Formen\ nicht\ gefuellt\ werden\ sollen.\n -comment42.params=c -comment42.target=void\ background(int) -comment42.text=\n\ Die\ Funktion\ background()\ setzt\ die\ Farbe,\ die\ fuer\ den\ Hintergrund\ des\ Bildes\ verwendet\ wird.\ Der\ Standardhintergrund\ ist\ hellgrau.\ \n\ Es\ ist\ nicht\ moeglich,\ den\ Alpha-Parameter\ Transparenz\ mit\ Hintergrundfarben\ auf\ der\ Hauptzeichnungsoberflaeche\ zu\ verwenden.\ \n\ @param\ c\ Farbe\ fuer\ den\ Hintergrund\ (0-255\:\ Graustufe\ zwischen\ 0\ schwarz\ und\ 255\ weiss,\ sonst\:\ c\ wird\ als\ 3-Byte\ RGB-Wert\ interpretiert)\n -comment43.params=r\ g\ b -comment43.target=void\ background(int,\ int,\ int) -comment43.text=\n\ Die\ Funktion\ background()\ setzt\ die\ Farbe,\ die\ fuer\ den\ Hintergrund\ des\ Bildes\ verwendet\ wird.\ Der\ Standardhintergrund\ ist\ hellgrau.\ \n\ Es\ ist\ nicht\ moeglich,\ den\ Alpha-Parameter\ Transparenz\ mit\ Hintergrundfarben\ auf\ der\ Hauptzeichnungsoberflaeche\ zu\ verwenden.\ \n\ @param\ r\ Rotanteil\ (0-255)\ der\ Hintergrundfarbe\n\ @param\ g\ Gruenanteil\ (0-255)\ der\ Hintergrundfarbe\n\ @param\ b\ Blauanteil\ (0-255)\ der\ Hintergrundfarbe\n -comment44.params=filename -comment44.target=void\ load(java.lang.String) -comment44.text=\ \n\ Laedt\ ein\ Bild\ aus\ dem\ Dateisystem.\n\ Laedt\ ein\ Bild\ von\ einem\ Datentraeger\ und\ setzt\ Stiftfarbe\ und\ Fuellfarbe\ auf\ Standardwerte\ zurueck.\n\ @param\ filename\ Dateiname\ des\ Bildes\n -comment45.params=filename -comment45.target=void\ save(java.lang.String) -comment45.text=\ \n\ Speichert\ ein\ Bild.\n\ Speichert\ ein\ Bild\ auf\ einem\ Datentraeger.\ Zulaessig\ sind\ die\ Dateiformate\ PNG\ und\ GIF.\ Die\ Dateiendung\ legt\ den\ Typ\ fest.\n\ Standardmaessig\ wird\ die\ Dateiendung\ .png\ ergaenzt,\ wenn\ keine\ angegeben\ ist.\n\ @param\ filename\ Dateiname\ des\ Bildes\n -comment46.params= -comment46.target=java.awt.Color[][]\ getPixelArray() -comment46.text=\n\ Liefert\ das\ Bild\ als\ zweidimensionales\ Pixel-Array.\n\ @return\ zweidimensionales\ Array\ von\ Color-Objekten,\ die\ den\ Pixeln\ des\ Bildes\ entsprechen.\n -comment47.params=pixel -comment47.target=void\ setPixelArray(java.awt.Color[][]) -comment47.text=\n\ Setzt\ das\ Bild\ neu\ auf\ Basis\ des\ Pixel-Arrays.\n\ Die\ Groesse\ des\ Bildes\ wird\ nicht\ automatisch\ an\ das\ Array\ angepasst.\n\ @param\ pixel\ zweidimensionales\ Array\ von\ Color-Objekten\n -comment48.params=millis -comment48.target=void\ delay(int) -comment48.text=\n\ Hilfsfunktion\ zum\ Verzoegern\ der\ Ausgabe\n\ @param\ millis\ Wartezeit\ in\ Millisekunden\n -comment5.params= -comment5.target=void\ showInFrame() -comment6.params=observer -comment6.target=void\ setObserver(PictureViewer) -comment6.text=\ \n\ \ \ Legt\ fest,\ wer\ das\ Bild\ anzeigt.\n\ Diese\ ermoeglicht\ die\ Benachrichtung\ des\ Observers,\ wenn\ sich\ das\ Bild\ aendert.\n\ @param\ observer\ Anzeiger\ des\ Bildes\n -comment7.params= -comment7.target=PictureViewer\ getObserver() -comment8.params=b -comment8.target=void\ setImage(java.awt.image.BufferedImage) -comment8.text=\ \n\ Direktes\ Setzen\ des\ Bildes\ (fuer\ interne\ Zwecke)\n\ @param\ b\ Bild,\ das\ gespeichert\ werden\ soll.\n -comment9.params= -comment9.target=java.awt.image.BufferedImage\ getImage() -comment9.text=\ \n\ Direktes\ Abfragen\ des\ Bildes\ (fuer\ interne\ Zwecke)\n\ @return\ Bild,\ das\ gerade\ gespeichert\ ist.\n -numComments=49 diff --git a/imp/PictureViewer.ctxt b/imp/PictureViewer.ctxt deleted file mode 100644 index 3c558bb..0000000 --- a/imp/PictureViewer.ctxt +++ /dev/null @@ -1,39 +0,0 @@ -#BlueJ class context -comment0.target=PictureViewer -comment1.params= -comment1.target=PictureViewer() -comment1.text=\n\ Erzeugt\ ein\ ScrollPanel\ mit\ integriertem\ Bild\ der\ Gr\u00F6\u00DFe\ 1000x1000\n -comment10.params= -comment10.target=void\ back() -comment10.text=\n\ Ruft\ das\ letzte\ abgespeicherte\ Bild\ aus\ der\ History\ wieder\ auf.\n -comment11.params= -comment11.target=void\ repaint() -comment11.text=\n\ Setzt\ das\ angezeigt\ Bild\ neu\ und\ beachtet\ dabei\ den\ Zoomfaktor.\n -comment12.params=factor -comment12.target=void\ setZoom(double) -comment12.text=\n\ Setzt\ den\ Zoom-Faktor\ f\u00FCr\ das\ Bild.\n\ Als\ Zoomfaktor\ sind\ auch\ die\ Konstanten\ Bildanzeiger.FIT\ (auf\ Bildschirmgr\u00F6\u00DFe\ zoomen)\ und\ Bildanzeiger.NORMAL\ (100%)\ m\u00F6glich.\n\ @param\ factor\ Zoomfaktor\ (1.0\ \=\ 100%).\ \n -comment2.params=width\ height -comment2.target=PictureViewer(int,\ int) -comment2.text=\n\ Erzeugt\ ein\ ScrollPanel\ mit\ integriertem\ Bild\ der\ angegebenen\ Gr\u00F6\u00DFe\ \n\ @param\ width\ Breite\ des\ Bildes\n\ @param\ height\ H\u00F6he\ des\ Bildes\n -comment3.params=width\ height\ background -comment3.target=PictureViewer(int,\ int,\ java.lang.String) -comment3.text=\n\ Erzeugt\ ein\ ScrollPanel\ mit\ integriertem\ Bild\ der\ angegebenen\ Gr\u00F6\u00DFe\ \n\ @param\ width\ Breite\ des\ Bildes\n\ @param\ height\ H\u00F6he\ des\ Bildes\n\ @param\ background\ Farbe\ des\ Hintergrunds\ als\ HEX-String\ (z.B.\ "FF3A45")\n -comment4.params=filename -comment4.target=PictureViewer(java.lang.String) -comment4.text=\n\ Erzeugt\ ein\ ScrollPanel\ mit\ integriertem\ Bild\ aus\ einer\ Bilddatei\n\ @param\ filename\ Name\ des\ Bildes\n -comment5.params=picture -comment5.target=PictureViewer(Picture) -comment5.text=\n\ Erzeugt\ ein\ ScrollPanel\ und\ zeigt\ das\ Bild-Objekt\ an\n\ @param\ picture\ anzuzeigendes\ Bild\n -comment6.params=picture\ saveOldImage -comment6.target=void\ setImage(Picture,\ boolean) -comment6.text=\n\ Setzt\ das\ anzuzeigende\ Bild\ neu\n\ @param\ picture\ anzuzeigendes\ Bild\n\ @param\ saveOldImage\ soll\ das\ aktuelle\ Bild\ in\ der\ Historie\ gespeichert\ werden\n -comment7.params= -comment7.target=Picture\ getImage() -comment7.text=\n\ Liefert\ das\ angezeigte\ Bild\n\ @return\ angezeigtes\ Bild\n -comment8.params=bi -comment8.target=java.awt.image.BufferedImage\ deepCopy(java.awt.image.BufferedImage) -comment8.text=\ \n\ Erzeugt\ eine\ Kopie\ eines\ BufferedImage.\n\ @param\ Originalbild\n\ @return\ Kopie\ des\ Bildes\n -comment9.params= -comment9.target=void\ pushImage() -comment9.text=\n\ Speichert\ das\ \u00FCbergebene\ Bild\ in\ der\ History.\n\ @param\ b\ zu\ speicherndes\ Bild\n -numComments=13 diff --git a/imp/Table.ctxt b/imp/Table.ctxt deleted file mode 100644 index 1df8bc7..0000000 --- a/imp/Table.ctxt +++ /dev/null @@ -1,177 +0,0 @@ -#BlueJ class context -comment0.target=Table -comment1.params= -comment1.target=Table() -comment1.text=\ \n\ Erzeugt\ leeres\ Tabellen-Dokument.\n -comment10.params=filename\ options\ separator\ quote -comment10.target=void\ saveCSV(java.lang.String,\ java.lang.String,\ char,\ char) -comment10.text=\ \n\ Speichert\ das\ aktuelle\ Dokument\ als\ CSV-Datei.\ \n\ Wenn\ die\ Datei\ eine\ Kopfzeile\ enthalten,\ f\u00FCgen\ Sie\ "header"\ in\ den\ Parameter\ options\ ein.\ Wenn\ die\ Datei\ keine\ Kopfzeile\ haben\ soll,\ \n\ dann\ lassen\ Sie\ einfach\ die\ Option\ "header"\ weg.\n\ @param\ options\ Geben\ Sie\ hier\ "header"\ an,\ wenn\ die\ Datei\ eine\ Kopfzeile\ haben\ soll.\n\ @param\ filename\ Dateiname\ der\ CSV-Datei.\n\ @param\ separator\ Trennzeichen\ f\u00FCr\ Spalten\ (meist\ ';'\ oder\ ','\ oder\ '\\t'\ f\u00FCr\ Tab)\n\ @param\ quote\ Kennung\ f\u00FCr\ Texte\ (meist\ '"').\ \n -comment11.params=filename -comment11.target=void\ saveXML(java.lang.String) -comment11.text=\ Speichert\ die\ Tabelle\ als\ XML-Dokument.\n\ \ @param\ filename\ Dateiname\ des\ XML-Files\n -comment12.params=cvsLine -comment12.target=java.util.List\ parseLine(java.lang.String) -comment12.text=\ HIlfsfunktion\ f\u00FCr\ die\ Analyse\ einer\ Dateizeile\n\ @param\ cvsLine\ Zeile\ aus\ der\ Datei\n\ @return\ Liste\ von\ String\ f\u00FCr\ die\ einzelnen\ Spalten\n -comment13.params=cvsLine\ separator -comment13.target=java.util.List\ parseLine(java.lang.String,\ char) -comment13.text=\ HIlfsfunktion\ f\u00FCr\ die\ Analyse\ einer\ Dateizeile\n\ @param\ cvsLine\ Zeile\ aus\ der\ Datei\n\ @param\ sparator\ Trennzeichen\ f\u00FCr\ die\ Spalten\ \n\ @return\ Liste\ von\ String\ f\u00FCr\ die\ einzelnen\ Spalten\n -comment14.params=cvsLine\ separator\ customQuote -comment14.target=java.util.List\ parseLine(java.lang.String,\ char,\ char) -comment14.text=\ HIlfsfunktion\ f\u00FCr\ die\ Analyse\ einer\ Dateizeile\n\ @param\ cvsLine\ Zeile\ aus\ der\ Datei\n\ @param\ sparator\ Trennzeichen\ f\u00FCr\ die\ Spalten\ \n\ @param\ customQuote\ Kennung\ f\u00FCr\ Strings\n\ @return\ Liste\ von\ String\ f\u00FCr\ die\ einzelnen\ Spalten\n -comment15.params=name -comment15.target=int\ findColumnNumber(java.lang.String) -comment15.text=\ \n\ \ Sucht\ die\ Nummer\ einer\ durch\ Namen\ gegebenen\ Spalte.\n\ \ @param\ name\ Name\ der\ Spalte\n\ \ @return\ Nummer\ der\ Spalte\n -comment16.params= -comment16.target=void\ addColumn() -comment16.text=\n\ F\u00FCgt\ eine\ neue\ Spalte\ am\ Ende\ der\ Tabelle\ an.\n -comment17.params=title -comment17.target=void\ addColumn(java.lang.String) -comment17.text=\ \n\ F\u00FCgt\ eine\ neue\ Spalte\ am\ Ende\ der\ Tabelle\ an\ und\ benennt\ sie.\n\ @param\ title\ Bezeichnung\ der\ Spalte\n -comment18.params=title\ type -comment18.target=void\ addColumn(java.lang.String,\ java.lang.String) -comment18.text=\n\ F\u00FCgt\ eine\ neue\ Spalte\ am\ Ende\ der\ Tabelle\ an\ und\ benennt\ und\ typisiert\ sie.\n\ @param\ title\ Bezeichnung\ der\ Spalte\n\ @param\ type\ Typ\ der\ Spalte\ (UNKNOWN,\ DOUBLE,\ INTEGER,\ FLOAT)\n -comment19.params=i -comment19.target=void\ removeColumn(int) -comment19.text=\n\ L\u00F6scht\ eine\ Spalte.\n\ @param\ i\ Nummer\ der\ Spalte.\n -comment2.params=filename\ options\ separator\ quote -comment2.target=Table(java.lang.String,\ java.lang.String,\ char,\ char) -comment2.text=\ \n\ Erzeugt\ Tabellen-Dokument\ aus\ einer\ CSV-Datei.\n\ Liest\ den\ Inhalt\ einer\ Datei\ und\ erstellt\ ein\ Tabellenobjekt\ mit\ seinen\ Werten.\ \n\ Wenn\ die\ Datei\ eine\ Kopfzeile\ enth\u00E4lt,\ f\u00FCgen\ Sie\ "header"\ in\ den\ Parameter\ options\ ein.\ Wenn\ die\ Datei\ keine\ Kopfzeile\ hat,\ \n\ dann\ lassen\ Sie\ einfach\ die\ Option\ "header"\ weg.\n\ @param\ filename\ Dateiname\ der\ CSV-Datei.\n\ @param\ options\ Geben\ Sie\ hier\ "header"\ an,\ wenn\ die\ Datei\ eine\ Kopfzeile\ enth\u00E4lt.\n\ @param\ separator\ Trennzeichen\ f\u00FCr\ Spalten\ (meist\ ';'\ oder\ ','\ oder\ '\\t'\ f\u00FCr\ Tab)\n\ @param\ quote\ Kennung\ f\u00FCr\ Texte\ (meist\ '"').\ \n -comment20.params=name -comment20.target=void\ removeColumn(java.lang.String) -comment20.text=\n\ L\u00F6scht\ eine\ Spalte\n\ @param\ name\ Name\ der\ Spalte\n -comment21.params= -comment21.target=int\ getColumnCount() -comment21.text=\n\ Liefert\ die\ Anzahl\ der\ Spalten\ in\ der\ Tabelle\n\ @return\ Anzahl\ der\ Spalten\n -comment22.params= -comment22.target=int\ getRowCount() -comment22.text=\n\ Liefert\ die\ Anzahl\ der\ Zeilen\ in\ der\ Tabelle\n\ @return\ Anzahl\ der\ Zeilen\n -comment23.params= -comment23.target=void\ clearRows() -comment23.text=\ \n\ L\u00F6scht\ alle\ Zeilen\ der\ Tabelle.\n\ Die\ Spalten\u00FCberschriften\ und\ Typen\ bleiben\ erhalten.\n -comment24.params= -comment24.target=TableRow\ addRow() -comment24.text=\n\ F\u00FCgt\ eine\ neue\ Zeile\ an\ das\ Ende\ der\ Tabelle\ an.\n\ @return\ ein\ TableRow-Objekt\ f\u00FCr\ diese\ neue\ Zeile\n -comment25.params=i -comment25.target=void\ removeRow(int) -comment25.text=\n\ L\u00F6scht\ eine\ Zeile\n\ @param\ i\ Nummer\ der\ Zeile\n -comment26.params=i -comment26.target=TableRow\ getRow(int) -comment26.text=\ \n\ Liefert\ eine\ Zeile\ der\ Tabelle\n\ @param\ i\ Nummer\ der\ Zeile\n\ @return\ TableRow-Objekt\ f\u00FCr\ diese\ Zeile\n -comment27.params= -comment27.target=TableRow[]\ rows() -comment27.text=\n\ Liefert\ die\ ganze\ Tabelle\ als\ Array\ von\ TableRow-Objekten\n\ @return\ Array\ von\ TableRow-Objekten\ \n -comment28.params=row\ column -comment28.target=int\ getInt(int,\ int) -comment28.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Integer-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ column\ Spaltennummer\n\ @return\ Wert\ der\ Zelle\n -comment29.params=row\ name -comment29.target=int\ getInt(int,\ java.lang.String) -comment29.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Integer-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment3.params=filename\ options -comment3.target=Table(java.lang.String,\ java.lang.String) -comment3.text=\ \n\ Erzeugt\ Tabellen-Dokument\ aus\ einer\ CSV-Datei.\n\ Liest\ den\ Inhalt\ einer\ Datei\ und\ erstellt\ ein\ Tabellenobjekt\ mit\ seinen\ Werten\ (Separator\ \=\ ';',\ Kennung\ f\u00FCr\ Text\ \=\ '"').\ \n\ Wenn\ die\ Datei\ eine\ Kopfzeile\ enth\u00E4lt,\ f\u00FCgen\ Sie\ "header"\ in\ den\ Parameter\ options\ ein.\ Wenn\ die\ Datei\ keine\ Kopfzeile\ hat,\ \n\ dann\ lassen\ Sie\ einfach\ die\ Option\ "header"\ weg.\n\ @param\ filename\ Dateiname\ der\ CSV-Datei.\n\ @param\ options\ Geben\ Sie\ hier\ "header"\ an,\ wenn\ die\ Datei\ eine\ Kopfzeile\ enth\u00E4lt.\n -comment30.params=row\ column\ value -comment30.target=void\ setInt(int,\ int,\ int) -comment30.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Integer-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ column\ Spaltennummer\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment31.params=row\ name\ value -comment31.target=void\ setInt(int,\ java.lang.String,\ int) -comment31.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Integer-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ name\ Name\ der\ Spalte\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment32.params=row -comment32.target=int[]\ getIntRow(int) -comment32.text=\n\ Liefert\ alle\ Werte\ einer\ Zeile\ als\ Integer-Array.\n\ @param\ row\ Nummer\ der\ Zeile\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Zeile\ enth\u00E4lt\n -comment33.params=column -comment33.target=int[]\ getIntColumn(int) -comment33.text=\n\ Liefert\ alle\ Werte\ einer\ Spalte\ als\ Integer-Array.\n\ @param\ column\ Nummer\ der\ Spalte\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Spalte\ enth\u00E4lt\n -comment34.params=name -comment34.target=int[]\ getIntColumn(java.lang.String) -comment34.text=\n\ Liefert\ alle\ Werte\ einer\ Spalte\ als\ Integer-Array.\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Spalte\ enth\u00E4lt\n -comment35.params=row\ column -comment35.target=float\ getFloat(int,\ int) -comment35.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Float-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ column\ Spaltennummer\n\ @return\ Wert\ der\ Zelle\n -comment36.params=row\ name -comment36.target=float\ getFloat(int,\ java.lang.String) -comment36.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Float-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment37.params=row\ column\ value -comment37.target=void\ setFloat(int,\ int,\ float) -comment37.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Float-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ column\ Spaltennummer\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment38.params=row\ name\ value -comment38.target=void\ setFloat(int,\ java.lang.String,\ float) -comment38.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Float-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ name\ Name\ der\ Spalte\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment39.params=row -comment39.target=float[]\ getFloatRow(int) -comment39.text=\n\ Liefert\ alle\ Werte\ einer\ Zeile\ als\ Float-Array.\n\ @param\ row\ Nummer\ der\ Zeile\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Zeile\ enth\u00E4lt\n -comment4.params=filename -comment4.target=Table(java.lang.String) -comment4.text=\ \n\ Erzeugt\ Tabellen-Dokument\ aus\ einer\ CSV-Datei.\n\ Liest\ den\ Inhalt\ einer\ Datei\ ohne\ Kopfzeile\ und\ erstellt\ ein\ Tabellenobjekt\ mit\ seinen\ Werten\ (Separator\ \=\ ';',\ Kennung\ f\u00FCr\ Text\ \=\ '"').\ \n\ @param\ filename\ Dateiname\ der\ CSV-Datei.\n -comment40.params=column -comment40.target=float[]\ getFloatColumn(int) -comment40.text=\n\ Liefert\ alle\ Werte\ einer\ Spalte\ als\ Float-Array.\n\ @param\ column\ Nummer\ der\ Spalte\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Spalte\ enth\u00E4lt\n -comment41.params=name -comment41.target=float[]\ getFloatColumn(java.lang.String) -comment41.text=\n\ Liefert\ alle\ Werte\ einer\ Spalte\ als\ Float-Array.\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Spalte\ enth\u00E4lt\n -comment42.params=row\ column -comment42.target=double\ getDouble(int,\ int) -comment42.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Double-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ column\ Spaltennummer\n\ @return\ Wert\ der\ Zelle\n -comment43.params=row\ name -comment43.target=double\ getDouble(int,\ java.lang.String) -comment43.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Double-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment44.params=row\ column\ value -comment44.target=void\ setDouble(int,\ int,\ double) -comment44.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Double-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ column\ Spaltennummer\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment45.params=row\ name\ value -comment45.target=void\ setDouble(int,\ java.lang.String,\ double) -comment45.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Double-Zahl\n\ @param\ row\ Zeilennummer\n\ @param\ name\ Name\ der\ Spalte\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment46.params=row -comment46.target=double[]\ getDoubleRow(int) -comment46.text=\n\ Liefert\ alle\ Werte\ einer\ Spalte\ als\ Double-Array.\n\ @param\ row\ Nummer\ der\ Spalte\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Spalte\ enth\u00E4lt\n -comment47.params=column -comment47.target=double[]\ getDoubleColumn(int) -comment47.text=\n\ Liefert\ alle\ Werte\ einer\ Spalte\ als\ Double-Array.\n\ @param\ column\ Nummer\ der\ Spalte\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Spalte\ enth\u00E4lt\n -comment48.params=name -comment48.target=double[]\ getDoubleColumn(java.lang.String) -comment48.text=\n\ Liefert\ alle\ Werte\ einer\ Spalte\ als\ Double-Array.\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Spalte\ enth\u00E4lt\n -comment49.params=row\ column -comment49.target=java.lang.String\ getString(int,\ int) -comment49.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ String\n\ @param\ row\ Zeilennummer\n\ @param\ column\ Spaltennummer\n\ @return\ Wert\ der\ Zelle\n -comment5.params=filename -comment5.target=void\ loadCSV(java.lang.String) -comment5.text=\ \n\ Liest\ den\ Inhalt\ einer\ CSV-Datei\ ohne\ Kopfzeile\ (Separator\ \=\ ';',\ Kennung\ f\u00FCr\ Text\ \=\ '"').\ \n\ @param\ filename\ Dateiname\ der\ CSV-Datei.\n -comment50.params=row\ name -comment50.target=java.lang.String\ getString(int,\ java.lang.String) -comment50.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ String\n\ @param\ row\ Zeilennummer\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment51.params=row\ column\ text -comment51.target=void\ setString(int,\ int,\ java.lang.String) -comment51.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ String\n\ @param\ row\ Zeilennummer\n\ @param\ column\ Spaltennummer\n\ @param\ text\ neuer\ Wert\ der\ Zelle\n -comment52.params=row\ name\ text -comment52.target=void\ setString(int,\ java.lang.String,\ java.lang.String) -comment52.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ String\n\ @param\ row\ Zeilennummer\n\ @param\ name\ Name\ der\ Spalte\n\ @param\ text\ neuer\ Wert\ der\ Zelle\n -comment53.params=row -comment53.target=java.lang.String[]\ getStringRow(int) -comment53.text=\n\ Liefert\ alle\ Werte\ einer\ Spalte\ als\ String-Array.\n\ @param\ row\ Nummer\ der\ Spalte\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Spalte\ enth\u00E4lt\n -comment54.params=column -comment54.target=java.lang.String[]\ getStringColumn(int) -comment54.text=\n\ Liefert\ alle\ Werte\ einer\ Spalte\ als\ String-Array.\n\ @param\ column\ Nummer\ der\ Spalte\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Spalte\ enth\u00E4lt\n -comment55.params=name -comment55.target=java.lang.String[]\ getStringColumn(java.lang.String) -comment55.text=\n\ Liefert\ alle\ Werte\ einer\ Spalte\ als\ String-Array.\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ int-Array,\ dass\ alle\ Werte\ der\ Spalte\ enth\u00E4lt\n -comment56.params=value\ column -comment56.target=TableRow\ findRow(java.lang.String,\ int) -comment56.text=\n\ Sucht\ nach\ einem\ bestimmtem\ Wert\ in\ einer\ Zeile.\n\ @param\ value\ Wert\ der\ gesucht\ werden\ soll\n\ @param\ column\ Nummer\ der\ Spalte,\ die\ durchsucht\ werden\ soll\n\ @return\ TableRow-Objekt\ der\ Zeile,\ wenn\ der\ Wert\ gefunden\ wurde,\ sonst\ null\n -comment57.params=value\ name -comment57.target=TableRow\ findRow(java.lang.String,\ java.lang.String) -comment57.text=\n\ Sucht\ nach\ einem\ bestimmtem\ Wert\ in\ einer\ Zeile.\n\ @param\ value\ Wert\ der\ gesucht\ werden\ soll\n\ @param\ name\ Name\ der\ Spalte,\ die\ durchsucht\ werden\ soll\n\ @return\ TableRow-Objekt\ der\ Zeile,\ wenn\ der\ Wert\ gefunden\ wurde,\ sonst\ null\n -comment58.params= -comment58.target=void\ trim() -comment58.text=\ \n\ K\u00FCrzt\ alle\ Eintr\u00E4ge\ der\ Tabelle\ um\ unn\u00F6tige\ Leerzeichen\ am\ Anfang\ oder\ Ende\n -comment6.params=filename\ options -comment6.target=void\ loadCSV(java.lang.String,\ java.lang.String) -comment6.text=\ \n\ Liest\ den\ Inhalt\ einer\ CSV-Datei\ \ (Separator\ \=\ ';',\ Kennung\ f\u00FCr\ Text\ \=\ '"').\ \n\ Wenn\ die\ Datei\ eine\ Kopfzeile\ enth\u00E4lt,\ f\u00FCgen\ Sie\ "header"\ in\ den\ Parameter\ options\ ein.\ Wenn\ die\ Datei\ keine\ Kopfzeile\ hat,\ \n\ dann\ lassen\ Sie\ einfach\ die\ Option\ "header"\ weg.\n\ @param\ filename\ Dateiname\ der\ CSV-Datei.\n\ @param\ options\ Geben\ Sie\ hier\ "header"\ an,\ wenn\ die\ Datei\ eine\ Kopfzeile\ enth\u00E4lt.\n -comment7.params=filename\ options\ separator\ quote -comment7.target=void\ loadCSV(java.lang.String,\ java.lang.String,\ char,\ char) -comment7.text=\ \n\ Liest\ den\ Inhalt\ einer\ CSV-Datei.\n\ Wenn\ die\ Datei\ eine\ Kopfzeile\ enth\u00E4lt,\ f\u00FCgen\ Sie\ "header"\ in\ den\ Parameter\ options\ ein.\ Wenn\ die\ Datei\ keine\ Kopfzeile\ hat,\ \n\ dann\ lassen\ Sie\ einfach\ die\ Option\ "header"\ weg.\n\ @param\ filename\ Dateiname\ der\ CSV-Datei.\n\ @param\ options\ Geben\ Sie\ hier\ "header"\ an,\ wenn\ die\ Datei\ eine\ Kopfzeile\ enth\u00E4lt.\n\ @param\ separator\ Trennzeichen\ f\u00FCr\ Spalten\ (meist\ ';'\ oder\ ','\ oder\ '\\t'\ f\u00FCr\ Tab)\n\ @param\ quote\ Kennung\ f\u00FCr\ Texte\ (meist\ '"').\ \n -comment8.params=filename -comment8.target=void\ saveCSV(java.lang.String) -comment8.text=\ \n\ Speichert\ das\ aktuelle\ Dokument\ als\ CSV-Datei\ ohne\ Kopfzeile\ (Separator\ \=\ ';',\ Kennung\ f\u00FCr\ Text\ \=\ '"').\ \n\ @param\ filename\ Dateiname\ der\ CSV-Datei.\n -comment9.params=filename\ options -comment9.target=void\ saveCSV(java.lang.String,\ java.lang.String) -comment9.text=\ \n\ Speichert\ das\ aktuelle\ Dokument\ als\ CSV-Datei\ (Separator\ \=\ ';',\ Kennung\ f\u00FCr\ Text\ \=\ '"').\ \n\ Wenn\ die\ Datei\ eine\ Kopfzeile\ enthalten,\ f\u00FCgen\ Sie\ "header"\ in\ den\ Parameter\ options\ ein.\ Wenn\ die\ Datei\ keine\ Kopfzeile\ haben\ soll,\ \n\ dann\ lassen\ Sie\ einfach\ die\ Option\ "header"\ weg.\n\ @param\ options\ Geben\ Sie\ hier\ "header"\ an,\ wenn\ die\ Datei\ eine\ Kopfzeile\ haben\ soll.\n\ @param\ filename\ Dateiname\ der\ CSV-Datei.\n -numComments=59 diff --git a/imp/TableRow.ctxt b/imp/TableRow.ctxt deleted file mode 100644 index c955c0d..0000000 --- a/imp/TableRow.ctxt +++ /dev/null @@ -1,69 +0,0 @@ -#BlueJ class context -comment0.target=TableRow -comment1.params=doc\ row -comment1.target=TableRow(org.jdom.Document,\ org.jdom.Element) -comment1.text=\n\ \ Erzeugt\ ein\ TableRow-Objekt.\n\ Diese\ Methode\ ist\ f\u00FCr\ den\ internen\ Gebraucht.\ Einige\ Methode\ der\ Table-Klasse\ erzeugen\ mit\ diesem\ Konstruktor\ TableRow-Objekte.\n\ @param\ doc\ JDOM-Dokument,\ das\ f\u00FCr\ die\ ganze\ Tabelle\ steht.\n\ @param\ row\ JDOM-Element,\ das\ f\u00FCr\ die\ aktuelle\ Zeile\ steht.\n -comment10.params=name\ text -comment10.target=void\ setString(java.lang.String,\ java.lang.String) -comment10.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ String\n\ @param\ name\ Name\ der\ Spalte\n\ @param\ text\ neuer\ Wert\ der\ Zelle\n -comment11.params=i -comment11.target=int\ getInt(int) -comment11.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Int-Zahl\n\ @param\ i\ Nummer\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment12.params=name -comment12.target=int\ getInt(java.lang.String) -comment12.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Int-Zahl\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment13.params=i\ value -comment13.target=void\ setInt(int,\ int) -comment13.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Int-Zahl\n\ @param\ i\ Nummer\ der\ Spalte\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment14.params=name\ value -comment14.target=void\ setInt(java.lang.String,\ int) -comment14.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Int-Zahl\n\ @param\ name\ Name\ der\ Spalte\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment15.params=i -comment15.target=float\ getFloat(int) -comment15.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Float-Zahl\n\ @param\ i\ Nummer\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment16.params=name -comment16.target=float\ getFloat(java.lang.String) -comment16.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Float-Zahl\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment17.params=i\ value -comment17.target=void\ setFloat(int,\ float) -comment17.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Float-Zahl\n\ @param\ i\ Nummer\ der\ Spalte\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment18.params=name\ value -comment18.target=void\ setFloat(java.lang.String,\ float) -comment18.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Float-Zahl\n\ @param\ name\ Name\ der\ Spalte\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment19.params=i -comment19.target=double\ getDouble(int) -comment19.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Double-Zahl\n\ @param\ i\ Nummer\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment2.params= -comment2.target=int\ getColumnCount() -comment2.text=\n\ Liefert\ die\ Anzahl\ der\ Spalten\ der\ Zeile.\n\ @return\ Anzahl\ der\ Spalten\n -comment20.params=name -comment20.target=double\ getDouble(java.lang.String) -comment20.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ Double-Zahl\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment21.params=i\ value -comment21.target=void\ setDouble(int,\ double) -comment21.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Double-Zahl\n\ @param\ i\ Nummer\ der\ Spalte\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment22.params=name\ value -comment22.target=void\ setDouble(java.lang.String,\ double) -comment22.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ Double-Zahl\n\ @param\ name\ Name\ der\ Spalte\n\ @param\ value\ neuer\ Wert\ der\ Zelle\n -comment3.params=i -comment3.target=java.lang.String\ getColumnTitle(int) -comment3.text=\n\ Liefert\ den\ Titel\ einer\ Spalte\n\ @param\ i\ Nummer\ der\ Spalte\n\ @return\ Name\ der\ Spalte\n -comment4.params=name -comment4.target=int\ getColumn(java.lang.String) -comment4.text=\n\ Liefert\ die\ Nummer\ einer\ Spalte\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ Nummer\ der\ Spalte\n -comment5.params=i -comment5.target=org.jdom.Element\ buildRow(int) -comment5.text=\n\ Erzeugt\ eine\ neue\ Zeile\ mit\ i\ Spalten\n\ Wenn\ bisher\ nicht\ gen\u00FCgend\ Spalten\ vorhanden\ sind,\ werden\ automatisch\ neue\ Spalten\ hinzugef\u00FCgt\ (auch\ zum\ Header)\n\ @param\ i\ Anzahl\ der\ Spalten\n -comment6.params=name -comment6.target=org.jdom.Element\ buildRow(java.lang.String) -comment6.text=\n\ Erzeugt\ eine\ neue\ Zeile.\n\ Es\ werden\ gen\u00FCgend\ Spalten\ erzeugt,\ dass\ ein\ Wert\ in\ Spalte\ "name"\ eingetragen\ werden\ kann\n\ @param\ name\ Name\ der\ Spalte\n -comment7.params=i -comment7.target=java.lang.String\ getString(int) -comment7.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ String\n\ @param\ i\ Nummer\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment8.params=name -comment8.target=java.lang.String\ getString(java.lang.String) -comment8.text=\n\ Liefert\ den\ Wert\ einer\ Zelle\ als\ String\n\ @param\ name\ Name\ der\ Spalte\n\ @return\ Wert\ der\ Zelle\n -comment9.params=i\ text -comment9.target=void\ setString(int,\ java.lang.String) -comment9.text=\n\ Setzt\ den\ Wert\ einer\ Zelle\ als\ String\n\ @param\ i\ Nummer\ der\ Spalte\n\ @param\ text\ neuer\ Wert\ der\ Zelle\n -numComments=23 diff --git a/imp/XML.ctxt b/imp/XML.ctxt deleted file mode 100644 index c45bf60..0000000 --- a/imp/XML.ctxt +++ /dev/null @@ -1,135 +0,0 @@ -#BlueJ class context -comment0.target=XML -comment1.params= -comment1.target=XML() -comment1.text=\ \n\ Erzeugt\ ein\ leeres\ XMLDokument\ \n -comment10.params=name -comment10.target=XML[]\ getChildren(java.lang.String) -comment10.text=\n\ Liefert\ bestimmte\ Kinder\ des\ Elements\ als\ Array\ von\ XML-Objekten.\ \n\ Die\ Methode\ gibt\ dabei\ alle\ Kinder\ zur\u00FCck,\ die\ dem\ angegebenen\ Namen\ entsprechen.\ \n\ @param\ name\ Name\ der\ gesuchten\ Kind-Objekte\n\ @return\ Array\ der\ Kinder\ als\ XML-Objekte\n -comment11.params=name -comment11.target=XML\ getChild(java.lang.String) -comment11.text=\n\ Liefert\ das\ erste\ Kind\ des\ Elements\ mit\ einem\ bestimmten\ Namen.\ \n\ Die\ Methode\ gibt\ das\ erste\ Kind\ zur\u00FCck,\ das\ dem\ angegebenen\ Namen\ entsprechen.\ \n\ @param\ name\ Name\ des\ gesuchten\ Kind-Objektes\n\ @return\ Kind\ als\ XML-Objekt\n -comment12.params=i -comment12.target=XML\ getChild(int) -comment12.text=\n\ Liefert\ das\ i.\ Kind\ des\ Elements.\ \n\ Die\ Methode\ gibt\ das\ i.\ Kind\ des\ aktuellen\ Elements\ zur\u00FCck.\n\ @param\ i\ Nummer\ des\ Kindes\n\ @return\ Kind\ als\ XML-Objekt\n -comment13.params= -comment13.target=java.lang.String\ getName() -comment13.text=\ \n\ Frage\ den\ Namen\ des\ aktuellen\ Elements\ ab\n\ @return\ Namen\ des\ Elements\n -comment14.params=name -comment14.target=void\ setName(java.lang.String) -comment14.text=\ \n\ Setze\ den\ Namen\ des\ aktuellen\ Elements.\ \n\ @param\ name\ Neuer\ Name\ des\ Elements\n -comment15.params= -comment15.target=int\ getAttributeCount() -comment15.text=\n\ liefert\ die\ Anzahl\ der\ Attribute\ eines\ Elements.\n\ @return\ Anzahl\ des\ Attribute\n -comment16.params= -comment16.target=boolean\ hasAttribute() -comment16.text=\n\ liefert\ zur\u00FCck,\ ob\ das\ aktuelle\ Element\ Attribute\ hat\ .\n\ @return\ true,\ wenn\ es\ Attribute\ gibt\n -comment17.params= -comment17.target=java.lang.String[]\ listAttributes() -comment17.text=\n\ Ruft\ alle\ Attribute\ des\ angegebenen\ Elements\ ab\ und\ gibt\ sie\ als\ Array\ von\ Strings\ zur\u00FCck.\n\ @return\ Liste\ der\ Attributnamen\n -comment18.params=attribute -comment18.target=java.lang.String\ getString(java.lang.String) -comment18.text=\ \n\ Fragt\ einen\ Attributwert\ des\ aktuellen\ Elements\ ab\n\ @param\ attribute\ Name\ des\ Attributs\n\ @return\ Wert\ des\ Attributs\n -comment19.params=attribute\ defaultValue -comment19.target=java.lang.String\ getString(java.lang.String,\ java.lang.String) -comment19.text=\ \n\ Fragt\ einen\ Attributwert\ des\ aktuellen\ Elements\ ab\n\ Sollte\ es\ das\ Attribut\ nicht\ geben,\ wird\ ein\ default-Wert\ zur\u00FCckgegeben\n\ @param\ attribute\ Name\ des\ Attributs\n\ @param\ defaultValue\ Standardwert,\ falls\ es\ das\ Attribut\ nicht\ gibt\n\ @return\ Wert\ des\ Attributs\n -comment2.params=filename -comment2.target=XML(java.lang.String) -comment2.text=\ \n\ Erzeugt\ ein\ XML-Dokument\ aus\ einer\ Datei\ \n\ @param\ filename\ Dateiname\ der\ XML-Datei\n -comment20.params=attribute\ text -comment20.target=void\ setString(java.lang.String,\ java.lang.String) -comment20.text=\ \n\ Setzt\ einen\ Attributwert\ des\ aktuellen\ Elements\ \n\ @param\ attribute\ Name\ des\ Attributs\n\ @param\ text\ neuer\ Wert\ des\ Attributs\n -comment21.params=attribute -comment21.target=int\ getInt(java.lang.String) -comment21.text=\ \n\ Fragt\ einen\ Attributwert\ des\ aktuellen\ Elements\ ab\n\ @param\ attribute\ Name\ des\ Attributs\n\ @return\ Wert\ des\ Attributs\ als\ Integer-Zahl\n -comment22.params=attribute\ defaultValue -comment22.target=int\ getInt(java.lang.String,\ int) -comment22.text=\ \n\ Fragt\ einen\ Attributwert\ des\ aktuellen\ Elements\ ab\n\ Sollte\ es\ das\ Attribut\ nicht\ geben,\ wird\ ein\ default-Wert\ zur\u00FCckgegeben\n\ @param\ attribute\ Name\ des\ Attributs\n\ @param\ defaultValue\ Standardwert,\ falls\ es\ das\ Attribut\ nicht\ gibt\n\ @return\ Wert\ des\ Attributs\ als\ Integer-Zahl\n -comment23.params=attribute\ value -comment23.target=void\ setInt(java.lang.String,\ int) -comment23.text=\ \n\ Setzt\ einen\ Attributwert\ des\ aktuellen\ Elements\ \n\ @param\ attribute\ Name\ des\ Attributs\n\ @param\ value\ neuer\ Wert\ des\ Attributs\n -comment24.params=attribute -comment24.target=float\ getFloat(java.lang.String) -comment24.text=\ \n\ Fragt\ einen\ Attributwert\ des\ aktuellen\ Elements\ ab\n\ @param\ attribute\ Name\ des\ Attributs\n\ @return\ Wert\ des\ Attributs\ als\ Float-Zahl\n -comment25.params=attribute\ defaultValue -comment25.target=float\ getFloat(java.lang.String,\ float) -comment25.text=\ \n\ Fragt\ einen\ Attributwert\ des\ aktuellen\ Elements\ ab\n\ Sollte\ es\ das\ Attribut\ nicht\ geben,\ wird\ ein\ default-Wert\ zur\u00FCckgegeben\n\ @param\ attribute\ Name\ des\ Attributs\n\ @param\ defaultValue\ Standardwert,\ falls\ es\ das\ Attribut\ nicht\ gibt\n\ @return\ Wert\ des\ Attributs\ als\ Float-Zahl\n -comment26.params=attribute\ value -comment26.target=void\ setFloat(java.lang.String,\ float) -comment26.text=\ \n\ Setzt\ einen\ Attributwert\ des\ aktuellen\ Elements\ \n\ @param\ attribute\ Name\ des\ Attributs\n\ @param\ value\ neuer\ Wert\ des\ Attributs\n -comment27.params=attribute -comment27.target=double\ getDouble(java.lang.String) -comment27.text=\ \n\ Fragt\ einen\ Attributwert\ des\ aktuellen\ Elements\ ab\n\ @param\ attribute\ Name\ des\ Attributs\n\ @return\ Wert\ des\ Attributs\ als\ Double-Zahl\n -comment28.params=attribute\ defaultValue -comment28.target=double\ getDouble(java.lang.String,\ double) -comment28.text=\ \n\ Fragt\ einen\ Attributwert\ des\ aktuellen\ Elements\ ab\n\ Sollte\ es\ das\ Attribut\ nicht\ geben,\ wird\ ein\ default-Wert\ zur\u00FCckgegeben\n\ @param\ attribute\ Name\ des\ Attributs\n\ @param\ defaultValue\ Standardwert,\ falls\ es\ das\ Attribut\ nicht\ gibt\n\ @return\ Wert\ des\ Attributs\ als\ double-Zahl\n -comment29.params=attribute\ value -comment29.target=void\ setDouble(java.lang.String,\ double) -comment29.text=\ \n\ Setzt\ einen\ Attributwert\ des\ aktuellen\ Elements\ \n\ @param\ attribute\ Name\ des\ Attributs\n\ @param\ value\ neuer\ Wert\ des\ Attributs\n -comment3.params=doc\ current -comment3.target=XML(org.jdom.Document,\ org.jdom.Element) -comment3.text=\n\ interner\ Konstruktor,\ um\ ein\ XML\ Objekt\ zu\ erzeugen,\ das\ auf\ einen\ bestimmten\ Knoten\ verweist\n\ @param\ doc\ die\ XML-Dokumentstruktur\n\ @param\ current\ Zeiger\ auf\ das\ aktuelle\ Element\ \n -comment30.params= -comment30.target=java.lang.String\ getContent() -comment30.text=\ \n\ Fragt\ den\ Inhalt/Text\ des\ aktuellen\ Elements\ ab\n\ @return\ Inhalt\ des\ Elements\n -comment31.params=defaultValue -comment31.target=java.lang.String\ getContent(java.lang.String) -comment31.text=\ \n\ Fragt\ den\ Inhalt/Text\ des\ aktuellen\ Elements\ ab\n\ Hat\ das\ Element\ keinen\ Inhalt\ wird\ der\ defaultValue\ zur\u00FCckgegeben.\n\ @param\ defaultValue\ Standardtext\n\ @return\ Inhalt\ des\ Elements\n -comment32.params=text -comment32.target=void\ setContent(java.lang.String) -comment32.text=\ \n\ Setzt\ den\ Inhalt/Text\ des\ aktuellen\ Elements\n\ @param\ text\ Neuer\ Inhalt\ des\ Elements\n -comment33.params=defaultValue -comment33.target=int\ getIntContent(int) -comment33.text=\ \n\ Fragt\ den\ Inhalt\ des\ aktuellen\ Elements\ als\ Integerzahl\ ab\n\ Hat\ das\ Element\ keinen\ Inhalt\ wird\ der\ defaultValue\ zur\u00FCckgegeben.\n\ @param\ defaultValue\ Standardwert\n\ @return\ Inhalt\ des\ Elements\n -comment34.params= -comment34.target=int\ getIntContent() -comment34.text=\ \n\ Fragt\ den\ Inhalt\ des\ aktuellen\ Elements\ als\ Integerzahl\ ab\n\ @return\ Inhalt\ des\ Elements\n -comment35.params=value -comment35.target=void\ setIntContent(int) -comment35.text=\ \n\ Setzt\ den\ Inhalt\ des\ aktuellen\ Elements\n\ @param\ value\ Neuer\ Inhalt\ des\ Elements\n -comment36.params=defaultValue -comment36.target=float\ getFloatContent(float) -comment36.text=\ \n\ Fragt\ den\ Inhalt\ des\ aktuellen\ Elements\ als\ Floatzahl\ ab\n\ Hat\ das\ Element\ keinen\ Inhalt\ wird\ der\ defaultValue\ zur\u00FCckgegeben.\n\ @param\ defaultValue\ Standardwert\n\ @return\ Inhalt\ des\ Elements\n -comment37.params= -comment37.target=float\ getFloatContent() -comment37.text=\ \n\ Fragt\ den\ Inhalt\ des\ aktuellen\ Elements\ als\ Floatzahl\ ab\n\ @return\ Inhalt\ des\ Elements\n -comment38.params=value -comment38.target=void\ setFloatContent(float) -comment38.text=\ \n\ Setzt\ den\ Inhalt\ des\ aktuellen\ Elements\n\ @param\ value\ Neuer\ Inhalt\ des\ Elements\n -comment39.params=defaultValue -comment39.target=double\ getDoubleContent(double) -comment39.text=\ \n\ Fragt\ den\ Inhalt\ des\ aktuellen\ Elements\ als\ Doublezahl\ ab\n\ Hat\ das\ Element\ keinen\ Inhalt\ wird\ der\ defaultValue\ zur\u00FCckgegeben.\n\ @param\ defaultValue\ Standardwert\n\ @return\ Inhalt\ des\ Elements\n -comment4.params=filename -comment4.target=void\ loadXML(java.lang.String) -comment4.text=\ \u00D6ffnet\ das\ durch\ den\ Dateinamen\ gegebene\ Dokument\ \n\ \ @param\ filename\ Dateiname\ des\ XML-Files\n -comment40.params= -comment40.target=double\ getDoubleContent() -comment40.text=\ \n\ Fragt\ den\ Inhalt\ des\ aktuellen\ Elements\ als\ Doublezahl\ ab\n\ @return\ Inhalt\ des\ Elements\n -comment41.params=value -comment41.target=void\ setDoubleContent(double) -comment41.text=\ \n\ Setzt\ den\ Inhalt\ des\ aktuellen\ Elements\n\ @param\ value\ Neuer\ Inhalt\ des\ Elements\n -comment42.params=name -comment42.target=XML\ addChild(java.lang.String) -comment42.text=\ Erzeuge\ neues\ Element\ nach\ der\ aktuellen\ Position\ und\ setze\ dieses\ als\ aktuelles\ Element\n\ @param\ name\ Name\ des\ neuen\ Elements\n\ @return\ neues\ Element\ als\ XML-Objekt\n -comment43.params= -comment43.target=org.jdom.Element\ getCurrent() -comment43.text=\ \n\ liefert\ das\ aktuelle\ Element\ als\ jdom-Element-Objekt\n\ @return\ aktuelles\ Element\n -comment44.params=kid -comment44.target=void\ removeChild(XML) -comment44.text=\n\ l\u00F6scht\ ein\ Kind\ des\ aktuellen\ Knotens.\n\ Ist\ kid\ kein\ Kind\ des\ aktuellen\ Elements\ passiert\ gar\ nichts.\n\ @param\ kid\ XML-Objekt\ des\ Kindes\n -comment5.params=filename -comment5.target=void\ saveXML(java.lang.String) -comment5.text=\ Speichert\ den\ XML-Baum\ im\ angegebenen\ Dateinamen\n\ \ @param\ filename\ Dateiname\ des\ XML-Files\n -comment6.params= -comment6.target=XML\ getParent() -comment6.text=\n\ liefert\ ein\ XML-Objekt,\ das\ auf\ den\ Vaterknoten\ des\ aktuellen\ Elements\ zeigt.\n\ @return\ Vater\ des\ aktuellen\ Objekts.\n -comment7.params= -comment7.target=boolean\ hasChildren() -comment7.text=\n\ \u00DCberpr\u00FCft,\ ob\ das\ Element\ irgendwelche\ Kinder\ hat\ oder\ nicht,\ und\ gibt\ das\ Ergebnis\ als\ boolean\ zur\u00FCck.\ \n\ @return\ true,\ wenn\ Kinder\ vorhanden\ sind,\ sonst\ false\n -comment8.params= -comment8.target=java.lang.String[]\ listChildren() -comment8.text=\n\ Ermittelt\ die\ Namen\ aller\ Kinder\ des\ Elements\ und\ gibt\ die\ Namen\ als\ ein\ Array\ von\ Strings\ zur\u00FCck.\ \n\ Dies\ ist\ dasselbe\ wie\ das\ Durchlaufen\ und\ Aufrufen\ von\ getName()\ auf\ jedem\ untergeordneten\ Element\ einzeln.\ \n\ @return\ Liste\ aller\ Namen\ der\ Kinder\n -comment9.params= -comment9.target=XML[]\ getChildren() -comment9.text=\n\ Liefert\ alle\ Kinder\ des\ Elements\ als\ Array\ von\ XML-Objekten.\ \n\ @return\ Array\ der\ Kinder\ als\ XML-Objekte\n -numComments=45