javafx
Segeltuch
Suche…
Einführung
Ein Canvas
ist ein JavaFX- Node
, der als leerer rechteckiger Bereich dargestellt wird und Bilder, Formen und Text anzeigen kann. Jedes Canvas
enthält genau ein GraphicsContext
Objekt, das für den Empfang und die Pufferung der Zeichnungsaufrufe verantwortlich ist, die am Ende von Canvas
auf dem Bildschirm dargestellt werden.
Grundformen
GraphicsContext
bietet eine Reihe von Methoden zum Zeichnen und Füllen von geometrischen Formen. Normalerweise müssen für diese Methoden Koordinaten als Parameter übergeben werden, entweder direkt oder in Form eines Arrays von double
. Die Koordinaten sind immer relativ zum Canvas
, dessen Ursprung sich in der oberen linken Ecke befindet.
Hinweis: GraphicsContext
zeichnet nicht außerhalb der Canvas
Grenzen, dh wenn Sie versuchen, außerhalb des durch seine Größe definierten Canvas
Bereichs zu zeichnen und dessen Größe anschließend zu ändern, führt dies zu keinem Ergebnis.
Das folgende Beispiel zeigt, wie drei halbtransparente gefüllte geometrische Formen gezeichnet werden, die mit einem schwarzen Strich umrandet sind.
Canvas canvas = new Canvas(185, 70);
GraphicsContext gc = canvas.getGraphicsContext2D();
// Set stroke color, width, and global transparency
gc.setStroke(Color.BLACK);
gc.setLineWidth(2d);
gc.setGlobalAlpha(0.5d);
// Draw a square
gc.setFill(Color.RED);
gc.fillRect(10, 10, 50, 50);
gc.strokeRect(10, 10, 50, 50);
// Draw a triangle
gc.setFill(Color.GREEN);
gc.fillPolygon(new double[]{70, 95, 120}, new double[]{60, 10, 60}, 3);
gc.strokePolygon(new double[]{70, 95, 120}, new double[]{60, 10, 60}, 3);
// Draw a circle
gc.setFill(Color.BLUE);
gc.fillOval(130, 10, 50, 50);
gc.strokeOval(130, 10, 50, 50);