Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem JavaFX - Jak vybarvit uzavřenou oblast?

Tak jsem trochu upravil kód.

...
var paths = new ArrayList<Path>(20);    
paths.addAll(arc(0.0, height30, height20, height38, new Rotate()));
paths.addAll(arc(0.0, height30, height20, height38, new Rotate(90, height50, height50, height50)));
paths.addAll(arc(0.0, height30, height20, height38, new Rotate(180, height50, height50, height50)));
paths.addAll(arc(0.0, height30, height20, height38, new Rotate(270, height50, height50, height50)));
getChildren().addAll(paths);
...
private static ArrayList<Path> arc(double lineX, double lineY, double moveX, double moveY, Rotate rotate) {
    var arc_big = lineY;
    var arc_small = moveY - moveX;
    LineTo lineTo = new LineTo(lineX, lineY);
    MoveTo moveToCenter = new MoveTo(moveX, moveY);
    ArrayList<Path> list = new ArrayList<>(5);
    for (double deg = 198; deg <= 270; deg += 18) {
        Path path = new Path(moveToCenter, lineTo);
        lineTo = new LineTo(lineY + arc_big * Math.cos(Math.toRadians(deg)), lineY + arc_big * Math.sin(Math.toRadians(deg)));
        path.getElements().add(new ArcTo(arc_big, arc_big, 0, lineTo.getX(), lineTo.getY(), false, true));
        MoveTo move = new MoveTo(moveY + arc_small * Math.cos(Math.toRadians(deg)), moveY + arc_small * Math.sin(Math.toRadians(deg)));
        path.getElements().add(new LineTo(move.getX(), move.getY()));
        path.getElements().add(new ArcTo(arc_small, arc_small, 0, moveToCenter.getX(), moveToCenter.getY(), false, false));
        moveToCenter = move;
        path.setFill(Color.color(Math.random(), Math.random(), Math.random()));
        path.getTransforms().add(rotate);
        list.add(path);    
    }
    return list;
}

Jenže, jednak nevím, jak rozumně pojmenovat proměnné a jak bych to zjednodušil.

Máte, prosím Vás, nějaký nápad?

Děkuji

PS. Proměnné, začínající height, určují % výšku obrazovky, znázorněnou číslem na konci - height50 = 50% z height

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny