Let's combine several animations in a small application that shows how Earth rotates around the Sun (very roughly):

The first transition which we'll need is a PathTransition for Earth's orbit:
// chapter5/app/PlanetDemo.java
// preparing space, Sun and Earth
Pane root = new Pane();
Scene scene = new Scene(root, 300, 300, Color.BLACK);
Circle sun = new Circle(150,150, 40, Color.YELLOW);
Circle earth = new Circle(25, Color.BLUE);
// orbit and path transition
Ellipse orbit = new Ellipse(150, 150, 125, 50);
PathTransition pt = new PathTransition(Duration.seconds(5), orbit, earth);
pt.setInterpolator(Interpolator.LINEAR);
pt.setCycleCount(Timeline.INDEFINITE);
Now we have a planet orbiting the Sun. Let's scale it according to the perspective — bigger on the front part of the orbit and smaller on the back:
ScaleTransition st = new...