Recherche…


Introduction

Un Canvas est un Node JavaFX, représenté par une zone rectangulaire vierge pouvant afficher des images, des formes et du texte. Chaque Canvas contient exactement un objet GraphicsContext , chargé de recevoir et de mettre en mémoire tampon les appels de dessin qui, à la fin, sont rendus à l'écran par Canvas .

Formes de base

GraphicsContext fournit un ensemble de méthodes pour dessiner et remplir des formes géométriques. En règle générale, ces méthodes ont besoin de coordonnées comme paramètres, soit directement, soit sous la forme d'un tableau de valeurs double . Les coordonnées sont toujours relatives au Canvas , dont l'origine est située dans le coin supérieur gauche.

Remarque: GraphicsContext ne dessine pas en dehors des limites du Canvas , c’est-à-dire qu’essayer de dessiner en dehors de la zone de Canvas définie par sa taille et de le redimensionner ultérieurement ne donnera aucun résultat.

L'exemple ci-dessous montre comment dessiner trois formes géométriques remplies semi-transparentes avec un trait noir.

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);

Résultat



Modified text is an extract of the original Stack Overflow Documentation
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow