Processing:Справочник языка Processing/this

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску

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


Cat poo.png Черновик


this[1]

Обозначение

this

Описание

Ссылается на текущий объект (т. е. "этот объект"), который изменится в зависимости от контекста, в котором this это ссылка. В Processing наиболее часто this используется для передачи ссылки из текущего объекта в одну из библиотек.

Ключевое слово this может также использоваться для ссылки на собственный метод объекта внутри самого себя, но обычно это не требуется. Например, если вызывается метод filter() объекта с именем tree класса PImage из другого объекта, то необходимо написать tree.filter(). Чтобы вызвать этот метод внутри самого объекта класса PImage, можно просто написать filter() или, более явно, this.filter(). В дополнительном уровне конкретности в this.filter() нет необходимости, поскольку он всегда подразумевается.

Пример

№1

float ypos = 50;

void setup() {
  size(100, 100);
  noLoop();
}

void draw() {
  line(0, 0, 100, ypos);
  // "this" ссылается на скетч Processing 
  // и в этом случае он не обязателен
  this.ypos = 100;
  line(0, 0, 100, ypos);
}

№2

import processing.video.*;
Movie myMovie;

void setup() {
  size(200, 200);
  background(0);
  // "this" ссылается на скетч Processing 
  myMovie = new Movie(this, "totoro.mov");
  myMovie.loop();
}

void draw() {
  if (myMovie.available()) {
    myMovie.read();
  }
  image(myMovie, 0, 0);
}

См.также

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