Számítógépes grafika és képfeldolgozás - Vizsga, 2015.01.12.

A VIK Wikiből

Amennyiben ki tudjátok egészíteni, vagy hibás számolást találtok nyugodtan változtassátok a cikket.

1.Feladat

1.rész

Feladat

Adott egy merevtestű madár, amely t=0 időpontban az origón megy keresztül v sebességgel, t=1 időpontban már a p pontban található. Pályájának Descartes koordinátái az idő polinomfüggvényei. Adjon meg egy, a feltételeknek eleget tevő pályát, azaz határozza meg, hol van a madár egy tetszőleges t időpontban és mi a pillanatnyi sebessége. (8 pont)

Mi a madár modellezési transzformációja ebben a pillanatban, amely referencia helyzetből ide transzformálja? Feltételezve, hogy a referencia helyzetben a madár súlypontja origóban van, csőre +y, farka -y, háta +z, hasa -z irányba néz, szárnyait az x tengellyel párhuzamosan feszíti ki. (12 pont)

Megjegyzés

Sajnos a feladatból (számomra) hiányzott egy paraméter (v értéke t=1 időpontban, vagy, hogy állandó-e a gyorsulás). Amennyiben valaki tud egy jobb, egyértelműbb megoldást, kérem, hogy ossza meg ebben a cikkben.

Megoldás #1

Feltételezzük, hogy a(t) állandó ( csak a-ként hivatkozok rá):

v(t)=at+v

p(t)=a2t2+vt+0_=a2t2+vt

Ebből következően ha t=1:

p=a2+v

a=2(pv)

Tehát:

v(t)=2(pv)t+v

p(t)=(pv)t2+vt

2. rész

Amennyiben a madár modelje alapesetben csőrével az +y, farkával a -y, hátával a +z és hasával a -z valamint a szárnyai az x tengelyek felé néz, milyen transzformációkat kell elvégeznünk, hogy megfelelő irányban és pozícióban legyen minden időpillanatban úgy, hogy forduláskor bedől (Frenet keret)

Megjegyzés

Valószínűleg hibás (sorry). Érdemes átnézni a jegyzeteket (bmeanimr.ppt ~17. dia) és leellenőrizni. Ebből próbáltam én is összerakni. Amennyiben mégis helyes, akkor kéretik törölni ezt a két sort :)

(A x|x| kifejezés egyszerűen csak normalizálást jelent.)

Megoldás

A jegyzetben az alábbi koordinálták vannak:

  • Madár csőre: +z tengely
  • Madár háta: +y tengely
  • Madár szárnyai: x tengely

Ennek köszönhetően fel kell cserélni az egyenletekben a tengelyeket:

ym=r(t)=v(t)

xm=ym×r(t)=ym×a

zm=ym×xm

Ebbe a három vektorba kell forgatni a madarat. Az első cél, hogy az x tengelyt befordítsuk a xm helyére ( 2 forgatás - φz és φy), utána az y tengelyt kell beforgatnunk a ym helyére ( 1 forgatás - φx ). Belátható, hogy e két vektorral a z tengely is a helyére kerül

  • A φz-t hamar kinyerhetjük a xm-ben található y értékből:

φz=sin1([010][xm|xm|])

φz{x>0=φzx0=πφz

  • A forgatott x tengely és az xm által bezárt szög fogja alkotni a φy-t:

x=[cosφzsinφz0sinφzcosφz0001][100]=[cosφzsinφz0]

φy=cos1(x|x|xm|xm|)

φy{z>0=φyz0=φy

  • Hasonlóan az előzőekhez az y tengelyt ki kell számolni, és az ym-el bezárt szög lesz a φx:

y=[cosφzsinφz0sinφzcosφz0001][010]=[sinφzcosφz0]

φx=cos1(y|y|ym|ym|)

φx{z>0=φxz0=φx

Ezekkel a szögekkel(φx,φy,φz) kell forgatni a madarat, és el kell mozdítani p(t) vektorral

2. feladat

Bizonyítsa be, hogy egy invertálható homogén lineáris tanszformáció a projektív síkot projektív síkra, kvadratikus felületet kvadratikus felületre képez le. (10 pont)