Публикации - API холст

Пути

Путь — это контур, вдоль которого следует перо, оставляя след. Путь может включать в себя различные виды штрихов: прямые линии, дуги, прямоугольники и т.д.

Рассмотрим два метода, предназначенные для создания путей и их закрытия:

  • beginPath(). Начинает новую фигуру.
  • closePath(). Закрывает путь, добавляя прямую линию между текущей точкой и исходной точкой пути.

Методы визуализации путей на холсте:

  • stroke(). Визуализирует путь в виде контура.
  • fill(). Визуализирует путь в виде залитой цветом фигуры.
  • clip(). Определяет область обрезки для контекста. Данный метод позволяет задать область обрезки произвольной формы, создав маску. Всё, что остается за пределами маски, на странице не отображается.
function initiate(){
  var elem = document.getElementById('canvas');
  var canvas = elem.getContext('2d');
  canvas.beginPath();
  // Здесь пути
  canvas.stroke();
}
addEventListener("load", initiate);

Данный код не создает никаких рисунков. Он лишь сигнализирует о созда-нии путей.

Для описания путей и создания реальной фигуры предназначены следующие методы:

  • moveTo(x, y). Перемещает кончик пера в указанную позицию.
  • lineTo(x, y). Создает отрезок между двумя точками: текущей позицией (например, определенной с помощью метода moveTo) и точкой с координатами x и y.
  • rect(x, y, width, height). Создает прямоугольник, который не сразу визуализируется на холсте, а становится частью пути.
  • arc(x, y, radius, startAngle, endAngle, direction). Создает дугу или окружность с центром в точке x, y, радиусом и угловым значением объявленным в атрибутах. Последний аргумент — это булево значение, задающее направление рисования: по часовой стрелке или против нее.
  • quadraticCurveTo(cpx, cpy, x, y). Создает квадратичную кривую Безье, начинающуюся в верхней позиции пера и заканчивающуюся в позиции с координатами x и y. Атрибуты cpx и cpy — это контрольные точки, управляющие формой кривой.
  • bizierCurveTo(cp1x, cp1y, cp2x, cp2y, x, y). Аналогичен предыдущему, но имеет два дополнительных аргумента, позволяющих определить кубическую кривую Бизье.

Создадим треугльник с помощью описанных методов:

function initiate(){
  var elem = document.getElementById('canvas');
  var canvas = elem.getContext('2d');
  canvas.beginPath();
  canvas.moveTo(100, 100);
  canvas.lineTo(200, 200);
  canvas.lineTo(100, 200);
  canvas.closePath();
  canvas.stroke();
}
addEventListener("load", initiate);

Чтобы нарисовать залитый цветом треугольник, необходимо вместо метода stroke() использовать  метод fill().

canvas.fill();

Количество комментариев: 0

Для того, чтобы оставить коментарий необходимо зарегистрироваться