diff --git a/src/main/java/org/example/App.java b/src/main/java/org/example/App.java index 617f0ee..49c716f 100644 --- a/src/main/java/org/example/App.java +++ b/src/main/java/org/example/App.java @@ -12,6 +12,8 @@ import org.example.views.MainUI; */ public class App extends Application { + public static final double MULTIPLIER = 1.5; + @Override public void start(Stage stage) { MainUI.start(stage); diff --git a/src/main/java/org/example/controller/Controller.java b/src/main/java/org/example/controller/Controller.java index 6f1952c..a0289b1 100644 --- a/src/main/java/org/example/controller/Controller.java +++ b/src/main/java/org/example/controller/Controller.java @@ -1,4 +1,12 @@ package org.example.controller; +import org.example.models.MainLogic; +import org.example.models.Path; + public class Controller { + + public static Path logic(int k, double multiplier) { + return MainLogic.logic(k, multiplier); + } + } diff --git a/src/main/java/org/example/models/MainLogic.java b/src/main/java/org/example/models/MainLogic.java index e26b0db..6c7a443 100644 --- a/src/main/java/org/example/models/MainLogic.java +++ b/src/main/java/org/example/models/MainLogic.java @@ -9,12 +9,20 @@ import java.util.Set; public class MainLogic { private static final HashMap, List> cache = new HashMap<>(); - public static final double MULTIPLIER = 1.5; - public static final int K = 4; + public static double MULTIPLIER = 1.5; + public static int K = 4; public static double LENGHT; public static void main(String[] args) { + System.out.println(logic(K, MULTIPLIER)); + } + public static Path logic(int k, double multiplier) { + + // Parsing args + K = k; MULTIPLIER = multiplier; + + // Login ArrayList nl = importData(); Node moncalieri = nl.getLast(); nl.remove(moncalieri); @@ -34,7 +42,7 @@ public class MainLogic { bestPath = p; } } - System.out.println(bestPath); + return bestPath; } public static ArrayList importData() { diff --git a/src/main/java/org/example/views/MainUI.java b/src/main/java/org/example/views/MainUI.java index 07eab06..61e8e9a 100644 --- a/src/main/java/org/example/views/MainUI.java +++ b/src/main/java/org/example/views/MainUI.java @@ -1,17 +1,54 @@ package org.example.views; import javafx.scene.Scene; +import javafx.scene.control.Button; import javafx.scene.control.Label; +import javafx.scene.control.TextField; +import javafx.scene.control.TextFormatter; +import javafx.scene.layout.HBox; import javafx.scene.layout.StackPane; +import javafx.scene.layout.VBox; import javafx.stage.Stage; +import org.example.App; +import org.example.controller.Controller; +import org.example.models.Path; + +import java.util.function.UnaryOperator; public class MainUI { public static void start(Stage stage) { + //Controller.logic() + + VBox root = new VBox(); + TextField numericField = new TextField(); + + // Filter to allow only integer numbers + UnaryOperator filter = change -> { + String text = change.getControlNewText(); + // Regex: allows empty field (for deletion) or digits only + if (text.matches("\\d*")) { + return change; + } + return null; // Reject the change + }; + Button submit = new Button("Submit"); + HBox hBox = new HBox(numericField,submit); + root.getChildren().add(hBox); + var scene = new Scene(root, 640, 480); + + submit.setOnAction(event -> { + int k = Integer.parseInt(numericField.getText()); + double multiplier = App.MULTIPLIER; + Path bestPath = Controller.logic(k, multiplier); + slideShowStart(); + }); - var label = new Label("Hello, JavaFX " + "javafxVersion" + ", running on Java " + "javaVersion" + "."); - var scene = new Scene(new StackPane(label), 640, 480); stage.setScene(scene); stage.show(); } + + private static void slideShowStart() { + + } } diff --git a/src/main/resources/images/Belvedere della Silvana.jpg b/src/main/resources/images/Belvedere della Silvana.jpg new file mode 100644 index 0000000..4131e0f Binary files /dev/null and b/src/main/resources/images/Belvedere della Silvana.jpg differ diff --git a/src/main/resources/images/Belvedere di Castelmola.jpg b/src/main/resources/images/Belvedere di Castelmola.jpg new file mode 100644 index 0000000..a91e41a Binary files /dev/null and b/src/main/resources/images/Belvedere di Castelmola.jpg differ diff --git a/src/main/resources/images/Belvedere di San Vigilio.jpg b/src/main/resources/images/Belvedere di San Vigilio.jpg new file mode 100644 index 0000000..6691903 Binary files /dev/null and b/src/main/resources/images/Belvedere di San Vigilio.jpg differ diff --git a/src/main/resources/images/Belvedere di Villa d'Este.jpg b/src/main/resources/images/Belvedere di Villa d'Este.jpg new file mode 100644 index 0000000..76d54c9 Binary files /dev/null and b/src/main/resources/images/Belvedere di Villa d'Este.jpg differ diff --git a/src/main/resources/images/Castello di Miramare.jpg b/src/main/resources/images/Castello di Miramare.jpg new file mode 100644 index 0000000..f49fbe4 Binary files /dev/null and b/src/main/resources/images/Castello di Miramare.jpg differ diff --git a/src/main/resources/images/Castello di Moncalieri.jpg b/src/main/resources/images/Castello di Moncalieri.jpg new file mode 100644 index 0000000..b218757 Binary files /dev/null and b/src/main/resources/images/Castello di Moncalieri.jpg differ diff --git a/src/main/resources/images/Castello di Racconigi.jpg b/src/main/resources/images/Castello di Racconigi.jpg new file mode 100644 index 0000000..f40ef9a Binary files /dev/null and b/src/main/resources/images/Castello di Racconigi.jpg differ diff --git a/src/main/resources/images/Palazzo Ducale di Urbino.jpg b/src/main/resources/images/Palazzo Ducale di Urbino.jpg new file mode 100644 index 0000000..8cbaa7f Binary files /dev/null and b/src/main/resources/images/Palazzo Ducale di Urbino.jpg differ diff --git a/src/main/resources/images/Palazzo Madama.jpg b/src/main/resources/images/Palazzo Madama.jpg new file mode 100644 index 0000000..c874a2d Binary files /dev/null and b/src/main/resources/images/Palazzo Madama.jpg differ diff --git a/src/main/resources/images/Palazzo Pitti.jpg b/src/main/resources/images/Palazzo Pitti.jpg new file mode 100644 index 0000000..62d3d2d Binary files /dev/null and b/src/main/resources/images/Palazzo Pitti.jpg differ diff --git a/src/main/resources/images/Palazzo Reale di Torino.jpg b/src/main/resources/images/Palazzo Reale di Torino.jpg new file mode 100644 index 0000000..d044676 Binary files /dev/null and b/src/main/resources/images/Palazzo Reale di Torino.jpg differ diff --git a/src/main/resources/images/Piazzale Michelangelo.jpg b/src/main/resources/images/Piazzale Michelangelo.jpg new file mode 100644 index 0000000..f3060bf Binary files /dev/null and b/src/main/resources/images/Piazzale Michelangelo.jpg differ diff --git a/src/main/resources/images/Punto Panoramico del Monte Baldo.jpg b/src/main/resources/images/Punto Panoramico del Monte Baldo.jpg new file mode 100644 index 0000000..aa1f66f Binary files /dev/null and b/src/main/resources/images/Punto Panoramico del Monte Baldo.jpg differ diff --git a/src/main/resources/images/Reggia di Caserta.jpg b/src/main/resources/images/Reggia di Caserta.jpg new file mode 100644 index 0000000..05c981e Binary files /dev/null and b/src/main/resources/images/Reggia di Caserta.jpg differ diff --git a/src/main/resources/images/Rocca di Calascio.jpg b/src/main/resources/images/Rocca di Calascio.jpg new file mode 100644 index 0000000..752ca3e Binary files /dev/null and b/src/main/resources/images/Rocca di Calascio.jpg differ