Переміщує початок координат графічного контексту в точку (х, у) поточної координатної системи.
Примітка. Яклегкобачити, класGraphics немаєметодудляпобудовиточки. Дляпобудови зображенняпоточкахвикористовуєтьсямеханізмстворенняоб'єктаImage задопомогоюмасиву.
Для встановлення поточного кольору використовується параметр класу Color. Цей клас має такі константи для визначення стандартних кольорів та конструктори для створення нестандартних кольорів.
BLACK, BLUE, CYAN, DARK_GRAY, GRAY, GREEN, LIGHT_GRAY, MAGENTA, ORANGE, pink, RED, white, yellow - стандартні кольори (відповідні до імен).
Color(float r, float g, float b)
Створює непрозорий колір в системі sRGB за вказаними гегі(червоний), дгееп(зелений), та ЬІие(синій) значеннями з діапазону (0.0 - 1.0). Color(float r, float g, float b, float a)
Створює sRGB колір за вказаними значеннями red, green, blue, та аірпа(прозорості) з діапазону (0.0- 1.0).
4
Об'ектно-орієнтоване програмування Java2
Color(int r, int g, int b)
Створює непрозорий колір в системі sRGB за вказаними redі(червоний), , green(зелений), та blue(синій) значеннями з діапазону (0 - 255).
Створює sRGB колір за вказаними значеннями red, green, blue, та аlрhа(прозорості) з діапазону (0 - 255).
Приклад застосування класів наведеної ієрархії:
Файл, Star.Java, що містить клас Star:
inport java.awt.*;
/** Клас Star- наступний клас ієрархії
* він є спадкоємцем класу Circleі, крім того що може предок,
* він може обертатись і відображатись відповідно до кута повороту
*/
class Starextends Circle {
// масиви вузлових точок
finalstaticinttx[] = {-100, 50, 0, -50, 100};
finalstaticintty[] = { 50, -50, 100, -50, 50};
double[][] viewM = {{1, 0}, {0, 1}}; // поточна матриця повороту
introtation = 0; // кут повороту Зірки
/** Конструктор об'єкту Star */
public Star(int ax,int ay,int aradius,Color acol){
super (ax, ay, aradius, acol);// Викликаємо конструктор предка - Circle)
}
/** Захищені методи класу Star */
protected int getTx(int і) {
return (int) ((tx[i]*viewM[0][0] + ty[i] * viewM[0][l]) * getRadius());
}
piiblic void rotate (int angle) {
rotation += angle;
viewM[0][0] = Math.cos(Math.toRadians(rotation));
viewMI1][0] = Math.sin(Math.toRadians(rotation));
viewM[0][1] = -viewM[1][0];
viewM[l][lJ = viewM[0][0];
}
/** Відкритий метод draw, його буде викликати аплєт,що містить Зірку
* для її відображення у своєму вікні
*/
public void draw(Graphics g) {
int[] x, y;
x = new int[tx.length];
у = new int[ty.length];
for(int i=0; i<tx.length; i++) {
x[i] = getX()+getTx(i)/100;
y[i] = getY()+getTy(i>/100;
}
g.setColor(getColor());
g.drawPolygon(x,y,5);
5
Об'єктно-орієнтоване програмування Java2
Файл аплету Lr2Java.Java, що містить клас Lr2java, який використовує клас Star:
/*
* @ (#)Lr2java.java1.0 03/03/09
*/
// Імпортуємокласипакетівjava.awtтаJava.appletзавимогою importjava.awt.*; importjava.applet.*;
// ІмпортуємокласKeyEventтаінтерфейсKeyListenerдлявзаємодіїзклавіатурою importj ava.awt.event.KeyListener; importjava.util.EventListener; importJava.awt.event.KeyEvent;
/** Головнийкласнашоїпрограми -
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.