To nevím proč se tomu vyhýbáš. Pokud se něco v kódu opakuje, je téměř vždy lepší to napsat cyklem. Ale taky to pak nesmíš psát takhle zbytečně složitě.
double centerX = 500;
double centerY = 500;
MoveTo moveToCenter = new MoveTo(centerX, centerY);
double radius = 500;
double lineX = centerX + radius;
double lineY = centerY;
int steps = 20;
double step = 360.0 / steps;
for (double deg = step; deg <= 360; deg += step) {
Path path = new Path();
path.getElements().addAll(moveToCenter, new LineTo(lineX, lineY));
double rad = Math.toRadians(deg);
lineX = radius * Math.cos(rad);
lineY = radius * Math.sin(rad);
path.getElements().add(new ArcTo(radiusX, radiusY, 0, lineX, lineY, false, true), moveToCenter);
path.setFill(Color.color(Math.random(), Math.random(), Math.random()));
getChildren().add(path);
}