mirror of
https://github.com/Ttanasart-pt/Pixel-Composer.git
synced 2024-11-15 06:53:59 +01:00
18 lines
1.1 KiB
Plaintext
18 lines
1.1 KiB
Plaintext
function eval_bezier_x(t, x0, y0, x1, y1, cx0, cy0, cx1, cy1) { INLINE return power(1 - t, 3) * x0 + 3 * power(1 - t, 2) * (t) * cx0 + 3 * power(t, 2) * (1 - t) * cx1 + power(t, 3) * x1; }
|
|
function eval_bezier_y(t, x0, y0, x1, y1, cx0, cy0, cx1, cy1) { INLINE return power(1 - t, 3) * y0 + 3 * power(1 - t, 2) * (t) * cy0 + 3 * power(t, 2) * (1 - t) * cy1 + power(t, 3) * y1; }
|
|
|
|
function eval_bezier_n(t, x0, x1, cx0, cx1) { INLINE return power(1 - t, 3) * x0 + 3 * power(1 - t, 2) * (t) * cx0 + 3 * power(t, 2) * (1 - t) * cx1 + power(t, 3) * x1; }
|
|
|
|
function eval_bezier(t, x0, y0, x1, y1, cx0, cy0, cx1, cy1) {
|
|
var xx = power(1 - t, 3) * x0 + 3 * power(1 - t, 2) * (t) * cx0 + 3 * power(t, 2) * (1 - t) * cx1 + power(t, 3) * x1;
|
|
var yy = power(1 - t, 3) * y0 + 3 * power(1 - t, 2) * (t) * cy0 + 3 * power(t, 2) * (1 - t) * cy1 + power(t, 3) * y1;
|
|
|
|
return [xx, yy];
|
|
}
|
|
|
|
function eval_quadratic(t, x0, y0, x1, y1, cx, cy) {
|
|
var xx = power(1 - t, 2) * x0 + 2 * (1 - t) * (t) * cx + 2 * (t) * (1 - t) * cx + power(t, 2) * x1;
|
|
var yy = power(1 - t, 2) * y0 + 2 * (1 - t) * (t) * cy + 2 * (t) * (1 - t) * cy + power(t, 2) * y1;
|
|
|
|
return [xx, yy];
|
|
} |