javafx에서 타임 라인 애니메이션을 그려야합니다. 여기서 생성 줄의 코드이다어닐을 한 창에서만 볼 수있게 만드는 방법은 무엇입니까? JavaFX
public Line getLine() {
Point startPoint = FigureUtil.translateGeographicalToViewCoords(center.longitude, center.latitude, mapViewState);
line = new Line();
line.setStartX(startPoint.x);
line.setStartY(startPoint.y);
line.setStrokeWidth(4);
line.setStyle("-fx-stroke: rgba(37, 176, 79, 0.5);");
return line;
}
public void stop(){
timer.stop();
timeline.stop();
}
private KeyFrame getFrame() {
Duration duration = Duration.millis(60/speedOfRotating);
EventHandler<ActionEvent> onFinished = new EventHandler<ActionEvent>() {
public void handle(ActionEvent t) {
LatLong latLong = LongitudeLatitudeUtil.getLatLongByDistanceAndAngle(center, time, size);
Point endPoint = FigureUtil.translateGeographicalToViewCoords(latLong.longitude, latLong.latitude, mapViewState);
line.setEndX(endPoint.x);
line.setEndY(endPoint.y);
time++;
}
};
KeyFrame keyFrame = new KeyFrame(duration, onFinished);
return keyFrame;
}
private void startTimer() {
timer = new AnimationTimer() {
@Override
public void handle(long l) {
time++;
if (time > 360) {
time = 0;
}
}
};
timer.start();
}
public void start() {
startTimer();
timeline = new Timeline();
timeline.setCycleCount(Timeline.INDEFINITE);
timeline.setAutoReverse(true);
// You can add a specific action when each frame is started.
// timeline.getKeyFrames().remove(1);
timeline.getKeyFrames().add(getFrame());
timeline.play();
}
내가 이러한 문제점을 창으로 추가 : [1] http://img.image-storage.com/69224197/be380fee3e074.jpg. 선을 추가 한 창 밖으로 선을 표시해서는 안됩니다 (대시 선으로 구분).