Processing:Примеры/Применение функции createGraphics(): различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
Нет описания правки
Нет описания правки
 
Строка 1: Строка 1:
{{Processing панель перехода}}
{{Processing панель перехода}}
{{Перевод от Сubewriter}}
{{Перевод от Сubewriter}}
{{Myagkij-редактор}}
{{Myagkij-редактор}}
Строка 76: Строка 75:
}
}
</syntaxhighlight>
</syntaxhighlight>
{{#set:
Код примера=
PGraphics pg;
void setup() {
  size(640, 360);
  pg = createGraphics(400, 200);
}
void draw() {
  fill(0, 12);
  rect(0, 0, width, height);
  fill(255);
  noStroke();
  ellipse(mouseX, mouseY, 60, 60);
 
  pg.beginDraw();
  pg.background(51);
  pg.noFill();
  pg.stroke(255);
  pg.ellipse(mouseX-120, mouseY-60, 60, 60);
  pg.endDraw();
 
  // при помощи метода image() рисуем на экране
  // содержимое буфера, находящегося за пределами экрана:
  image(pg, 120, 60);
}
}}


=См.также=
=См.также=
Строка 111: Строка 81:


<references />
<references />


{{Навигационная таблица/Портал/Processing}}
{{Навигационная таблица/Портал/Processing}}

Текущая версия от 02:03, 27 августа 2023

Перевод: Максим Кузьмин
Проверка/Оформление/Редактирование: Мякишев Е.А.


Описание[1]

Функция createGraphics() создает объект на основе класса PGraphics. Класс PGraphics – это главный графический и рендеринговый контекст в Processing. Нам понадобятся методы beginDraw() для подготовки PGraphics к рисованию и endDraw() для завершения рисования. Используйте класс PGraphics, когда вам нужно нарисовать графику в буфер, находящийся за пределами экрана, или работать с двумя контекстами с разными свойствами.

Пример

PGraphics pg;

void setup() {
  size(640, 360);
  pg = createGraphics(400, 200);
}

void draw() {
  fill(0, 12);
  rect(0, 0, width, height);
  fill(255);
  noStroke();
  ellipse(mouseX, mouseY, 60, 60);
  
  pg.beginDraw();
  pg.background(51);
  pg.noFill();
  pg.stroke(255);
  pg.ellipse(mouseX-120, mouseY-60, 60, 60);
  pg.endDraw();
  
  // при помощи метода image() рисуем на экране
  // содержимое буфера, находящегося за пределами экрана:
  image(pg, 120, 60); 
}

См.также

Внешние ссылки