3 import java.awt.AlphaComposite;
6 import java.awt.Composite;
7 import java.util.Arrays;
19 this.p = Arrays.copyOf(
p, p.length);
25 Composite prevac = gcs.getCanvas().getComposite();
26 Color prevcolor = gcs.getCanvas().getColor();
27 view().chooseColor(
new Color(150, 150, 150), Color.YELLOW,
28 new Color(150, 200, 150), gcs);
29 AlphaComposite ac = AlphaComposite.getInstance(AlphaComposite.SRC_OVER,
32 gcs.getCanvas().setComposite(ac);
34 int[] drawpx =
new int[p.length];
35 int[] drawpy =
new int[p.length];
36 for (
int i = 0; i < p.length; i++)
38 drawpx[i] = gcs.canvasX(
p[i].x);
39 drawpy[i] = gcs.canvasY(
p[i].y);
41 java.awt.Polygon drawpoly =
new java.awt.Polygon(drawpx, drawpy,
43 gcs.getCanvas().fillPolygon(drawpoly);
44 gcs.getCanvas().setColor(prevcolor);
45 gcs.getCanvas().setComposite(prevac);
Многоугольник. Определяется массивом точек
Точка. Определяется двумя числами - координами в декартовой системе координат.
boolean in(int canvasX, int canvasY, GCoordSystem gcs)
Главный класс отображения. У пользователя нет необходимости его использовать напрямую.
Абстрактный суперкласс для всех графических объектов
void draw(GCoordSystem gcs)