Трансформації
Для створення ефекту анімації можна застосовувати промальовування окремих кадрів, витирання намальованого (заливка кольором тла), і промальовування наступного кадру. Можна також застосовувати трансформацію - операцію зміни розміщення усього полотна (або спеціальним чином позначеної частини).
Переміщення
translate (x,y);
rect(150,50,100,100);
translate (150,200);
rect(100,100,100,100);
Зміни застосовуються до цілої координатної площини, змінюючи точку початку відліку координат.
Масштабування
scale(s);
Якщо s=1, масштаб не змінюється, s<1 - об'єкти зменшуються, s>1 - об'єкти збільшуються.
Зміна по суті полягає у зміні розмірів пікселів на площині проекту
rect(150,50,100,100);
scale (2);
rect(100,100,100,100);
scale(x,y); дозволяє виконувати масштабування окремо за шириною та висотою
Поворот
rotate (angle); rotate (radians(angle));За умовчанням команда rotate здійснює поворот на вказаний кут в радіанах. Для перетворення з числа градусів у радіани використовується команда radians(angle)
Зміна полягає у зміненні напрямків координатних осей.
rect(150,50,100,100);
rotate (radians(20));
rect(100,100,100,100);
Трансформація окремих об'єктів
Відбувається через команди pushMatrix(); та popMatrix(); між якими записуються команди обробки потрібних об'єктів.
Приклади
Застосування кількох команд переміщення підряд
translate (x,y);
translate (x,y);
Переміщення та поворот
translate (x,y);
rotate (angle);
Поворот та переміщення
rotate (angle);
translate (x,y);