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

Processing:Примеры/Кольцо из треугольников

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


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

Контакты:

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


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


Описание[1]

Генерирует замкнутое кольцо при помощи функции vertex() и режима beginShape(TRIANGLE_STRIP). Переменные outsideRadius и insideRadius отвечают, соответственно, за внешний и внутренний радиусы кольца.

Пример

  1. int x;
  2. int y;
  3. float outsideRadius = 150;
  4. float insideRadius = 100;
  5.  
  6. void setup() {
  7.   size(640, 360);
  8.   background(204);
  9.   x = width/2;
  10.   y = height/2;
  11. }
  12.  
  13. void draw() {
  14.   background(204);
  15.  
  16.   int numPoints = int(map(mouseX, 0, width, 6, 60));
  17.   float angle = 0;
  18.   float angleStep = 180.0/numPoints;
  19.    
  20.   beginShape(TRIANGLE_STRIP);
  21.   for (int i = 0; i <= numPoints; i++) {
  22.     float px = x + cos(radians(angle)) * outsideRadius;
  23.     float py = y + sin(radians(angle)) * outsideRadius;
  24.     angle += angleStep;
  25.     vertex(px, py);
  26.     px = x + cos(radians(angle)) * insideRadius;
  27.     py = y + sin(radians(angle)) * insideRadius;
  28.     vertex(px, py);
  29.     angle += angleStep;
  30.   }
  31.   endShape();
  32. }

См.также

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

  1. processing.org - Triangle Strip by Ira Greenberg