TranslateTransition跳过几个像素

时间:2014-08-19 02:23:12

标签: animation javafx-2

当我点击动画开始时,图像从A点跳到应该走的距离的四分之一然后运行得很好,直到它到达B点有人知道为什么吗?

这是我用于图像运动的methot:

public void sky(Node node, double xDest, double yDest) {

    TranslateTransition tTrans = new TranslateTransition(
            Duration.seconds(4), node);

    // tTrans.setFromX(xPlec);
    tTrans.setToX(xDest);
    tTrans.setRate(2);
    tTrans.setInterpolator(Interpolator.LINEAR);

    // tTrans.setFromY(yPlec);
    tTrans.setToY(yDest);
    tTrans.setRate(2);
    tTrans.setInterpolator(Interpolator.LINEAR);

    node.setLayoutX(node.getLayoutX() + xDest);
    node.setLayoutY(node.getLayoutY() + yDest);

    tTrans.play();



}

1 个答案:

答案 0 :(得分:0)

为什么在开始转换之前为您的节点设置终点?尝试下一个代码:

tTrans.setFromX(node.getLayoutX());
tTrans.setToX(xDest);
tTrans.setRate(2);
tTrans.setInterpolator(Interpolator.LINEAR);

tTrans.setFromY(node.getLayoutX());
tTrans.setToY(yDest);

tTrans.play();

另请注意,您不需要两次致电setRatesetInterpolator