Example usage for javafx.geometry Rectangle2D getWidth

List of usage examples for javafx.geometry Rectangle2D getWidth

Introduction

In this page you can find the example usage for javafx.geometry Rectangle2D getWidth.

Prototype

public double getWidth() 

Source Link

Document

The width of this Rectangle2D .

Usage

From source file:de.unibw.inf2.fishification.Launch.java

@Override
public void start(Stage primaryStage) {

    m_log.info("Fishification launched.");

    // Store JavaFx stage for thread-safe access
    StageSingleton.injectStage(primaryStage);

    boolean fullScreenMode = true;
    int serverPort = 8088;
    String serverEndpoint = "fishworld";
    try {/*from   www . j a  v  a2s. c  o m*/
        // Load configuration
        PropertiesConfiguration config = new PropertiesConfiguration("app.properties");

        // Assign properties
        m_serverMode = config.getBoolean("fishification.server.active");
        fullScreenMode = config.getBoolean("fishification.fullscreen");
        serverPort = config.getInt("fishification.server.port");
        serverEndpoint = config.getString("fishification.server.endpoint");

    } catch (ConfigurationException e) {
        m_log.warn(MarkerManager.getMarker("EXCEPTION"), "Error reading configuration.", e);
    }

    // Init Server ?
    if (!m_serverMode) {

        m_log.info(String.format("Starting in client mode with fullscreen: '%b'", fullScreenMode));

        // Create World
        m_world = new FishWorld();

        // Init World
        Rectangle2D screenBounds = Screen.getPrimary().getVisualBounds();
        m_world.initialize(screenBounds.getWidth(), screenBounds.getHeight());

        // Let's go
        m_world.launch();

    } else {

        // Launch Server
        m_log.info(String.format("Starting server with port: '%d' endpoint: '%s' fullscreen: '%b'", serverPort,
                serverEndpoint, fullScreenMode));

        try {
            // Set up server
            FishificationServer.launch(serverPort, serverEndpoint);

        } catch (Exception e) {
            m_log.error(MarkerManager.getMarker("EXCEPTION"), "Error launching the server. Exit application.",
                    e);
            Platform.exit();
        }
    }

    // Focus window
    primaryStage.show();

    // Full Screen mode
    if (fullScreenMode) {
        primaryStage.setFullScreen(true);
    }

}

From source file:Main.java

@Override
public void start(Stage stage) {
    Group root = new Group();
    Scene scene = new Scene(root, 500, 200);
    stage.setScene(scene);/*from  www  .ja  v a  2  s.c om*/

    Rectangle2D primaryScreenBounds = Screen.getPrimary().getVisualBounds();

    //set Stage boundaries to visible bounds of the main screen
    stage.setX(primaryScreenBounds.getMinX());
    stage.setY(primaryScreenBounds.getMinY());
    stage.setWidth(primaryScreenBounds.getWidth());
    stage.setHeight(primaryScreenBounds.getHeight());

    stage.show();

}

From source file:de.ks.text.AsciiDocEditor.java

@FXML
void showPreviewPopup() {
    if (previewPopupStage == null) {
        String title = Localized.get("adoc.preview");

        previewPopupStage = new Stage();
        previewPopupStage.setTitle(title);
        Scene scene = new Scene(new StackPane(popupPreviewNode));
        scene.setOnKeyReleased(e -> {
            if (e.getCode() == KeyCode.ESCAPE) {
                previewPopupStage.close();
            }//from   ww w.  ja v a  2  s.com
        });
        previewPopupStage.setScene(scene);

        Rectangle2D bounds = new ScreenResolver().getScreenToShow().getBounds();
        previewPopupStage.setX(bounds.getMinX());
        previewPopupStage.setY(bounds.getMinY());
        previewPopupStage.setWidth(bounds.getWidth());
        previewPopupStage.setHeight(bounds.getHeight());

        previewPopupStage.initModality(Modality.NONE);
        previewPopupStage.setOnShowing(e -> {
            popupPreview.showDirect(getText());
        });
        previewPopupStage.setOnCloseRequest(e -> this.previewPopupStage = null);
        previewPopupStage.show();
    }
}

From source file:jp.co.heppokoact.autocapture.FXMLDocumentController.java

/**
 * ???????????//from w w w. j  a v  a  2  s  .  c om
 * ????????
 * ???ESC????????
 *
 * @return ???????
 * @throws IOException ?????
 */
private Stage createTransparentStage() throws IOException {
    // ??????????
    Stage transparentStage = new Stage(StageStyle.TRANSPARENT);
    transparentStage.initOwner(anchorPane.getScene().getWindow());
    transparentStage.initModality(Modality.APPLICATION_MODAL);
    transparentStage.setResizable(false);
    Rectangle2D rect = Screen.getPrimary().getVisualBounds();
    transparentStage.setWidth(rect.getWidth());
    transparentStage.setHeight(rect.getHeight());

    // ???
    java.awt.Rectangle awtRect = new java.awt.Rectangle((int) rect.getWidth(), (int) rect.getHeight());
    BufferedImage captureImage = robot.createScreenCapture(awtRect);

    // ??????
    ByteArrayInputStream in = ImageUtil.convToInputStream(captureImage);
    BackgroundImage bgImage = new BackgroundImage(new Image(in), BackgroundRepeat.NO_REPEAT,
            BackgroundRepeat.NO_REPEAT, BackgroundPosition.DEFAULT, BackgroundSize.DEFAULT);
    Pane pane = new Pane();
    pane.setBackground(new Background(bgImage));
    pane.setStyle("-fx-border-color: rgba(255, 255, 0, 0.5); -fx-border-style: solid; -fx-border-width: 15;");

    // ???ESC?????
    Scene scene = new Scene(pane);
    transparentStage.setScene(scene);
    scene.setOnKeyPressed(e -> {
        if (e.getCode() == KeyCode.ESCAPE) {
            transparentStage.close();
        }
    });

    return transparentStage;
}

From source file:com.deicos.lince.Initializer.java

@Override
public void start(Stage stage) throws Exception {
    /*AppPreloader preloader = new AppPreloader();
    preloader.start(stage);*//*from  www . j  a  v a  2s.c o m*/
    notifyPreloader(new Preloader.StateChangeNotification(Preloader.StateChangeNotification.Type.BEFORE_START));
    stage.setTitle(windowTitle);
    //stage.setScene(new Scene(mainLayout));

    Rectangle2D screenBounds = Screen.getPrimary().getVisualBounds();
    Browser browser = new Browser(BrowserType.HEAVYWEIGHT);
    BrowserView view = new BrowserView(browser);
    //String url = getClass().getClassLoader().getResource("app-lince.html").toString();
    String url = getServerURL();
    browser.loadURL(url);
    String remoteDebuggingURL = browser.getRemoteDebuggingURL();
    logger.info("==============================================================================");
    logger.info("   Remote debug   :" + remoteDebuggingURL);
    logger.info("   Remote uri     :" + url);
    logger.info("==============================================================================");
    Scene scene = new Scene(new BorderPane(view), screenBounds.getWidth() - 20, screenBounds.getHeight() - 40);
    stage.setScene(scene);
    stage.setResizable(true);
    stage.centerOnScreen();
    stage.show();
    stage.setOnCloseRequest(this);
}

From source file:Main.java

@Override
public void start(Stage stage) {
    BorderPane root = new BorderPane();

    Pane parentContainer = new Pane();
    parentContainer.setPrefSize(500, 500);
    parentContainer.setPickOnBounds(false);

    //Pane parent = new Pane();
    Group parent = new Group();
    boundsLayoutNode = parent;/*from   w w  w  .  ja va2  s.  c  om*/
    //parent.setPrefSize(300, 200);
    parent.setLayoutX(200);
    parent.setLayoutY(200);
    parent.setStyle("-fx-background-color:white;");
    parent.getChildren().addAll(new Group(localXAxisGroup, localYAxisGroup),
            new Group(parentXAxisGroup, parentYAxisGroup),
            new Group(parentBoundsRect, PARENT_BOUNDS_PATH_CIRCLE),
            new Group(localBoundsRect, LOCAL_BOUNDS_PATH_CIRCLE),
            new Group(layoutBoundsRect, LAYOUT_BOUNDS_PATH_CIRCLE), new Group(mainRect));

    parentContainer.getChildren().addAll(parent);

    VBox transformsControls = getTransformationControls();
    VBox resultsControls = getResultsControls();

    BorderPane nestedPane = new BorderPane();
    nestedPane.setCenter(parentContainer);
    nestedPane.setBottom(resultsControls);
    //nestedPane.setTop(printDataTextArea);
    //printDataTextArea.setPrefColumnCount(40);
    //printDataTextArea.setPrefRowCount(3);
    root.setCenter(nestedPane);

    root.setRight(transformsControls);
    //root.setBottom(resultsControls);
    //root.setCenter(parentContainer);

    // Attach event handlers
    attachEventHandlers();

    Scene scene = new Scene(root); //, 600, 400);
    stage.setScene(scene);
    stage.setTitle("Bounds of a Node");
    Rectangle2D visualBounds = Screen.getPrimary().getVisualBounds();
    stage.setX(visualBounds.getMinX());
    stage.setY(visualBounds.getMinY());
    stage.setWidth(visualBounds.getWidth());
    stage.setHeight(visualBounds.getHeight());
    stage.show();

    // Make sure everything is in sync
    relayout();
}

From source file:editeurpanovisu.EditeurPanovisu.java

/**
 *
 * @param i// w ww  .  ja v a 2 s.  c  o  m
 * @param longitude
 * @param latitude
 */
