Cat hungry.png
Здравствуйте! Собираем деньги на перевод материалов по электронике(https://www.allaboutcircuits.com/education/). Реквизиты указаны здесь.

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

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


Перевод: Максим Кузьмин (Cubewriter)
Перевел 2685 статей для сайта.

Контакты:

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


Ambox content.png Черновик


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

  1. PShape s;
  2.  
  3. void setup() {
  4.   size(100, 100);
  5.   // файл "bot.svg" должен находиться в папке данных текущего скетча,
  6.   // чтобы все загрузилось как следует:
  7.   s = loadShape("bot.svg");
  8. }
  9.  
  10. void draw() {
  11.   shape(s, 10, 10, 80, 80);
  12. }

№2

  1. PShape square;  // объект PShape
  2.  
  3. void setup() {  
  4.   size(100, 100);
  5.   // создание объекта PShape в виде квадрата;
  6.   // угол – это «0,0», поэтому центр – это «40,40»:
  7.   square = createShape(RECT, 0, 0, 80, 80);
  8. }
  9.  
  10. void draw() {
  11.   shape(square, 10, 10);
  12. }

См.также

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

  1. processing.org - PShape