Об'єкти користувача у середовищі 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();

}

Остання зміна: четвер 15 листопада 2018 3:05