二次贝塞尔曲线数学

时间:2018-11-16 00:40:48

标签: javascript math

有人可以帮我吗? 当我有这样的贝塞尔曲线时: https://www.w3schools.com/code/tryit.asp?filename=FX0KJBP2EZ3S

P0(X) = 0 P0(Y) = 50
P1(X) = 100 P1(Y) = 25
P2(X) = 200 P2(Y) = 50

并使贝塞尔曲线变小:

https://www.w3schools.com/code/tryit.asp?filename=FX0KL478CRY4

由于距离P0.X和P2.X,P1较高。如何保持P1的高度,使其始终处于同一高度?

1 个答案:

答案 0 :(得分:0)

要按比例缩小曲线(使形状相同但更小),您必须以相同比例更改控制点的差异。因此,Y1-Y0的更改应类似于(X2'-X0')/(X2-X0)25 / (200/50) = 6.25。整数:

ctx.quadraticCurveTo(25, 44, 50, 50);