Calcularea unei curbe quad între două puncte xy

Am două (x, y) puncte încep și termină. Vreau să anim animat de la început până la capăt, dar în loc să merg într-un mod liniar vreau să creez o cale curbată.

Sunt sigur că nu caut o relaxare deoarece nu vreau să afectez viteza de animație, vreau doar să calculez o cale curbată.

Mi-am dat seama că am nevoie de un fel de punct de control, așa cum se arată în această imagine:

enter image description here

Dar nu am nici o idee cum să o pun în aplicare. Mi-ar plăcea să creez o funcție care să ia următorii parametri

function calculateXY(start, end, controlpoint, percentage);

În cazul în care procentul ar fi un număr de la 0 la 100% și unde 0 ar readuce poziția de pornire și 100% poziția finală.

Soluția nu trebuie să fie în Obiectiv-C, ar putea fi în orice limbaj de programare. Nu-mi pot lua capul în jurul matemației :)

6

2 răspunsuri

Consultați linkul acest și, în special, ecuația 2, care pare ușor de implementat în cod.

S-a găsit un fragment care face acest lucru pentru dvs.

3
adăugat

Uitați-vă la Căi Bezier de cacao: (NSBezierPath) .

Se pare că s-ar putea să nu fie acceptate curbele quadratice Bezier, deci trebuie să convertiți la cubic .

0
adăugat
iOS dezvoltatori, România — Moldova
iOS dezvoltatori, România — Moldova
18 participanți

Parteneri: ciupacabra.com, @php_ro, @js_ro, @node_ro, @seo_ro Android: @ro_android