Этот пост будет представлять собой постоянно расширяющийся список геометрических фигур и функций для их отрисовки на canvas.
Для всех случаев будем по умолчанию считать что мы уже определили canvas и получили ссылку на его контекст:
var canvas = document.getElementById('canvas');
var ctx = canvas.getContext('2d');
| Фигура | Функция |
|---|---|
| Точка |
т.к. родного метода для рисования точки нет, приходится рисовать линию в 1 пиксель:
function drawPixel(x, y)
{
ctx.beginPath();
ctx.moveTo(x,y);
ctx.lineTo(x+1,y+1);
ctx.stroke();
}
|
Прямая линия(Отрезок)![]() |
function drawLine(x1, y1, x2, y2)
{
ctx.beginPath();
ctx.moveTo(x1,y1);
ctx.lineTo(x2,y2);
ctx.stroke();
}
|
| Кривая | ? |
Треугольник![]() |
function drawTriangle(x1, y1, x2, y2, x3, y3)
{
ctx.beginPath();
ctx.moveTo(x1, y1);
ctx.lineTo(x2, y2);
ctx.lineTo(x3, y3);
ctx.lineTo(x1, y1);
ctx.stroke();
}
|
Четырехугольник![]() |
function drawTetragon(x1, y1, x2, y2, x3, y3, x4, y4)
{
ctx.moveTo(x1, y1);
ctx.lineTo(x2, y2);
ctx.lineTo(x3, y3);
ctx.lineTo(x4, y4);
ctx.lineTo(x1, y1);
ctx.stroke();
}
|
Прямоугольник![]() |
function drawRect(x1, y1, width, height)
{
ctx.fillRect(x1, y1, width, height);
}
|
Квадрат![]() |
function drawSquare(x, y, width)
{
ctx.fillRect(x, y,width, width);
}
|
Круг![]() |
function drawCircle(x, y, radius)
{
ctx.beginPath();
ctx.arc(x,y,radius,0,Math.PI*2,true);
ctx.stroke();
}
|





