Здесь, каждый раз, когда выполняется блок команд из функции draw(), в окне
появляется новый круг. Чтобы обновлять экран перед появлением нового круга,
примените функцию background() в начале функции draw(), перед рисованием
фигуры:
void setup() {
size(480, 120);
fill(0, 102);
smooth();
noStroke();
}
void draw() {
background(204);
ellipse(mouseX, mouseY, 9, 9);
}
Функция background() очищает окно полностью, поэтому убедитесь, что она расположена перед другими функциями в блоке draw(), иначе фигуры,
нарисованные перед ней, будут стерты.
Переменные pmouseX и pmouseY сохраняют позицию мыши из предыдущего
кадра. Они обновляются при каждом запуске блока команд из draw(), как
mouseX и mouseY. Соединяя текущее и предыдущее положение курсора
линией, можно рисовать непрерывную линию:
void setup() {
size(480, 120);
strokeWeight(4);
smooth();
stroke(0, 102);
}
void draw() {
line(mouseX, mouseY, pmouseX, pmouseY);
}