Example usage for javafx.scene.shape Line setOnDragDetected

List of usage examples for javafx.scene.shape Line setOnDragDetected

Introduction

In this page you can find the example usage for javafx.scene.shape Line setOnDragDetected.

Prototype

public final void setOnDragDetected(EventHandler<? super MouseEvent> value) 

Source Link

Usage

From source file:editeurpanovisu.EditeurPanovisu.java

private void afficheNord(double longitude) {
    double largeur = imagePanoramique.getFitWidth();
    double X = (longitude + 180.0d) * largeur / 360.0d + imagePanoramique.getLayoutX();
    Node ancPoV = (Node) pano.lookup("#Nord");
    if (ancPoV != null) {
        pano.getChildren().remove(ancPoV);
    }/*from w  w w.  ja  va  2 s.c om*/
    Line ligne = new Line(0, 0, 0, imagePanoramique.getFitHeight());
    ligne.setCursor(Cursor.DEFAULT);

    ligne.setLayoutX(X);
    ligne.setStroke(Color.RED);
    ligne.setStrokeWidth(4);
    ligne.setId("Nord");
    ligne.setOnDragDetected((MouseEvent me1) -> {
        ligne.setStroke(Color.BLUEVIOLET);
        dragDrop = true;
        me1.consume();
    });
    ligne.setOnMouseDragged((MouseEvent me1) -> {

        double XX = me1.getSceneX() - imagePanoramique.getLayoutX();
        if (XX < 0) {
            XX = 0;
        }
        if (XX > imagePanoramique.getFitWidth()) {
            XX = imagePanoramique.getFitWidth();
        }
        ligne.setLayoutX(XX + imagePanoramique.getLayoutX());
        me1.consume();

    });
    ligne.setOnMouseReleased((MouseEvent me1) -> {
        double X1 = me1.getSceneX();
        double mouseX1 = X1 - imagePanoramique.getLayoutX();
        if (mouseX1 < 0) {
            mouseX1 = 0;
        }
        if (mouseX1 > imagePanoramique.getFitWidth()) {
            mouseX1 = imagePanoramique.getFitWidth();
        }
        double regardX = 360.0f * mouseX1 / largeur - 180;
        panoramiquesProjet[panoActuel].setZeroNord(regardX);
        ligne.setStroke(Color.RED);
        me1.consume();

    });

    pano.getChildren().add(ligne);
}

From source file:editeurpanovisu.EditeurPanovisu.java

/**
 *
 * @param longitude//from w w w. j  av a2  s . com
 */
private static void afficheNord(double longitude) {
    double largeur = ivImagePanoramique.getFitWidth();
    double X = (longitude + 180.0d) * largeur / 360.0d + ivImagePanoramique.getLayoutX();
    Node nodeAncienNord = (Node) panePanoramique.lookup("#Nord");
    if (nodeAncienNord != null) {
        panePanoramique.getChildren().remove(nodeAncienNord);
    }
    Line lineNord = new Line(0, 0, 0, ivImagePanoramique.getFitHeight());
    lineNord.setCursor(Cursor.DEFAULT);

    lineNord.setLayoutX(X);
    lineNord.setStroke(Color.RED);
    lineNord.setStrokeWidth(4);
    lineNord.setId("Nord");
    lineNord.setOnDragDetected((mouseEvent1) -> {
        lineNord.setStroke(Color.BLUEVIOLET);
        bDragDrop = true;
        mouseEvent1.consume();
    });
    lineNord.setOnMouseDragged((me1) -> {

        double XX = me1.getSceneX() - ivImagePanoramique.getLayoutX();
        if (XX < 0) {
            XX = 0;
        }
        if (XX > ivImagePanoramique.getFitWidth()) {
            XX = ivImagePanoramique.getFitWidth();
        }
        lineNord.setLayoutX(XX + ivImagePanoramique.getLayoutX());
        me1.consume();
        double YY = me1.getY();
        afficheLoupe(XX, YY);
    });
    lineNord.setOnMouseReleased((me1) -> {
        double X1 = me1.getSceneX();
        double mouseX1 = X1 - ivImagePanoramique.getLayoutX();
        if (mouseX1 < 0) {
            mouseX1 = 0;
        }
        if (mouseX1 > ivImagePanoramique.getFitWidth()) {
            mouseX1 = ivImagePanoramique.getFitWidth();
        }
        double regardX = 360.0f * mouseX1 / largeur - 180;
        navigateurPanoramique.setPositNord(regardX - 180);
        navigateurPanoramique.affiche();
        getPanoramiquesProjet()[getiPanoActuel()].setZeroNord(regardX);
        lineNord.setStroke(Color.RED);
        me1.consume();

    });

    panePanoramique.getChildren().add(lineNord);
}