Доступ к переменной из setup () в (draw) в p5. js - PullRequest
0 голосов
/ 07 января 2020

Я рисую диаграмму рассеяния с p5. js и хочу получить доступ к точкам x и y изнутри функции setup() для использования с mouseovers в функции draw(). Как я могу сделать точечные переменные x и y глобально доступными? Боюсь, я еще недостаточно хорошо понимаю область видимости. Их нужно инициализировать как массивы ...?

function setup() {
  //create canvas 
  createCanvas(windowWidth, windowHeight);

  //loop through the videoDatatwo array of objects and get xpoints and ypoints
  for (var i = 0; i < videoDatatwo.length; i++) {

    videoDatatwo[i].xpoint = map(videoDatatwo[i].Reach, 0, 47674, 150, width - 400);
    videoDatatwo[i].ypoint = map(videoDatatwo[i].Views, 0, 9248, height - 150, 150);


  }

}

1 Ответ

0 голосов
/ 07 января 2020

Если вы хотите, чтобы переменная была доступна как в функциях setup(), так и draw(), то вам необходимо объявить вне этих функций. Вот пример:

var message;

function setup() {
  createCanvas(500, 500);
  message = 'hello world';
}

function draw() {
  text(message, 100, 100);
}

Этот код объявляет переменную message в верхней части эскиза, затем инициализирует в функции setup() и, наконец, ссылается на в функции draw().

То же самое относится и к массивам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...