我已经在javascript中建立了一个函数,可以在画布上的设定点之间来回绘制。我的所有观点都能正常工作c。如果我试图从任意点到c画一条线,那是行不通的。
Java脚本
var a = {x:0, y:0};
var b = {x:350, y:0};
var c = {x:0, y:350};
var d = {x:350, y:350};
var e = {x:100, y:100};
var f = {x:100, y:250};
var g = {x:250, y:250};
var h = {x:250, y:100};
function drawLine(a, b)
{
ctx.beginPath();
ctx.moveTo(a.x,a.y);
ctx.lineTo(b.x,b.y);
ctx.stroke();
}
drawLine(d, c);
为什么所有积分都期望c?
最佳答案
由此,我猜测画布的宽度和高度为350。
假设,他们正在工作。它只是在边界上绘制。您正在尝试从{x:0, y:350}
转到{x:350, y:350}
。请注意,两者的y
都是350
。这意味着它将从bottom,left
角绘制到bottom,right
角,并精确地位于边界的y : 350
处。因此,您将无法看到它。
尝试将var c = {x:0, y:350};
更改为var c = {x:0+5, y:350-5};
,将其保留为{x:5, y:345}
。您会注意到,对于点c
,线现在显示了,但是非常靠近边界。