1 / 33

Računarska grafika

Računarska grafika. predavanja v.as.mr. Samir Lemeš slemes@mf.unze.ba. 25. Parametarske krive. Predstavljanje krivulja Paramet a r ske krive Paramet a r ske k ub ne krivulje Hermit ovi kubni splajnovi Hermit ov e funkcije miješanja. Predstavljanje krivulja. Pomoću niza tačaka …

sibyl
Download Presentation

Računarska grafika

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Računarskagrafika predavanja v.as.mr. Samir Lemeš slemes@mf.unze.ba

  2. 25. Parametarske krive • Predstavljanje krivulja • Parametarskekrive • Parametarskekubne krivulje • Hermitovikubni splajnovi • Hermitove funkcije miješanja

  3. Predstavljanje krivulja • Pomoću niza tačaka… • Krivulja je predstavljena približno, kao izlomljena linija – nije pogodno za glatke linije • Teško za manipulaciju jer se sve tačke moraju premještati pojedinačno • Umjesto toga, krivulja se modelira kao polinom • x = x(t), y = y(t), z = z(t) • gdje su x(), y(), z() polinomi, a t je parametar

  4. Polinomi • Linearni: • Kvadratni: • Kubni:

  5. Predstavljanje krivulja • Kontrolnetačke • Set tačaka koje imaju utjecaj na oblik krivulje • Čvorovi • Kontrolne tačke koje leže na krivoj • Splajnovi za interpolaciju • Krivulje koje prolaze krozkontrolne tačke (čvorove) • Aproksimativnisplajnovi • Samo kontrolne tačke utječu na oblik

  6. Parametarskekrive • Fleksibilnopredstavljanje krivulje • Ne moraju biti funkcije • Mogu imati više vrijednosti u odnosu na bilo koju dimenziju

  7. Kubni polinomi • x(t) = axt3 + bxt2 + cxt + dx • Slično za y(t) i za z(t) • Neka je t: (0 <= t <= 1) • Ako se uvede oznaka T = [t3 t2 t 1] • Matrica koeficijenata C • Krivulja: Q(t) = T*C

  8. Parametarskekrive • Kako odrediti tangentu na krivulju? • Ako je f(x) = • tangentaza (x=3) je • Izvodod Q(t) jevektor tangenteu t:

  9. Izvodi • Određivanje izvoda (tangenti) krivulje:

  10. Segmenti krivulje • Krivulje se konstruišu povezivanjem krajeva više manjih segmenata • Moraju postojati pravila o tome kako se vrši povezivanje • Kontinuitet opisuje vezu • Parametarski kontinuitet • Geometrijskikontinuitet

  11. Parametarskikontinuitet • C0jekontinuitetlinije (zajednička tačka) • C1je tangentnikontinuitet (brzina) • C2jekontinuitet drugog izvoda (ubrzanje)

  12. Geometrjski kontinuitet • Akose položaji tačaka poklapaju • G0 geometrijskikontinuitet • Ako se smjer (ne obavezno i intenzitet) tangentipoklapa • G1 geometrijskikontinuitet • Vrijednost tangente na kraju jedne krivulje je proporcionalna vrijednosti tangente na početku sljedeće krivulje

  13. Parametarskekubne krivulje • Dabi se osigurao C2kontinuitet, krivulje moraju biti najmanje trećeg reda • Dataje parametarska definicija kubnog splajna (3. reda) u dvije dimenzije • Kako je proširiti na tri dimenzije?

  14. Parametarskekubne krivulje • Može se predstaviti i u matričnom obliku

  15. Koeficijenti • Kako izabrati koeficijente? • [ax bx cx dx] i [ay by cy dy] moraju zadovoljiti ograničenja koja nameću čvorovi i uslovi kontinuiteta

  16. Parametarskekrivulje • Krivulju je teško konceptualizirati kaox(t) = axt3 + bxt2 + cxt + dx(Crtači ne razmišljaju o koeficijentima ili kubnim jednačinama) • Umjesto toga, krivulja se definiše kao kombinacija 4 precizno definisana kubna polinoma • Svaki tip krivulje definiše različite kubne polinome

  17. Parametarskekrivulje • Hermitove-dvije krajnje tačke i dva vektora tangenti u krajevima • Bezier - dvije krajnje tačke i dvije druge tačke koje definišu vektore tangenti u krajevima • Splajnovi-četiri kontrolne tačke • C1 i C2 kontinuitet u tačkama dodira • Približavaju se svojim kontrolnim tačkama, ali ih ne moraju uvijek dodirnuti

  18. Hermitovikubni splajnovi • Primjer čvorova i kontinuiteta

  19. Hermitovikubni splajnovi • Po jedna kubna krivulja za svaku dimenziju • Krivulja u x/y ravni ima dvije krivulje:

  20. Hermitovikubni splajnovi • 2-D Hermitov kubni splajn je definisan sa 8 parametara: a, b, c, d, e, f, g, h • Kako se intuitivne krajnje tačke pretvaraju u ovih 8 (relativno) neintuitivnih parametara? • Poznato je: • (x, y) položajza t = 0, p1 • (x, y) položajza t = 1, p2 • (x, y) izvod za t = 0, dp/dt • (x, y) izvod za t = 1, dp/dt

  21. Hermitovikubni splajnovi • Poznat je: • (x, y) položaj za t = 0, p1

  22. Hermitovikubni splajnovi • Poznat je: • (x, y) položaj za t = 1, p2

  23. Hermitovikubni splajnovi • Za sad imamo 4 jednačine, ali 8 nepoznatih • Koriste se izvodi:

  24. Hermitovikubni splajnovi • Poznat je: • (x, y) izvod za t = 0, dp/dt

  25. Hermitovikubni splajnovi • Poznat je: • (x, y) izvod za t = 1, dp/dt

  26. Hermitovaspecifikacija • Matričnajednačinaza Hermitovukrivulju t3 t2 t1 t0 t = 0 p1 t = 1 p2 t = 0 r p1 r p2 t = 1

  27. Rješavanje Hermitove matrice

  28. Matrice splajnai geometrije MHermite GHermite

  29. Rezultujućajednačina Hermitovogsplajna

  30. Primjeri Hermitovihkrivulja

  31. Funkcije miješanja (Blending Functions) • Množenjem prve dvije matrice u donjoj lijevoj jednačini, dobiju se 4 funkcije od 't'koje miješaju 4 kontrolna parametra • To su funkcije miješanja

  32. Hermitove funkcije miješanja • Grafičkazavisnost funkcije miješanja od parametra 't'

  33. Hermitove funkcije miješanja • Svakafunkcijamiješanjareflektujeutjecaj P1, P2, DP1, DP2naoblik splajna

More Related