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

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

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


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

Контакты:

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


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


beginContour() [1]

PShape

Обозначение

beginContour()

Описание

Методы beginContour() и endContour() позволяют задавать фигуры, внутри которых вырезаны другие фигуры. К примеру, внутри буквы «O». Два этих метода всегда используются вместе. Между ними задается геометрия, которую вы хотите нарисовать. Пример ниже показывает, как при внутри большой фигуры вырезать вторую фигуру – поменьше.

Контуры внешней и внутренней фигур нужно задавать в противоположных направлениях. Это значит, что в коде последовательность точек внешней фигуры должна идти по часовой стрелке, а последовательность точек внутренней фигуры – против часовой стрелки.

Синтаксис

sh.beginContour()

Параметры

sh – любая переменная типа PShape. Тип данных – PShape

Возвращаемое значение

void

Пример

  1. PShape s;
  2.  
  3. void setup() {
  4.   size(100, 100);
  5.  
  6.   // делаем фигуру:
  7.   s = createShape();
  8.   s.beginShape();
  9.   s.noStroke();
  10.  
  11.   // внешняя часть фигуры:
  12.   s.vertex(-50,-50);
  13.   s.vertex(50,-50);
  14.   s.vertex(50,50);
  15.   s.vertex(-50,50);
  16.  
  17.   // внутренняя часть фигуры:
  18.   s.beginContour();
  19.   s.vertex(-20,-20);
  20.   s.vertex(-20,20);
  21.   s.vertex(20,20);
  22.   s.vertex(20,-20);
  23.   s.endContour();
  24.  
  25.   // заканчиваем делать фигуру:
  26.   s.endShape();
  27. }
  28.  
  29. void draw() {
  30.   background(52);
  31.   translate(width/2, height/2);
  32.   s.rotate(0.01);
  33.   shape(s);
  34. }

См.также

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

  1. processing.org - beginContour()