p = a.mul(t*t/2).add(v0.mul(t)).add(p0);
v = a.mul(t).add(v0);
ProjectileMotion
Projekcija kružnog kretanja na jednu dimenziju
Uglovi su dati u obrtima, pa koristimo funkcije cosT i sinT iz klase Numeric.
theta = theta0 + omega*t;
p = new Vector(Numeric.cosT(theta), Numeric.sinT(theta)).mul(r).add(c);
Ili, jednostavnije, koristimo funkciju Vector.polar.
p = Vector.polar(r, theta).add(c);
RotatingRobot
Krećemo se ravnomerno pravolinijski.
Pitanje: Gde se nalazimo u trenutku ?
Primenljivo i korisno u svakom vektorskom prostoru! (funkcije, transformacije, boje, zvuci, ...)
Interpolacija vektora (svi načini daju isti* rezultat):
p = p0.mul(1-t).add(p1.mul(t));
p = p0.add(p1.sub(p0).mul(t));
p = Vector.lerp(p0, p1, t);
Interpolacija boje:
c = c0.interpolate(c1, t);
AnimationCurves (index = 0)
(Easing funkcije)
draw(t) → draw(f(t))
Neprekidna funkcija,
,
(Mogući su izuzeci)
Modifikuju brzinu interpolacije radi:
Smoothstep:
Smootherstep:
https://easings.net
https://www.geogebra.org/m/kvy5zksn
AnimationCurves

BoxAndBall