quadraticCurveTo:我可以确定顶点是什么吗?

时间:2015-08-20 20:41:47

标签: javascript html5 canvas formula quadratic

我在HTML5画布中使用了quadraticCurveTo函数。我的主要问题是,当我只想指定顶点时,它使用线性插值。我已经知道我的起点和终点是什么。据我所知,没有任何功能可以做到这一点,但有没有一个公式我可以用来确定我的控制点?

1 个答案:

答案 0 :(得分:0)

给出二次曲线的起点,终点和点。中点,你可以像这样计算它的控制点:

// Given 3 points on a Q-Curve (starting, ending & midpoint)
var p0=startPoint;
var p2=endPoint;  
var p1={
        x:2*midPoint.x-startPoint.x/2-endPoint.x/2,
        y:2*midPoint.y-startPoint.y/2-endPoint.y/2,
};

然后你可以将它正常地绘制到画布上:

ctx.moveTo(p0.x,p0.y);
ctx.quadraticCurveTo( p1.x,p1.y, p2.x,p2.y );