Класс Polygon
Этот класс предназначен для работы с многоугольником, в частности, с треугольниками и произвольными четырехугольниками.
Объекты этого класса можно создать двумя конструкторами:
- Polygon () – создает пустой объект;
- Polygon(int[] xPoints, int[] yPoints, int nPoints) – задаются вершины многоугольника (xPoints[i], yPoints[i]) и их число nPoints
После создания объекта в него можно добавлять вершины методом addPoint(int x, int у).
Логические методы contains () позволяют проверить, не лежит ли в многоугольнике заданная аргументами метода точка, отрезок прямой или целый прямоугольник со сторонами, параллельными сторонам экрана.
Логические методы intersects () позволяют проверить, не пересекается ли с данным многоугольником отрезок прямой, заданный аргументами метода, или прямоугольник со сторонами, параллельными сторонам экрана.
Методы getBounds() и getBounds2D() возвращают прямоугольник, целиком содержащий в себе данный многоугольник.
Вернемся к методам класса Graphics. Несколько методов вычерчивают фигуры, залитые текущим цветом: fillRect(), fill3DRect(), filiArc(), filioval(), filiPoiygon(), filiRoundRect(). У них такие же аргументы, как и у соответствующих методов, вычерчивающих незаполненные фигуры.
Например, если вы хотите изменить цвет фона области рисования, то установите новый текущий цвет и начертите им заполненный прямоугольник величиной во всю область:
public void paint(Graphics g)( Color initColor = g.getColor(); // Сохраняем исходный цвет g.setColor(new Color(0, 0, 255)); // Устанавливаем цвет фона // Заливаем область рисования g.fillRect(0, 0, getSizeO.width – 1, getSize().height – 1);' g.setColor(initColor); // Восстанавливаем исходный цвет // Дальнейшие действия }
Как видите, в классе Graphics собраны только самые необходимые средства рисования. Нет даже метода, задающего цвет фона (хотя можно задать цвет фона компонента методом setBackground() класса component). Средства рисования, вывода текста в область рисования и вывода изображений значительно дополнены и расширены в подклассе Graphics2D, входящем в систему Java 2D. Например, в нем есть метод задания цвета фона setBackground(Color с).
Перед тем как обратиться к классу Graphics2D, рассмотрим средства класса Graphics для вы вод а текста.