private static void afficheHSHTML(int i, double longitude, double latitude) {
    double largeur = ivImagePanoramique.getFitWidth();
    double X = (longitude + 180.0d) * largeur / 360.0d + ivImagePanoramique.getLayoutX();
    double Y = (90.0d - latitude) * largeur / 360.0d;
    Circle circPoint = new Circle(X, Y, 5);
    circPoint.setFill(Color.DARKGREEN);
    circPoint.setStroke(Color.YELLOWGREEN);
    circPoint.setId("html" + i);
    circPoint.setCursor(Cursor.DEFAULT);
    panePanoramique.getChildren().add(circPoint);
    Tooltip tltpHSImage = new Tooltip("HTML #" + (i + 1));
    tltpHSImage.setStyle(getStrTooltipStyle());
    Tooltip.install(circPoint, tltpHSImage);
    circPoint.setOnDragDetected((mouseEvent1) -> {
        circPoint.setFill(Color.YELLOWGREEN);
        circPoint.setStroke(Color.DARKGREEN);
        bDragDrop = true;
        mouseEvent1.consume();

    });
    circPoint.setOnMouseDragged((mouseEvent1) -> {
        double XX = mouseEvent1.getX() - ivImagePanoramique.getLayoutX();
        if (XX < 0) {
            XX = 0;
        }
        if (XX > ivImagePanoramique.getFitWidth()) {
            XX = ivImagePanoramique.getFitWidth();
        }
        circPoint.setCenterX(XX + ivImagePanoramique.getLayoutX());
        double YY = mouseEvent1.getY();
        if (YY < 0) {
            YY = 0;
        }
        if (YY > ivImagePanoramique.getFitHeight()) {
            YY = ivImagePanoramique.getFitHeight();
        }
        circPoint.setCenterY(YY);
        afficheLoupe(XX, YY);
        mouseEvent1.consume();

    });
    circPoint.setOnMouseReleased((mouseEvent1) -> {
        String strPoint = circPoint.getId();
        strPoint = strPoint.substring(4, strPoint.length());
        int iNumeroPoint = Integer.parseInt(strPoint);
        double X1 = mouseEvent1.getSceneX();
        double Y1 = mouseEvent1.getSceneY();
        double mouseX = X1 - ivImagePanoramique.getLayoutX();
        if (mouseX < 0) {
            mouseX = 0;
        }
        if (mouseX > ivImagePanoramique.getFitWidth()) {
            mouseX = ivImagePanoramique.getFitWidth();
        }
        double mouseY = Y1 - panePanoramique.getLayoutY() - 130 - getiDecalageMac();
        if (mouseY < 0) {
            mouseY = 0;
        }
        if (mouseY > ivImagePanoramique.getFitHeight()) {
            mouseY = ivImagePanoramique.getFitHeight();
        }

        double longit, lat;
        double larg = ivImagePanoramique.getFitWidth();
        String strLong, strLat;
        longit = 360.0f * mouseX / larg - 180;
        lat = 90.0d - 2.0f * mouseY / larg * 180.0f;
        getPanoramiquesProjet()[getiPanoActuel()].getHotspotHTML(iNumeroPoint).setLatitude(lat);
        getPanoramiquesProjet()[getiPanoActuel()].getHotspotHTML(iNumeroPoint).setLongitude(longit);
        circPoint.setFill(Color.DARKGREEN);
        circPoint.setStroke(Color.YELLOWGREEN);
        mouseEvent1.consume();

    });

    circPoint.setOnMouseClicked((mouseEvent1) -> {
        String strPoint = circPoint.getId();
        strPoint = strPoint.substring(4, strPoint.length());
        int iNum = Integer.parseInt(strPoint);
        Node nodePointImage;
        nodePointImage = (Node) panePanoramique.lookup("#html" + strPoint);

        if (mouseEvent1.isControlDown()) {
            valideHS();
            setbDejaSauve(false);
            getStPrincipal().setTitle(getStPrincipal().getTitle().replace(" *", "") + " *");
            panePanoramique.getChildren().remove(nodePointImage);

            for (int io = iNum + 1; io < getiNumImages(); io++) {
                nodePointImage = (Node) panePanoramique.lookup("#html" + Integer.toString(io));
                nodePointImage.setId("img" + Integer.toString(io - 1));
            }
            /**
             * on retire les anciennes indication de HS
             */
            retireAffichageHotSpots();
            setiNumHTML(getiNumHTML() - 1);
            getPanoramiquesProjet()[getiPanoActuel()].removeHotspotHTML(iNum);
            /**
             * On les cre les nouvelles
             */
            ajouteAffichageHotspots();
            mouseEvent1.consume();
        } else {
            if (!bDragDrop) {
                EditeurHTML editHTML = new EditeurHTML();
                HotspotHTML HS = getPanoramiquesProjet()[getiPanoActuel()].getHotspotHTML(iNum);
                editHTML.setHsHTML(HS);
                Rectangle2D tailleEcran = Screen.getPrimary().getBounds();
                int iHauteur = (int) tailleEcran.getHeight() - 100;
                int iLargeur = (int) tailleEcran.getWidth() - 100;
                editHTML.affiche(iLargeur, iHauteur);
                editHTML.addPropertyChangeListener("bValide", (ev) -> {
                    if (ev.getNewValue().toString().equals("true")) {
                        getPanoramiquesProjet()[getiPanoActuel()].setHotspotHTML(editHTML.getHsHTML(), iNum);
                        dejaCharge = false;
                        retireAffichageHotSpots();
                        Pane affHS1 = paneAffichageHS(strListePano(), getiPanoActuel());
                        affHS1.setId("labels");
                        vbVisuHotspots.getChildren().add(affHS1);
                    }
                });
            } else {
                bDragDrop = false;
            }
            mouseEvent1.consume();
        }

    });
}

From source file:editeurpanovisu.EditeurPanovisu.java

