java - 如何在 javafx2 中获取转换形状的坐标?

标签 java javafx-2

我在一个 Pane 上有 2 个椭圆,一个应用了旋转变换(旋转点显然不是椭圆本身:)),另一个没有。现在我需要从变换椭圆的中心到未变换椭圆的中心画一条线。 所以我需要转换后的椭圆的坐标,有没有办法检索这些坐标? (除了画线之外,我还需要它们进行其他计算)

最佳答案

使用localToParent 方法。示例:

    @Override
    public void start(Stage stage) {
        stage.setTitle(VersionInfo.getRuntimeVersion());
        Group root = new Group();

        // ellypsis with center in 100,100
        Arc ellypsis = ArcBuilder.create().centerX(100).centerY(100).length(360).radiusX(100).radiusY(50).fill(Color.TRANSPARENT).stroke(Color.RED).build();
        // rotate
        ellypsis.getTransforms().add(new Rotate(50, 50, 45));

        // find out where is 100,100 in rotated ellypsis
        Point2D localToParent = ellypsis.localToParent(100,100);

        // draw line from that point
        Line line = new Line(localToParent.getX(), localToParent.getY(), 200, 200);
        root.getChildren().addAll(ellypsis, line);
        stage.setScene(new Scene(root, 300, 250));
        stage.show();
    }

关于java - 如何在 javafx2 中获取转换形状的坐标?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11300868/

相关文章:

java - 在jframe上添加webview引擎控制

javascript - 在从 Node 到 Java 的调用中强制执行 utf8 编码

java - Java中12小时制与24小时制的时间转换

mysql - 请使用 JavaFX MySQL 连接示例

java - 如何在给定形状中旋转 LinearGradient?

charts - JavaFX 2.x;在图表上绘制+缩放仍然存在问题

javafx - 如何更改javafx中的文本字体大小?

java - @JoinTable 与 WHERE

java - 如何在不显式调用的情况下注入(inject)值?

Java GPA计算(如何设置无限数组?)