JavaFX | JavaFX 애니메이션 기능 | 애니메이션 설정 메소드


TranslateTransition 인스턴스를 만들고 나서, 이어서 메소드를 호출하여 애니메이션에 대한 섬세한 설정을 실시하고 있다. 여기에는 다양한 방법이 준비되어 있지만, 우선 필요한 것은 다음과 같다.

이동하기 전의 위치를 설정하는 메소드

"TranslateTransition".setFromX("double");
"TranslateTransition".setFromY("double");
"TranslateTransition".setFromZ("double");

이동하는 위치를 설정하는 메소드

"TranslateTransition".setToX("double");
"TranslateTransition".setToY("double");
"TranslateTransition".setToZ("double");

오토 리버스 설정

"TranslateTransition".setAutoReverse("boolean");

반복 횟수 설정

"TranslateTransition".setCycleCount ( "int");

대충 설정이 되면 마지막으로 TranslateTransition의 “play” 메소드를 호출하여 애니메이션을 시작한다. 또한 도중에 중지하는 “stop” 이나 “pause"라는 메소드도 준비되어 있다. 모두 인수없이 단지 호출만 할 뿐이다.

간단한 사용 예는 다음과 같다.

// import javafx.animation.*;
// import javafx.util.Duration;
 
public void createShape(Pane root){
    Rectangle r = new Rectangle(20, 20, 50, 50);
    r.setFill(Color.CYAN);
    root.getChildren().add(r);
    new TranslateTransition();
     
    TranslateTransition tt = new TranslateTransition(new Duration(1000), r);
    tt.setFromX(20);
    tt.setToX(100);
    tt.setAutoReverse(true);
    tt.setCycleCount(10);
    tt.play();
}

이전까지 동일한 클래스를 이용하여 도형 만들기 위한 메소드 createShape를 다시 바꾸는 형태로 정리하였다. 실행하면 눈에 보이는 사각형이 좌우로 왕복 운동을 한다.