Главная » 2017 » Сентябрь » 25 » Ардуино пишет письма. Разбор Альфы ч.2. Функции (продолжение).
04:23
Ардуино пишет письма. Разбор Альфы ч.2. Функции (продолжение).

Продолжаем разбираться в листинге.

Скачать исходник можно здесь

Ссылка начала истории здесь.

Ссылка начала разбора здесь.

 

Рассмотрим листинг функции CheckOn() подробно.


// Функция рисования опции ВКЛ.    
void CheckOn (int Xcheck, int Ycheck) {// Функция принимает переданные ей при вызове
  //координаты и присваивает их значения переменным Xcheck и Ycheck.
  noFill();// Рисовать без заливки.
  stroke(100);//Цвет абриса.
  strokeWeight(3);//Толщина абриса.
  rect(Xcheck, Ycheck, 20, 20, 2, 2, 2, 2);// Рисуем прямоугольник в 
  // координатах Xcheck, Ycheck, ширина 20, высота 20, и скругление всех
  // углов (фаска) 2.
  stroke(255);// Цвет абриса.
  line(Xcheck+5, Ycheck+5, Xcheck+10, Ycheck+15);// Рисуем линии в
  line(Xcheck+10, Ycheck+15, Xcheck+20, Ycheck-5);// виде галочки.
}


В листинге выделены графические операторы. rect - рисует прямоугольник, line - рисуют две линии в виде "галочки". 

Синтаксис операторов:

rect ([координата X1], [координата Y1], [ширина], [высота], [далее, четыре значения скругления углов (опционально)])

line ([координата X2], [координата Y2], [координата X3], [координата Y3])

Обратите внимание, что в нашем коде координаты не конкретные, а относительные. То есть они привязаны к принимаемым значениям нашей функции. Представьте что точка образованная переменными Xcheck и Ycheck - это начало наших относительных координат. На рисунке она имеет координаты 0,0


Нарисуем квадрат в этих координатах с сторонами в двадцать пикселей, и установим скругление углов (фаску) равное двум. По умолчанию в Processing начало или точка вращения прямоугольника его верхний левый угол. 

rect(Xcheck, Ycheck, 20, 20, 2, 2, 2, 2);


Далее рисуем первую из двух линий. Обратите внимание что начало линии смещено относительно нашего условного начала координат на пять пикселей по оси X (горизонтальная) и по оси Y (вертикальная). А конечная точка смещена на десять пикселей по оси X и на пятнадцать по оси Y. Запись в коде выглядит следующим образом:

line(Xcheck+5, Ycheck+5, Xcheck+10, Ycheck+15);


Рисуем вторую линию. Здесь конечная точка линии имеет отрицательную координату по оси Y. Запись в коде имеет вид:

line(Xcheck+10, Ycheck+15, Xcheck+20, Ycheck-5);


Такой несложный способ позволяет нам управлять позицией трех объектов, в данном случае прямоугольником, и двумя линиями, передавая всего две координаты. Таким образом мы можем увеличивать количество опций, не увеличивая объем кода для их отрисовки.

Продолжение следует...

специально для Prototype.3dn.ru

Категория: ЖЕЛЕЗО/ПРОГРАММИРОВАНИЕ. | Просмотров: 389 | Добавил: prototypestudio | Теги: Arduino, send mail, Email, Ардуино пишет письма, com port, программирование ардуино, функции, Function, Processing
Всего комментариев: 0
Добавить комментарий