From 86c9c50a3c618bc1042959b5f660a0768c5ca46a Mon Sep 17 00:00:00 2001 From: "M.Scholz" Date: Tue, 19 Jun 2012 19:02:13 +0200 Subject: [PATCH] first version calculating the result --- ss2012/AlgoAnim/Teil 5/eingebunden.jar | Bin 8618857 -> 8622450 bytes .../generators/maths/MatrixGenerator.java | 96 +++++++++++++++--- 2 files changed, 82 insertions(+), 14 deletions(-) diff --git a/ss2012/AlgoAnim/Teil 5/eingebunden.jar b/ss2012/AlgoAnim/Teil 5/eingebunden.jar index fe3adfa46575e81f8a7d7a904785e536838048ca..47c817fde3a00a6053a2000e4cd7efb89f971ea0 100644 GIT binary patch delta 22580 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 Z5{`2Z1M_#+P*Nxwr$(CDzRMGHj_#R$a= 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 simple testing */ - static int[][] matrixA; - static int[][] matrixB; + static int[][] matrixA = {{1, 2},{3, 4}}; + static int[][] matrixB = {{5, 6}, {7, 8}}; static SourceCodeProperties SC_PROPS; static SourceCodeProperties TEXT_PROPS; static int HIGHLIGHTING_TIME = 100; // in ticks @@ -63,10 +78,34 @@ public class MatrixGenerator implements Generator { /** * The matrices */ + private StringMatrix summe = null; private IntMatrix intMatrixA = null; private IntMatrix intMatrixB = null; private IntMatrix intMatrixResult = null; + /** + * unhighlightingTime + */ + private Timing unhighTime = new Timing(UNHIGHLIGHTING_TIME) { + + @Override + public String getUnit() { + // TODO Auto-generated method stub + return "ticks"; + } + }; + + /** + * highlightTime + */ + private Timing highTime = new Timing(HIGHLIGHTING_TIME) { + + @Override + public String getUnit() { + // TODO Auto-generated method stub + return "ticks"; + } + }; // ========================================================================================================= /** @@ -146,17 +185,17 @@ public class MatrixGenerator implements Generator { /** * Generates the one single matrix including matrixA, matrixB und the calculated result matrix */ - public void generateMatrix(){ + public void generateMatrices(){ MatrixProperties mp = new MatrixProperties(); mp.set(AnimationPropertiesKeys.FILL_PROPERTY, Color.WHITE); - //generate matrixB // X-Achse, Y-Achse + //generate matrixB this.intMatrixB = lang.newIntMatrix(new Offset(20, 40, sc, AnimalScript.DIRECTION_S), matrixB, "matrixB", null, mp); //generate matrixA with an offset to matrixB - this.intMatrixA = lang.newIntMatrix(new Offset((-23*matrixB.length), 10, intMatrixB, AnimalScript.DIRECTION_SW), matrixA, "matrixA", null, mp); + this.intMatrixA = lang.newIntMatrix(new Offset((-30*matrixB.length), 10, intMatrixB, AnimalScript.DIRECTION_SW), matrixA, "matrixA", null, mp); //generate result matrix @@ -171,6 +210,13 @@ public class MatrixGenerator implements Generator { this.intMatrixResult = lang.newIntMatrix(new Offset(0, 10, intMatrixB, AnimalScript.DIRECTION_SW), result, "table", null, mp); + String[][] data = new String[1][2]; + data[0][0] = "Summe = "; + data[0][1] = "0"; + + 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); + } /** @@ -189,7 +235,7 @@ public class MatrixGenerator implements Generator { generateSourceCode(); //generate matrices - generateMatrix(); + generateMatrices(); //STEP lang.nextStep(); @@ -207,6 +253,7 @@ public class MatrixGenerator implements Generator { int[][] result = new int[matrixA.length][matrixB[0].length]; // 1 int summe = 0; // 2 + int summetmp = 0; for(int i=0; i