Processing:Справочник языка Processing/noLoop()
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
noLoop() [1]
Обозначение
noLoop()
Описание
Останавливает непрерывный вызов функции draw(). Если вызывается функция loop(), то возобновляется непрерывный вызов функции draw(). Если используется вызов функции noLoop() в теле функции setup(), он должен быть последней строкой внутри блока.
Если используется функция noLoop(), то невозможно манипулировать экраном или получать доступ к нему внутри функций обработки событий, таких как mousePressed() или keyPressed(). Вместо этого используйте эти функции для вызова redraw() или loop(), которые вызовут функцию draw(), которая может корректно обновлять экран. Это означает, что при вызове функции noLoop() невозможно выполнять рисование на экране, и не могут быть использованы такие функции, как saveFrame() или loadPixels().
В то время как вызов функции loop(), приводит к возобновлению непрерывного вызова функции draw(). Функция redraw() позволяет вызвать функцию draw() один раз, не смотря на наличие вызова функции noLoop() в теле функции setup().
Синтаксис
noLoop()
Параметры
void
Возвращаемое значение
void
Пример
№1
void setup() {
size(200, 200);
noLoop();
}
void draw() {
line(10, 10, 190, 190);
}
№2
void setup() {
size(200, 200);
}
float x = 0.0;
void draw() {
background(204);
x = x + 0.1;
if (x > width) {
x = 0;
}
line(x, 0, x, height);
}
void mousePressed() {
noLoop();
}
void mouseReleased() {
loop();
}
№3
boolean someMode = false;
void setup() {
noLoop();
}
void draw() {
if (someMode) {
// делаем что-нибудь
}
}
void mousePressed() {
someMode = true;
redraw(); // или loop()
}
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |