diff --git a/src/main/java/edu/ntnu/stud/chaosgame/model/game/ChaosGameFileHandler.java b/src/main/java/edu/ntnu/stud/chaosgame/model/game/ChaosGameFileHandler.java index 47300b2b779fc8f82026f6db1b54de68e3d617dc..78e9c65a1a2f6a256b02531a439dff7ac40e3140 100644 --- a/src/main/java/edu/ntnu/stud/chaosgame/model/game/ChaosGameFileHandler.java +++ b/src/main/java/edu/ntnu/stud/chaosgame/model/game/ChaosGameFileHandler.java @@ -90,22 +90,26 @@ public class ChaosGameFileHandler { List<Transform2D> transforms = description.getTransforms(); try (BufferedWriter writer = new BufferedWriter(new FileWriter(path))){ + // Check for transform type and write name if (transforms.getFirst() instanceof AffineTransform2D){ writer.write("Affine2D\n"); } else if (transforms.getFirst() instanceof JuliaTransform){ writer.write("Julia\n"); } + + // Write minimum and maximum vectors Vector2D minVector2D = description.getMinCoords(); Vector2D maxVector2D = description.getMaxCoords(); writer.write(minVector2D.getX0() + ", " + minVector2D.getX1() + "\n"); writer.write(maxVector2D.getX0() + ", " + maxVector2D.getX1() + "\n"); + // Write transformation values for correct transformation for(Transform2D transform : transforms){ if (transform instanceof AffineTransform2D affineTransform2D) { Matrix2x2 matrix2x2 = affineTransform2D.getMatrix(); Vector2D vector2D = affineTransform2D.getVector(); writer.write(matrix2x2.getA00() + ", " + matrix2x2.getA01() + ", " + matrix2x2.getA10() + ", " - + matrix2x2.getA11() + ", " + vector2D.getX0() + ", " + vector2D.getX1() + "\n"); + + matrix2x2.getA11() + ", " + vector2D.getX0() + ", " + vector2D.getX1() + "\n"); } else if (transform instanceof JuliaTransform juliaTransform){ Complex complex = juliaTransform.getC1();