javafx
холст
Поиск…
Вступление
Canvas
- это JavaFX- Node
, представляемый как пустая прямоугольная область, которая может отображать изображения, фигуры и текст. Каждый Canvas
содержит ровно один объект GraphicsContext
, отвечающий за прием и буферизацию вызовов рисования, которые в конце отображаются на экране Canvas
.
Основные формы
GraphicsContext
предоставляет набор методов для рисования и заполнения геометрических фигур. Как правило, эти методы требуют, чтобы координаты передавались как их параметры, либо непосредственно, либо в виде массива double
значений. Координаты всегда относятся к Canvas
, происхождение которого находится в верхнем левом углу.
Примечание: GraphicsContext
не будет рисоваться за пределами границ Canvas
, т. Е. Попытка вывести за пределы области Canvas
определяемую ее размером, и изменить ее размер впоследствии не даст результата.
Пример ниже показывает, как нарисовать три полупрозрачные заполненные геометрические фигуры, обозначенные черным штрихом.
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);