Processing:Справочник языка Processing/pmouseX: различия между версиями

Материал из Онлайн справочника
Перейти к навигацииПерейти к поиску
 
Нет описания правки
 
(не показана 1 промежуточная версия 1 участника)
Строка 1: Строка 1:
{{Processing панель перехода}}
{{Processing панель перехода}}
{{Myagkij-редактор}}
{{Myagkij-редактор}}
{{Черновик}}


= pmouseX <ref>[https://processing.org/reference/pmouseX.html processing.org - pmouseX]</ref>=
= pmouseX <ref>[https://processing.org/reference/pmouseX.html processing.org - pmouseX]</ref>=
Строка 8: Строка 6:
==Обозначение==
==Обозначение==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
pmouseX
pmouseX
</syntaxhighlight>
</syntaxhighlight>
Строка 22: Строка 20:
==Пример==
==Пример==


<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS" enclose="div">
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS">
// Быстро перемещайте мышку, чтобы увидеть разницу между текущей и предыдущей позицией
// Быстро перемещайте мышку, чтобы увидеть разницу между текущей и предыдущей позицией


Строка 37: Строка 35:


<references />
<references />
{{SEO
 
|Заголовок статьи=Processing: pmouseX / Онлайн справочник - wikihandbk.com
{{Навигационная таблица/Портал/Processing}}
|Ключевые слова=processing, pmouseX, processing pmouseX, pmouseX processing
|Описание статьи= Системная переменная pmouseX всегда содержит горизонтальное положение мыши в кадре, предшествующем текущему кадру.
Вы можете обнаружить, что pmouseX и pmouseY имеют разные значения при использовании внутри draw() и внутри функций отслеживающих события мыши, таких как mousePressed() и mouseMoved(). Внутри draw(), pmouseX и pmouseY обновляются только один раз за кадр (один раз за один проход через цикл draw()). Но внутри функций отслеживающих события мыши они обновляются каждый раз, когда вызывается событие. Если эти значения не были немедленно обновлены во время событий мыши, тогда позиция мыши будет считываться только один раз за кадр, что приведет к небольшим задержкам и прерывистому взаимодействию. Если бы переменные, отслеживающие положение курсора мыши всегда обновлялись несколько раз за кадр, то в функции line(pmouseX, pmouseY, mouseX, mouseY) внутри draw() было бы много пробелов, потому что значение pmouseX, возможно, несколько раз менялось бы между вызовами функции line().
Если вам нужны значения относительно предыдущего кадра, используйте pmouseX и pmouseY внутри draw(). Если вы хотите непрерывного ответа, используйте функции pmouseX и pmouseY внутри функций отслеживающих события мыши.
|Изображение статьи для Open Graph=
|Адрес страницы для schemaNewsArticle=<nowiki>http://wikihandbk.com/wiki/Processing:Справочник языка Processing/pmouseX</nowiki>
|Изображение статьи для schemaNewsArticle=<nowiki></nowiki>
|Высота изображения статьи для schemaNewsArticle=
|Ширина изображения статьи для schemaNewsArticle=
|Дата публикации для schemaNewsArticle=2017-09-13
|Автор=Мякишев Е.А.
|Издатель=myagkij
|Логотип издателя для schemaNewsArticle=<nowiki>http://wikihandbk.com/ruwiki/images/6/61/Tech_geek_logo_1x.jpg</nowiki>
|Ширина логотипа издателя для schemaNewsArticle=60
|Высота логотипа издателя для schemaNewsArticle=45
}}
{{Навигационная таблица/Справочник языка Processing}}

Текущая версия от 10:36, 20 сентября 2023

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


pmouseX [1]

Обозначение

pmouseX

Описание

Системная переменная pmouseX всегда содержит горизонтальное положение мыши в кадре, предшествующем текущему кадру.

Вы можете обнаружить, что pmouseX и pmouseY имеют разные значения при использовании внутри draw() и внутри функций отслеживающих события мыши, таких как mousePressed() и mouseMoved(). Внутри draw(), pmouseX и pmouseY обновляются только один раз за кадр (один раз за один проход через цикл draw()). Но внутри функций отслеживающих события мыши они обновляются каждый раз, когда вызывается событие. Если эти значения не были немедленно обновлены во время событий мыши, тогда позиция мыши будет считываться только один раз за кадр, что приведет к небольшим задержкам и прерывистому взаимодействию. Если бы переменные, отслеживающие положение курсора мыши всегда обновлялись несколько раз за кадр, то в функции line(pmouseX, pmouseY, mouseX, mouseY) внутри draw() было бы много пробелов, потому что значение pmouseX, возможно, несколько раз менялось бы между вызовами функции line().

Если вам нужны значения относительно предыдущего кадра, используйте pmouseX и pmouseY внутри draw(). Если вы хотите непрерывного ответа, используйте функции pmouseX и pmouseY внутри функций отслеживающих события мыши.

Пример

// Быстро перемещайте мышку, чтобы увидеть разницу между текущей и предыдущей позицией

void draw() { 
  background(204); 
  line(mouseX, 20, pmouseX, 80); 
  println(mouseX + " : " + pmouseX);
}

См.также

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