Об'єкти користувача у середовищі Processing
Проект "Машинки"
Машинки (у вигляді графічного об'єкта прямокутник) рухаються по екрану по горизонтальній траєкторії
Властивості об'єкта:
Колір машинки
Координата Х
Координата У
Швидкість руху
Налаштування setup() - при створенні об'єкта
Надати машинці колір
Надати машинці місце розташування
Надати машинці швидкість
Малювання draw() - при оновленні робочої області
Замалювати попередній результат
Намалювати машинку заданого кольору в заданих координатах
Оновити координати відповідно до значень швидкості
Клас Автомобіль
class Car {
color c;
float xpos;
float ypos;
float xspeed;
Конструктор об'єкта (опис властивостей)
Car (color tempC, float tempXpos, float tempYpos, float tempXspeed) {
c = tempC;
xpos = tempXpos;
ypos = tempYpos;
xspeed = tempXspeed;
}
Функціонал (методи)
Показати
void display() {
stroke(0);
fill(c);
rect(xpos,ypos,20,10);
}
Переміститись
void drive() {
xpos = xpos + xspeed;
if (xpos > width) { xpos = 0; }
}
}
Основний проект
Car myCar; void setup() { size(400,400); myCar = new Car(color(255,0,0),0,100,2); } void draw() { background(255); myCar.drive(); myCar.display(); }Для додавання нового об'єкта
Оголосити
Car myCar2;Створити
myCar2 = new Car(color(0,0,255),0,10,1);Запустити
myCar2.drive(); myCar2.display();
Об'єкти можна зберігати у масиві. Оголошується масив cars об'єктів Car[], у якому резервується пам'ять під 10 таких об'єктів new Car[10].
Car[] cars = new Car[10];
Для створення цих об'єктів потрібно скористатись циклом:
for (int i=0; i<10; i++) {
cars[i] = new Car(color(255,0,0),i*20,i*20,i+1);
}
Для обробки об'єктів теж потрібен цикл:
for (int i=0; i<10; i++) {
cars[i].drive();
cars[i].display();
}