Jakie są dokładne wymiary linii w JavaFX 2?

Zastanawiam się nad dokładną szerokością linii w JavaFX 2.1.

Tworzenie linii prostej rozpoczynającej się w punkcie (10; 10) i kończącej się w punkcie (20; 10) powinno mieć oczekiwaną szerokość 10 pikseli. Podczas odczytu szerokości linii zwracana jest wartość 11px. Podczas uruchamiania dołączonego przykładu i tworzenia zrzutu ekranu zobaczysz - przy wyższym poziomie powiększenia - linia ma szerokość 12 pikseli i wysokość 2 pikseli.

UżywaćLineBuilder nie robi żadnej różnicy. Zdarzenie próbowałem zastosować innyStrokeType bezskutecznie.

Tworzenie kwadratu o długości boku 10 zwraca oczekiwaną szerokość 10 pikseli.

Dlaczegoline.getBoundsInLocal().getWidth() zwracać różne wartości z tych, które widzę w renderowanym wyniku (zrzut ekranu)?Dlaczego istnieje różnica dotycząca szerokości podczas tworzenia linii i wielokątów?

Przykład:

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.shape.Line;
import javafx.scene.shape.Polygon;
import javafx.stage.Stage;

public class ShapeWidthDemo extends Application {
    @Override
    public void start(Stage stage) throws Exception {
        Group root = new Group();

        int startX = 10;
        int startY = 10;
        int length = 10;

        Line line = new Line(startX, startY, startX + length, startY);
        System.out.println("line width: " + line.getBoundsInLocal().getWidth());
        //->line width: 11.0
        System.out.println("line height: " + line.getBoundsInLocal().getHeight());
        //->line height: 1.0
        root.getChildren().add(line);

        int startY2 = startY + 2;

        Polygon polygon = new Polygon(
            startX, startY2,
            startX + 10, startY2, 
            startX + 10, startY2 + 10, 
            startX, startY2 + 10);
        System.out.println("polygon width: " + polygon.getBoundsInLocal().getWidth());
        //->polygon width: 10.0
        System.out.println("polygon height: " + polygon.getBoundsInLocal().getHeight());
        //->polygon height: 10.0
        root.getChildren().add(polygon);

        stage.setScene(new Scene(root, 100, 100));
        stage.show();
    }

    public static void main(String[] args) {
        launch(args);
    }
}

questionAnswers(2)

yourAnswerToTheQuestion