diff --git a/ss2012/AlgoAnim/Teil 5/eingebunden.jar b/ss2012/AlgoAnim/Teil 5/eingebunden.jar index 47c817fd..997b0782 100644 Binary files a/ss2012/AlgoAnim/Teil 5/eingebunden.jar and b/ss2012/AlgoAnim/Teil 5/eingebunden.jar differ diff --git a/ss2012/AlgoAnim/Teil 5/matrixGenerator/generators/maths/MatrixGenerator.java b/ss2012/AlgoAnim/Teil 5/matrixGenerator/generators/maths/MatrixGenerator.java index 72e6d09d..e34c43f8 100644 --- a/ss2012/AlgoAnim/Teil 5/matrixGenerator/generators/maths/MatrixGenerator.java +++ b/ss2012/AlgoAnim/Teil 5/matrixGenerator/generators/maths/MatrixGenerator.java @@ -35,13 +35,10 @@ import algoanim.animalscript.AnimalScript; /* * TODO: - * - erste Folie die drei Schritte der Funktionsweise animieren - * - Abschlussfolie(n) mit Komplexitätsbetrachtung der Funktion (sollte n^3 sein) - * - Properties für Textfarbe usw. einfügen * - Benutzerinteraktionen einfügen - * - Elemente der Matrizen A und B einfärben, wenn diese miteinander multipliziert werden. - * - Texte nicht als SourceCode-Objekte, sonder als Textobjekte erstellen. - * Somit können die Properties geändert werden. + * + * optional: + * - Texte nicht als SourceCode-Objekte, sonder als Textobjekte erstellen. Somit können die Properties geändert werden. * */ @@ -70,6 +67,12 @@ public class MatrixGenerator implements Generator { */ private SourceCode info = null; + + /** + * The statement text as a SourceCode object (last several slides) + */ + private SourceCode statement = null; + /** * The sourceCode */ @@ -131,7 +134,7 @@ public class MatrixGenerator implements Generator { this.info = lang.newSourceCode(new Coordinates(10, 75), "info", null, TEXT_PROPS); this.info.addCodeLine("Das hier vorgestellte Verfahren eignet sich zur Multiplikation zweier Matrizen.", null, 0, null); this.info.addCodeLine("Zwei Matrizen können genau dann multipliziert werden, wenn die Spaltenanzahl der", null, 0, null); - this.info.addCodeLine("linken Matrix mit der Zeilenanzahl der rechten Matrix übereinstimmen. ", null, 0, null); + this.info.addCodeLine("linken Matrix mit der Zeilenanzahl der rechten Matrix übereinstimmt. ", null, 0, null); this.info.addCodeLine("Das Verfahren lässt sich leicht iterativ implementieren.", null, 0, null); this.info.addCodeLine("Die Funktioneweise ist hierbei wie folgt:", null, 0, null); this.info.addCodeLine("- Betrachte die i-te Zeile der linken Matrix und die i-te Spalte der rechten Matrix.", null, 1, null); @@ -212,7 +215,7 @@ public class MatrixGenerator implements Generator { String[][] data = new String[1][2]; data[0][0] = "Summe = "; - data[0][1] = "0"; + data[0][1] = ""; this.summe = lang.newStringMatrix(new Offset(15, 0, intMatrixB, AnimalScript.DIRECTION_E), data, "stumme", null); this.summe.changeColor(AnimationPropertiesKeys.FILL_PROPERTY, Color.WHITE, null, null); @@ -250,9 +253,10 @@ public class MatrixGenerator implements Generator { lang.nextStep(); sc.unhighlight(1); sc.highlight(2); - + this.summe.put(0, 1, "0", null, null); int[][] result = new int[matrixA.length][matrixB[0].length]; // 1 int summe = 0; // 2 + int summetmp = 0; for(int i=0; iDie Funktioneweise ist hierbei wie folgt:" + "
- Betrachte die i-te Zeile der linken Matrix und die i-te Spalte der rechten Matrix." +