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

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


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


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
PShape
PShape
</syntaxhighlight>
</syntaxhighlight>
Строка 54: Строка 51:
==Конструктор==
==Конструктор==


<syntaxhighlight lang="c" enclose="div">
<syntaxhighlight lang="c">
PShape(g, kind, params)
PShape(g, kind, params)
</syntaxhighlight>
</syntaxhighlight>
Строка 62: Строка 59:
===№1===
===№1===


<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">
PShape s;
PShape s;


Строка 79: Строка 76:
===№2===
===№2===


<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">
PShape square;  // объект PShape
PShape square;  // объект PShape


Строка 99: Строка 96:


<references />
<references />
{{SEO
 
|Заголовок статьи=Processing: PShape / Онлайн справочник - wikihandbk.com
{{Навигационная таблица/Портал/Processing}}
|Ключевые слова=processing,PShape , PShape processing, PShape в processing
|Описание статьи=
|Изображение статьи для Open Graph=
|Адрес страницы для schemaNewsArticle=<nowiki>http://wikihandbk.com/wiki/Processing:Справочник языка Processing/PShape</nowiki>
|Изображение статьи для schemaNewsArticle=<nowiki></nowiki>
|Высота изображения статьи для schemaNewsArticle=
|Ширина изображения статьи для schemaNewsArticle=
|Дата публикации для schemaNewsArticle=2018-06-21
|Автор=Мякишев Е.А.
|Издатель=myagkij
|Логотип издателя для schemaNewsArticle=<nowiki>http://wikihandbk.com/ruwiki/images/6/61/Tech_geek_logo_1x.jpg</nowiki>
|Ширина логотипа издателя для schemaNewsArticle=60
|Высота логотипа издателя для schemaNewsArticle=45
}}
{{Навигационная таблица/Справочник языка Processing}}

Текущая версия от 15:21, 13 сентября 2023

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


PShape [1]

Обозначение

PShape

Описание

Тип данных для хранения фигур. Перед использованием фигуры ее нужно загрузить при помощи метода loadShape() или создать с помощью метода createShape(). Чтобы нарисовать фигуру на мониторе, используется метод shape(). Язык Processing в данный момент может загружать и показывать фигуры из файлов типа SVG (Scalable Vector Graphics) и OBJ. Файлы OBJ можно открыть только с помощью 3D-визуализатора P3D. Метод loadShape() совместим с SVG-файлами, созданными при помощи Inkscape и Adobe Illustrator. Это не полная поддержка SVG, но в наличии есть ряд удобных средств для управления векторными данными.

Для объекта PShape есть несколько методов, позволяющих управлять данными фигуры. Некоторые из них перечислены ниже, но полный список методов для создания и модифицирования фигур можно найти тут. Чтобы создать новую фигуру, используйте createShape(), но не синтаксис new PShape().

Поля

  • width – ширина фигуры PShape
  • height – высота фигуры PShape

Методы

  • isVisible() – возвращает булево значение true, если изображение видимо, и false, если нет
  • setVisible() – задает то, будет ли фигура видимой или невидимой
  • disableStyle() – отключает «стилевые» данные фигуры и использует стили Processing
  • enableStyle() – включает «стилевые» данные фигуры и игнорирует стили Processing
  • beginContour() – начинает новый контур
  • endContour() – завершает контур
  • beginShape() – начинает создание нового объекта PShape
  • endShape() – завершает создание нового объекта PShape
  • getChildCount() – возвращает количество дочерних элементов
  • getChild() – возвращает дочерний элемент фигуры в виде объекта PShape
  • addChild() – добавляет новый дочерний элемент
  • getVertexCount() – возвращает общее число вершин в виде значения int
  • getVertex() – возвращает координаты вершины, находящейся на заданной позиции
  • setVertex() – задает координаты вершины, находящейся на заданной позиции
  • setFill() – задает цвет заполнения фигуры
  • setStroke() – задает цвет контура фигуры
  • translate() – перемещает фигуру
  • rotateX() – вращает фигуру по оси X
  • rotateY() – вращает фигуру по оси Y
  • rotateZ() – вращает фигуру по оси Z
  • rotate() – вращает фигуру
  • scale() – увеличивает и уменьшает размер фигуры
  • resetMatrix() – заменяет текущую матрицу фигуры на единичную матрицу

Конструктор

PShape(g, kind, params)

Пример

№1

PShape s;

void setup() {
  size(100, 100);
  // файл "bot.svg" должен находиться в папке данных текущего скетча,
  // чтобы все загрузилось как следует:
  s = loadShape("bot.svg");
}

void draw() {
  shape(s, 10, 10, 80, 80);
}

№2

PShape square;  // объект PShape

void setup() {  
  size(100, 100);
  // создание объекта PShape в виде квадрата; 
  // угол – это «0,0», поэтому центр – это «40,40»:
  square = createShape(RECT, 0, 0, 80, 80);
}

void draw() {
  shape(square, 10, 10);
}

См.также

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