Квадратичная кривая Безье математика - PullRequest
0 голосов
/ 16 ноября 2018

Может кто-нибудь помочь мне с этим: Когда у меня есть кривая Безье, как это: 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

P1 выше из-за расстояния P0.X и P2.X. Как я могу сохранить высоту P1, чтобы она всегда была на одной высоте?

1 Ответ

0 голосов
/ 16 ноября 2018

Чтобы уменьшить кривую пропорционально (чтобы сделать ту же форму, но меньше), вам нужно изменить различия контрольных точек в том же соотношении. Таким образом, Y1-Y0 следует изменить аналогично (X2'-X0')/(X2-X0): 25 / (200/50) = 6.25. В целых числах:

ctx.quadraticCurveTo(25, 44, 50, 50);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...