public static void creerEditerDiaporama(String strDiaporama) {
    apCreationDiaporama.getChildren().clear();
    apCreationDiaporama.setStyle("-fx-background-color : -fx-base;" + "-fx-border-color: derive(-fx-base,10%);"
            + "-fx-effect: dropshadow( three-pass-box , rgba(0,0,0,0.5) , 8, 0.0 , 0 , 8 );"
            + "-fx-border-width: 1px;");
    mbarPrincipal.setDisable(true);/* ww w. ja  va  2 s. c o  m*/
    bbarPrincipal.setDisable(true);
    hbBarreBouton.setDisable(true);
    tpEnvironnement.setDisable(true);

    Rectangle2D tailleEcran = Screen.getPrimary().getBounds();
    int iLargeurEcran = (int) tailleEcran.getWidth();
    int iHauteurEcran = (int) tailleEcran.getHeight() - 100;
    final int iLargeur = 800;
    final int iHauteur = 630;
    Label lblNomDiapo = new Label(rbLocalisation.getString("main.nomDiapo"));
    lblNomDiapo.setLayoutX(30);
    lblNomDiapo.setLayoutY(45);

    ComboBox cbListeDiapo = new ComboBox();
    cbListeDiapo.setLayoutX(150);
    cbListeDiapo.setLayoutY(40);
    cbListeDiapo.setValue("");
    for (int i = 0; i < getiNombreDiapo(); i++) {
        cbListeDiapo.getItems().add(diaporamas[i].getStrNomDiaporama());
    }

    Button btnNouveauDiapo = new Button(rbLocalisation.getString("diapo.nouveau"));
    btnNouveauDiapo.setLayoutX(iLargeur - 330);
    btnNouveauDiapo.setLayoutY(20);
    btnNouveauDiapo.setPrefSize(140, 60);

    Button btnEffaceDiapo = new Button(rbLocalisation.getString("diapo.efface"));
    btnEffaceDiapo.setLayoutX(iLargeur - 170);
    btnEffaceDiapo.setLayoutY(20);
    btnEffaceDiapo.setPrefSize(140, 60);

    gestDiapo = new GestionnaireDiaporamaController();
    gestDiapo.initDiaporama();
    apCreationDiaporama.getChildren().addAll(lblNomDiapo, cbListeDiapo, btnEffaceDiapo, btnNouveauDiapo,
            gestDiapo.apDiaporama);

    apCreationDiaporama.setPrefWidth(iLargeur);
    apCreationDiaporama.setMinWidth(iLargeur);
    apCreationDiaporama.setMaxWidth(iLargeur);
    apCreationDiaporama.setPrefHeight(iHauteur);
    apCreationDiaporama.setMinHeight(iHauteur);
    apCreationDiaporama.setMaxHeight(iHauteur);
    apCreationDiaporama.setLayoutX((iLargeurEcran - iLargeur) / 2);
    apCreationDiaporama.setLayoutY((iHauteurEcran - iHauteur) / 2);
    apCreationDiaporama.setVisible(true);

    gestDiapo.addPropertyChangeListener("valideDiapo", (e) -> {
        mbarPrincipal.setDisable(false);
        bbarPrincipal.setDisable(false);
        hbBarreBouton.setDisable(false);
        tpEnvironnement.setDisable(false);
        apCreationDiaporama.setVisible(false);
        gestDiapo.diapoSauve = true;
        boolean bTrouve = false;
        int iTrouve = -1;
        for (int i = 0; i < getiNombreDiapo(); i++) {
            if (diaporamas[i].getStrNomDiaporama().equals(cbListeDiapo.getValue())) {
                bTrouve = true;
                iTrouve = i;
            }
        }
        if (bTrouve) {
            diaporamas[iTrouve] = gestDiapo.getDiaporama();
            try {
                creeDiaporamaHTML(diaporamas[iTrouve], iTrouve);
            } catch (IOException ex) {
                Logger.getLogger(EditeurPanovisu.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
        gestDiapo.reInit(new Diaporama());
    });

    gestDiapo.addPropertyChangeListener("visualiseDiapo", (e) -> {
        try {
            creeDiaporamaHTML(gestDiapo.getDiaporama(), -1);
        } catch (IOException ex) {
            Logger.getLogger(EditeurPanovisu.class.getName()).log(Level.SEVERE, null, ex);
        }
        String strNomFichier = getStrRepertTemp() + File.separator + "diaporama" + File.separator
                + "diapo-1.html";
        webEngine.load("file:///" + strNomFichier);
        apWebview.getChildren().clear();
        browser.setPrefSize(apWebview.getPrefWidth() - 20, apWebview.getPrefHeight() - 50);
        browser.setTranslateX(10);
        browser.setTranslateY(10);
        apWebview.getChildren().add(browser);
        Button btnOk = new Button("Ok");
        btnOk.setPrefSize(100, 20);
        btnOk.setLayoutX(apWebview.getPrefWidth() - 110);
        btnOk.setLayoutY(apWebview.getPrefHeight() - 30);
        apWebview.getChildren().add(btnOk);
        apWebview.setVisible(true);
        btnOk.setOnMouseClicked((me) -> {
            apWebview.setVisible(false);
            apWebview.getChildren().clear();
        });
    });

    gestDiapo.addPropertyChangeListener("annuleDiapo", (e) -> {
        mbarPrincipal.setDisable(false);
        bbarPrincipal.setDisable(false);
        hbBarreBouton.setDisable(false);
        tpEnvironnement.setDisable(false);
        apCreationDiaporama.setVisible(false);
        gestDiapo.diapoSauve = true;
        gestDiapo.reInit(new Diaporama());
    });

    cbListeDiapo.valueProperty().addListener((ov, old_val, new_val) -> {
        if (new_val != null) {
            ButtonType reponse = null;
            ButtonType buttonTypeOui = new ButtonType(rbLocalisation.getString("main.oui"));
            ButtonType buttonTypeNon = new ButtonType(rbLocalisation.getString("main.non"));
            if (!gestDiapo.diapoSauve) {
                Alert alert = new Alert(AlertType.CONFIRMATION);
                alert.setTitle(rbLocalisation.getString("diapo.sauver"));
                alert.setHeaderText(null);
                alert.setContentText(rbLocalisation.getString("diapo.sauverTexte"));
                alert.getButtonTypes().clear();
                alert.getButtonTypes().setAll(buttonTypeOui, buttonTypeNon);
                Optional<ButtonType> actReponse = alert.showAndWait();
                reponse = actReponse.get();
            }
            if (reponse == buttonTypeOui) {

                boolean bTrouve = false;
                int iTrouve = -1;
                for (int i = 0; i < getiNombreDiapo(); i++) {
                    if (diaporamas[i].getStrNomDiaporama().equals(old_val)) {
                        bTrouve = true;
                        iTrouve = i;
                    }
                }
                if (bTrouve) {
                    diaporamas[iTrouve] = gestDiapo.getDiaporama();
                    try {
                        creeDiaporamaHTML(diaporamas[iTrouve], iTrouve);
                    } catch (IOException ex) {
                        Logger.getLogger(EditeurPanovisu.class.getName()).log(Level.SEVERE, null, ex);
                    }
                }

            }
            gestDiapo.diapoSauve = true;
            boolean bTrouve = false;
            int iTrouve = -1;
            for (int i = 0; i < getiNombreDiapo(); i++) {
                if (diaporamas[i].getStrNomDiaporama().equals(new_val)) {
                    bTrouve = true;
                    iTrouve = i;
                }
            }
            if (bTrouve) {
                gestDiapo.setbDisabled(false);
                gestDiapo.reInit(diaporamas[iTrouve]);

            }

        }
    });

    btnNouveauDiapo.setOnMouseClicked((me) -> {
        ButtonType reponse = null;
        ButtonType buttonTypeOui = new ButtonType(rbLocalisation.getString("main.oui"));
        ButtonType buttonTypeNon = new ButtonType(rbLocalisation.getString("main.non"));
        if (!gestDiapo.diapoSauve) {
            Alert alert = new Alert(AlertType.CONFIRMATION);
            alert.setTitle(rbLocalisation.getString("diapo.sauver"));
            alert.setHeaderText(null);
            alert.setContentText(rbLocalisation.getString("diapo.sauverTexte"));
            alert.getButtonTypes().clear();
            alert.getButtonTypes().setAll(buttonTypeOui, buttonTypeNon);
            Optional<ButtonType> actReponse = alert.showAndWait();
            reponse = actReponse.get();
        }
        if (reponse == buttonTypeOui) {
            gestDiapo.diapoSauve = true;
            boolean bTrouve = false;
            int iTrouve = -1;
            for (int i = 0; i < getiNombreDiapo(); i++) {
                if (diaporamas[i].getStrNomDiaporama().equals(cbListeDiapo.getValue())) {
                    bTrouve = true;
                    iTrouve = i;
                }
            }
            if (bTrouve) {
                diaporamas[iTrouve] = gestDiapo.getDiaporama();
                try {
                    creeDiaporamaHTML(diaporamas[iTrouve], iTrouve);
                } catch (IOException ex) {
                    Logger.getLogger(EditeurPanovisu.class.getName()).log(Level.SEVERE, null, ex);
                }
            }

        }

        TextInputDialog dialog = new TextInputDialog("");
        dialog.setTitle(rbLocalisation.getString("main.nomDiapo"));
        dialog.setHeaderText(null);
        dialog.setContentText(rbLocalisation.getString("diapo.entrerNom"));

        Optional<String> resultat = dialog.showAndWait();
        if (resultat.isPresent()) {
            String nomDiapo = resultat.get();
            boolean bTrouve = false;
            for (int i = 0; i < getiNombreDiapo(); i++) {
                if (diaporamas[i].getStrNomDiaporama().equals(nomDiapo)) {
                    bTrouve = true;
                }
            }
            if (!bTrouve) {
                diaporamas[getiNombreDiapo()] = new Diaporama();
                diaporamas[getiNombreDiapo()].setStrNomDiaporama(nomDiapo);
                cbListeDiapo.getItems().add(nomDiapo);
                cbListeDiapo.setValue(nomDiapo);
                gestDiapo.setbDisabled(false);
                gestDiapo.reInit(diaporamas[getiNombreDiapo()]);
                setiNombreDiapo(getiNombreDiapo() + 1);

            } else {
                Alert alert = new Alert(AlertType.ERROR);
                alert.setTitle(rbLocalisation.getString("diapo.erreur"));
                alert.setHeaderText(null);
                alert.setContentText(rbLocalisation.getString("diapo.erreurNom"));
                alert.showAndWait();

            }
        }
    });

}

From source file:editeurpanovisu.EditeurPanovisu.java

/**
 *
 * @param X//  w w w.j a  v  a  2s  .com
 * @param Y
 */
private static void panoAjouteHTML(double X, double Y) {
    if (X > 0 && X < ivImagePanoramique.getFitWidth()) {
        valideHS();
        setbDejaSauve(false);
        getStPrincipal().setTitle(getStPrincipal().getTitle().replace(" *", "") + " *");
        double mouseX = X;
        double mouseY = Y - panePanoramique.getLayoutY() - 130 - getiDecalageMac();
        double longitude, latitude;
        double largeur = ivImagePanoramique.getFitWidth();
        longitude = 360.0f * mouseX / largeur - 180;
        latitude = 90.0d - 2.0f * mouseY / largeur * 180.0f;
        Circle circPoint = new Circle(mouseX + ivImagePanoramique.getLayoutX(), mouseY, 5);
        circPoint.setFill(Color.DARKGREEN);
        circPoint.setStroke(Color.YELLOWGREEN);
        circPoint.setId("html" + getiNumHTML());
        circPoint.setCursor(Cursor.DEFAULT);
        panePanoramique.getChildren().add(circPoint);
        Tooltip tltpImage = new Tooltip("HTML n " + (getiNumHTML() + 1));
        tltpImage.setStyle(getStrTooltipStyle());
        Tooltip.install(circPoint, tltpImage);
        EditeurHTML editHTML = new EditeurHTML();
        HotspotHTML HS = new HotspotHTML();
        editHTML.setHsHTML(HS);
        HS.setLongitude(longitude);
        HS.setLatitude(latitude);
        Rectangle2D tailleEcran = Screen.getPrimary().getBounds();
        int iHauteur = (int) tailleEcran.getHeight() - 100;
        int iLargeur = (int) tailleEcran.getWidth() - 100;

        editHTML.affiche(iLargeur, iHauteur);

        editHTML.addPropertyChangeListener("bValide", (e) -> {
            if (e.getNewValue().toString().equals("true")) {
                setiNumHTML(getiNumHTML() + 1);
                getPanoramiquesProjet()[getiPanoActuel()].addHotspotHTML(editHTML.getHsHTML());
                retireAffichageHotSpots();
                dejaCharge = false;
                Pane affHS1 = paneAffichageHS(strListePano(), getiPanoActuel());
                affHS1.setId("labels");
                vbVisuHotspots.getChildren().add(affHS1);
                spPanneauOutils.setVvalue(spPanneauOutils.getVvalue() + 145);
            }
        });
        editHTML.addPropertyChangeListener("bAnnule", (e) -> {
            if (e.getNewValue().toString().equals("true")) {
                String strPoint = circPoint.getId();
                strPoint = strPoint.substring(4, strPoint.length());
                Node nodeImage = (Node) panePanoramique.lookup("#html" + strPoint);
                panePanoramique.getChildren().remove(nodeImage);
            }
        });

        valideHS();
        circPoint.setOnDragDetected((mouseEvent1) -> {
            circPoint.setFill(Color.YELLOWGREEN);
            circPoint.setStroke(Color.DARKGREEN);
            bDragDrop = true;
            mouseEvent1.consume();

        });
        circPoint.setOnMouseDragged((mouseEvent1) -> {
            double XX = mouseEvent1.getX() - ivImagePanoramique.getLayoutX();
            if (XX < 0) {
                XX = 0;
            }
            if (XX > ivImagePanoramique.getFitWidth()) {
                XX = ivImagePanoramique.getFitWidth();
            }
            circPoint.setCenterX(XX + ivImagePanoramique.getLayoutX());
            double YY = mouseEvent1.getY();
            if (YY < 0) {
                YY = 0;
            }
            if (YY > ivImagePanoramique.getFitHeight()) {
                YY = ivImagePanoramique.getFitHeight();
            }
            circPoint.setCenterY(YY);
            afficheLoupe(XX, YY);
            mouseEvent1.consume();

        });
        circPoint.setOnMouseReleased((mouseEvent1) -> {
            setbDejaSauve(false);
            getStPrincipal().setTitle(getStPrincipal().getTitle().replace(" *", "") + " *");
            String strPoint = circPoint.getId();
            strPoint = strPoint.substring(4, strPoint.length());
            int iNumeroPoint = Integer.parseInt(strPoint);
            double X1 = mouseEvent1.getSceneX();
            double Y1 = mouseEvent1.getSceneY();
            double mouseX1 = X1 - ivImagePanoramique.getLayoutX();
            if (mouseX1 < 0) {
                mouseX1 = 0;
            }
            if (mouseX1 > ivImagePanoramique.getFitWidth()) {
                mouseX1 = ivImagePanoramique.getFitWidth();
            }

            double mouseY1 = Y1 - panePanoramique.getLayoutY() - 130 - getiDecalageMac();
            if (mouseY1 < 0) {
                mouseY1 = 0;
            }
            if (mouseY1 > ivImagePanoramique.getFitHeight()) {
                mouseY1 = ivImagePanoramique.getFitHeight();
            }

            double longit, lat;
            double larg = ivImagePanoramique.getFitWidth();
            longit = 360.0f * mouseX1 / larg - 180;
            lat = 90.0d - 2.0f * mouseY1 / larg * 180.0f;
            getPanoramiquesProjet()[getiPanoActuel()].getHotspotHTML(iNumeroPoint).setLatitude(lat);
            getPanoramiquesProjet()[getiPanoActuel()].getHotspotHTML(iNumeroPoint).setLongitude(longit);
            circPoint.setFill(Color.DARKGREEN);
            circPoint.setStroke(Color.YELLOWGREEN);
            mouseEvent1.consume();

        });

        circPoint.setOnMouseClicked((mouseEvent1) -> {
            String strPoint = circPoint.getId();
            strPoint = strPoint.substring(4, strPoint.length());
            int iNum = Integer.parseInt(strPoint);
            if (mouseEvent1.isControlDown()) {
                setbDejaSauve(false);
                getStPrincipal().setTitle(getStPrincipal().getTitle().replace(" *", "") + " *");
                Node nodeImage;
                nodeImage = (Node) panePanoramique.lookup("#html" + strPoint);
                panePanoramique.getChildren().remove(nodeImage);

                for (int io = iNum + 1; io < getiNumHTML(); io++) {
                    nodeImage = (Node) panePanoramique.lookup("#html" + Integer.toString(io));
                    nodeImage.setId("html" + Integer.toString(io - 1));
                }
                /**
                 * on retire les anciennes indication de HS
                 */
                retireAffichageHotSpots();
                setiNumHTML(getiNumHTML() - 1);
                getPanoramiquesProjet()[getiPanoActuel()].removeHotspotHTML(iNum);
                /**
                 * On les cre les nouvelles
                 */
                ajouteAffichageHotspots();
            } else {
                if (!bDragDrop) {
                    setbDejaSauve(false);
                    getStPrincipal().setTitle(getStPrincipal().getTitle().replace(" *", "") + " *");

                    EditeurHTML editHTML1 = new EditeurHTML();
                    HotspotHTML HS1 = getPanoramiquesProjet()[getiPanoActuel()].getHotspotHTML(iNum);
                    editHTML1.setHsHTML(HS1);
                    Rectangle2D tailleEcran1 = Screen.getPrimary().getBounds();
                    int iHauteur1 = (int) tailleEcran1.getHeight() - 100;
                    int iLargeur1 = (int) tailleEcran1.getWidth() - 100;
                    editHTML1.affiche(iLargeur1, iHauteur1);
                    editHTML1.addPropertyChangeListener("bValide", (ev) -> {
                        if (ev.getNewValue().toString().equals("true")) {
                            getPanoramiquesProjet()[getiPanoActuel()].setHotspotHTML(editHTML1.getHsHTML(),
                                    iNum);
                            retireAffichageHotSpots();
                            dejaCharge = false;
                            Pane affHS1 = paneAffichageHS(strListePano(), getiPanoActuel());
                            affHS1.setId("labels");
                            vbVisuHotspots.getChildren().add(affHS1);
                            apVisuHS.setPrefHeight(affHS1.getPrefHeight());
                        }
                    });
                } else {
                    bDragDrop = false;
                }
                mouseEvent1.consume();
            }
            valideHS();
            mouseEvent1.consume();
        });

    }
}

From source file:editeurpanovisu.EditeurPanovisu.java

/**
 * +//from   w  w w  . j a  v  a2s . c o m
 *
 * @param iNumPanochoisi
 */
@SuppressWarnings("empty-statement")
public static void affichePanoChoisit(int iNumPanochoisi) {
    ivImagePanoramique.setImage(getPanoramiquesProjet()[iNumPanochoisi].getImgPanoramique());
    Node nodeLegende = (Node) apPanneauPrincipal.lookup("#legende");
    nodeLegende.setVisible(true);
    retireAffichagePointsHotSpots();
    retireAffichageHotSpots();
    retireAffichageLigne();
    setiPanoActuel(iNumPanochoisi);

    if (getPanoramiquesProjet()[iNumPanochoisi].getStrTypePanoramique().equals(Panoramique.CUBE)) {
        ivLoupe.setImage(getPanoramiquesProjet()[iNumPanochoisi].getImgCubeEqui());
    } else {
        String strFicImage = getStrRepertPanos() + File.separator + "panovisu" + iNumPanochoisi + ".jpg";
        ivLoupe.setImage(new Image("file:" + strFicImage));
        ivLoupe.setSmooth(true);
        ivLoupe.setPreserveRatio(true);
        ivLoupe.setFitWidth(8000);
    }
    ivLoupe.setClip(new Circle(4000, 2000, getiTailleLoupe() / 2));
    ivLoupe.setLayoutX(-4000 + getiTailleLoupe() / 2 + 10);
    ivLoupe.setLayoutY(-2000 + getiTailleLoupe() / 2 + 10);
    apLoupe.setPrefSize(getiTailleLoupe() + 20, getiTailleLoupe() + 20);
    apLoupe.setMinSize(getiTailleLoupe() + 20, getiTailleLoupe() + 20);
    apLoupe.setMaxSize(getiTailleLoupe() + 20, getiTailleLoupe() + 20);
    //apLoupe.setStyle("-fx-border-width : 2px;-fx-background-color : blue;-fx-border-color :darkblue;");
    creeLoupe();
    panePanoramique.setOnMouseEntered((me) -> {
        if (isAfficheLoupe()) {
            apLoupe.setVisible(true);
        }
    });
    panePanoramique.setOnMouseExited((me) -> {
        apLoupe.setVisible(false);
    });
    setiNumPoints(0);
    if (navigateurPanoramique == null) {
        Rectangle2D tailleEcran = Screen.getPrimary().getBounds();
        int iHauteur;
        if (isMac()) {
            iHauteur = (int) tailleEcran.getHeight() - 230;
        } else {
            iHauteur = (int) tailleEcran.getHeight() - 170;
        }
        int iLargeur = (int) tailleEcran.getWidth() - 20;
        apVisuPanoramique.getChildren().clear();
        Pane paneFond = new Pane();
        paneFond.setPrefSize(24, 24);
        Image imgExpand = new Image("file:" + getStrRepertAppli() + "/images/expand.png", 32, 24, false, true);
        Image imgShrink = new Image("file:" + getStrRepertAppli() + "/images/shrink.png", 32, 24, false, true);
        ImageView ivExpShrk = new ImageView(imgExpand);
        paneFond.setLayoutX(10);
        paneFond.setLayoutY(10);
        paneFond.getChildren().add(ivExpShrk);
        navigateurPanoramique = new NavigateurPanoramique(
                getPanoramiquesProjet()[iNumPanochoisi].getImgVisuPanoramique(), 10.d, 10.d, 340, 170);
        apVisuPano = navigateurPanoramique.affichePano();
        navigateurPanoramique.addPropertyChangeListener("positNord", (e) -> {
            double longitude = Math.round(Double.parseDouble(e.getNewValue().toString()) * 10) / 10.d - 180;
            longitude = longitude % 360;
            longitude = longitude < 0 ? longitude + 360 : longitude;
            longitude = longitude > 180 ? longitude - 360 : longitude;
            getPanoramiquesProjet()[getiPanoActuel()].setZeroNord(longitude);
            afficheNord(longitude);
        });
        navigateurPanoramique.addPropertyChangeListener("choixLatitude", (e) -> {
            double latitude = Math.round(navigateurPanoramique.getChoixLatitude() * 10) / 10.d;
            double longitude = Math.round(navigateurPanoramique.getChoixLongitude() * 10) / 10.d - 180;
            double fov = Math.round(navigateurPanoramique.getChoixFov() * 10) / 10.d;
            longitude = longitude % 360;
            longitude = longitude < 0 ? longitude + 360 : longitude;
            longitude = longitude > 180 ? longitude - 360 : longitude;

            getPanoramiquesProjet()[getiPanoActuel()].setRegardX(longitude);
            getPanoramiquesProjet()[getiPanoActuel()].setRegardY(latitude);
            getPanoramiquesProjet()[getiPanoActuel()].setChampVisuel(fov);
            affichePoV(longitude, latitude, fov);
        });
        navigateurPanoramique.addPropertyChangeListener("choixLongitude", (e) -> {
            double latitude = Math.round(navigateurPanoramique.getChoixLatitude() * 10) / 10.d;
            double longitude = Math.round(navigateurPanoramique.getChoixLongitude() * 10) / 10.d - 180;
            double fov = Math.round(navigateurPanoramique.getChoixFov() * 10) / 10.d;
            longitude = longitude % 360;
            longitude = longitude < 0 ? longitude + 360 : longitude;
            longitude = longitude > 180 ? longitude - 360 : longitude;
            getPanoramiquesProjet()[getiPanoActuel()].setRegardX(longitude);
            getPanoramiquesProjet()[getiPanoActuel()].setRegardY(latitude);
            getPanoramiquesProjet()[getiPanoActuel()].setChampVisuel(fov);
            affichePoV(longitude, latitude, fov);
        });
        navigateurPanoramique.addPropertyChangeListener("choixFov", (e) -> {
            double latitude = Math.round(navigateurPanoramique.getChoixLatitude() * 10) / 10.d;
            double longitude = Math.round(navigateurPanoramique.getChoixLongitude() * 10) / 10.d - 180;
            double fov = Math.round(navigateurPanoramique.getChoixFov() * 10) / 10.d;
            longitude = longitude % 360;
            longitude = longitude < 0 ? longitude + 360 : longitude;
            longitude = longitude > 180 ? longitude - 360 : longitude;
            getPanoramiquesProjet()[getiPanoActuel()].setRegardX(longitude);
            getPanoramiquesProjet()[getiPanoActuel()].setRegardY(latitude);
            getPanoramiquesProjet()[getiPanoActuel()].setChampVisuel(fov);
            affichePoV(longitude, latitude, fov);
        });
        navigateurPanoramique.setPositNord(getPanoramiquesProjet()[iNumPanochoisi].getZeroNord() - 180);
        navigateurPanoramique.setLongitude(getPanoramiquesProjet()[iNumPanochoisi].getRegardX() - 180);
        navigateurPanoramique.setLatitude(getPanoramiquesProjet()[iNumPanochoisi].getRegardY());
        navigateurPanoramique.setFov(getPanoramiquesProjet()[iNumPanochoisi].getChampVisuel());
        navigateurPanoramique.setChoixLatitude(navigateurPanoramique.getLatitude());
        navigateurPanoramique.setChoixLongitude(navigateurPanoramique.getLongitude());
        navigateurPanoramique.setChoixFov(navigateurPanoramique.getFov());
        apVisuPano.getChildren().add(paneFond);
        apVisuPanoramique.getChildren().addAll(apVisuPano);

        paneFond.setOnMouseClicked((ev) -> {
            if (bPleinEcranPanoramique) {
                navigateurPanoramique.changeTaille(340, 200);
                apVisuPano.getChildren().add(paneFond);
                ivExpShrk.setImage(imgExpand);
                apEnvironnement.getChildren().remove(apVisuPano);
                apVisuPanoramique.getChildren().add(apVisuPano);
                bPleinEcranPanoramique = false;
                mbarPrincipal.setDisable(false);
                bbarPrincipal.setDisable(false);
                hbBarreBouton.setDisable(false);
                tpEnvironnement.setDisable(false);

            } else {
                bPleinEcranPanoramique = true;
                navigateurPanoramique.changeTaille(iLargeur, iHauteur);
                ivExpShrk.setImage(imgShrink);
                apVisuPano.getChildren().add(paneFond);
                apVisuPanoramique.getChildren().remove(apVisuPano);
                apEnvironnement.getChildren().add(apVisuPano);
                mbarPrincipal.setDisable(true);
                bbarPrincipal.setDisable(true);
                hbBarreBouton.setDisable(true);
                tpEnvironnement.setDisable(true);
            }
        });
        navigateurPanoramique.affiche();
    } else {
        navigateurPanoramique.setImagePanoramique(getPanoramiquesProjet()[iNumPanochoisi].getStrNomFichier(),
                getPanoramiquesProjet()[iNumPanochoisi].getImgVisuPanoramique());
        navigateurPanoramique.setPositNord(getPanoramiquesProjet()[iNumPanochoisi].getZeroNord() - 180);
        navigateurPanoramique.setLongitude(getPanoramiquesProjet()[iNumPanochoisi].getRegardX() - 180);
        navigateurPanoramique.setLatitude(getPanoramiquesProjet()[iNumPanochoisi].getRegardY());
        navigateurPanoramique.setFov(getPanoramiquesProjet()[iNumPanochoisi].getChampVisuel());
        navigateurPanoramique.affiche();
    }
    if (getPanoramiquesProjet()[iNumPanochoisi].getMarqueurGeolocatisation() != null) {
        tfLatitude.setText(CoordonneesGeographiques
                .toDMS(getPanoramiquesProjet()[iNumPanochoisi].getMarqueurGeolocatisation().getLatitude()));
        tfLongitude.setText(CoordonneesGeographiques
                .toDMS(getPanoramiquesProjet()[iNumPanochoisi].getMarqueurGeolocatisation().getLongitude()));
        getPoGeolocalisation().setbValide(true);
    } else {
        if (isbInternet()) {
            tfLatitude.setText("");
            tfLongitude.setText("");
            getPoGeolocalisation().setbValide(false);
        }

    }
    ajouteAffichagePointsHotspots();
    ajouteAffichagePointsHotspotsImage();
    ajouteAffichagePointsHotspotsHTML();
    ajouteAffichagePointsHotspotsDiapo();

    ajouteAffichageHotspots();
    affichePoV(getPanoramiquesProjet()[iNumPanochoisi].getRegardX(),
            getPanoramiquesProjet()[iNumPanochoisi].getRegardY(),
            getPanoramiquesProjet()[iNumPanochoisi].getChampVisuel());
    afficheNord(getPanoramiquesProjet()[iNumPanochoisi].getZeroNord());
    ajouteAffichageLignes();
    afficheInfoPano();
    cbListeChoixPanoramique.setValue(cbListeChoixPanoramique.getItems().get(getiPanoActuel()));
    int iPano = -1;
    int ii = 0;
    for (String stNumPano : ordPano.getStrPanos()) {
        if (Integer.parseInt(stNumPano) == iNumPanochoisi) {
            iPano = ii;
        }
        ii++;
    }
    rectVignettePano.setLayoutY((iLargeurVignettes / 2 + 10) * iPano + 10);
    rectVignettePano.setVisible(true);
    cbMinLat.setSelected(getPanoramiquesProjet()[iNumPanochoisi].isbMinLat());
    cbMaxLat.setSelected(getPanoramiquesProjet()[iNumPanochoisi].isbMaxLat());
    if (cbMinLat.isSelected()) {
        slMinLat.setValue(getPanoramiquesProjet()[iNumPanochoisi].getMinLat());
    } else {
        slMinLat.setValue(-90);
    }
    if (cbMaxLat.isSelected()) {
        slMaxLat.setValue(getPanoramiquesProjet()[iNumPanochoisi].getMaxLat());
    } else {
        slMaxLat.setValue(90);
    }
    slMinFov.setValue(getPanoramiquesProjet()[iNumPanochoisi].getFovMin());
    slMaxFov.setValue(getPanoramiquesProjet()[iNumPanochoisi].getFovMax());
    navigateurPanoramique.setMaxFov(getPanoramiquesProjet()[iNumPanochoisi].getFovMax());
    navigateurPanoramique.setMinFov(getPanoramiquesProjet()[iNumPanochoisi].getFovMin());
    double largeurImage1 = panePanoramique.getPrefWidth();
    double X11 = ivImagePanoramique.getLayoutX();
    double Y1 = (90.0d - (double) slMinLat.getValue()) * largeurImage1 / 360.0d;
    ligNadir.setStartX(X11);
    ligNadir.setStartY(Y1);
    ligNadir.setEndX(X11 + largeurImage1);
    ligNadir.setEndY(Y1);
    Y1 = (90.0d - (double) (double) slMaxLat.getValue()) * largeurImage1 / 360.0d;
    ligZenith.setStartX(X11);
    ligZenith.setStartY(Y1);
    ligZenith.setEndX(X11 + largeurImage1);
    ligZenith.setEndY(Y1);

    panePanoramique.getChildren().remove(ligNadir);
    panePanoramique.getChildren().remove(ligZenith);
    panePanoramique.getChildren().addAll(ligNadir, ligZenith);
}