Hlavní navigace

Křivky NURBS (1)

Jana Procházková 3. 3. 2006

Už v 60. letech minulého století pánové Bézier a de Casteljau, inženýři francouzského Renaultu a Citroenu, řešili problém hladkých tvarů karoserií. Jejich splajny otevřely cestu nurbsům, které jsou dnes součástí většiny profesionálních grafických softwarů. Co se za nimi ale skrývá?

Čím jsou nurbsy tak zvláštní?

Každý, kdo alespoň někdy zabrousil do grafiky, se s nurbs křivkami i plochami setkal. V současné době se nurbsy používají při konstrukci obecných tvarů – v automobilovém designu, letectví, filmové animaci. Ale proč? Výhodné na nich jsou:

  • neomezené konstrukční možnosti – modifikace polohy bodu, váhy, uzlového vektoru, stupně
  • rychlý, stabilní algoritmus
  • lokální kontrolovatelnost – při změně (např. bodu, váhy) dochází pouze k lokální změně křivky, zrychluje výpočet a vykreslování
  • zachování spojitosti při změnách
  • projektivní invariantnost – při základních transformacích – rotace, posunutí, zkosení – stačí zobrazit pouze řídící body a křivku znovu vypočítat, zrychluje výpočet
  • konstrukce kuželosečkových oblouků

Trocha teorie na úvod

Základy teorie B-splajnů položil Iso Schoenberg. K jeho pokračovatelům patří Carl de Boor, který sepsal celý teoretický základ B-splajnů.

Základní definice nurbs křivek zní:

Mějme dáno m+1 kontrolních bodů Pi, m+1 kladných reálných čísel wi nazývaných váhy, stupeň křivky n a uzlový vektor t = (t0, t1, … t{n+m+1}).

NURBS křivka je definována jako

nurbs1

kde

nurbs2

Bázová funkce Ninje definována rekurentně:

Nechť t = (t0, t1, … ts) je uzlový vektor. B-spline funkce stupně n je definována jako

nurbs3

kde

nurbs4

Za každou nurbs křivkou či plochou se ukrývají tyto základní rovnice. Nurbs plocha vzniká jako tenzorový součin dvou nurbs křivek. Hlavním důvodem složitosti vzorců je to, že pro každý parametr t se vypočítají jiné bázové polynomy, na rozdíl od Bezierových či Coonsových křivek.

Na závěr uvedu malý příklad. Kružnice je jednoduchý objekt, zadáte střed a poloměr a je to. Ale zadání kružnice jako nurbs křivky se stává skoro magickou záležitostí. Je potřeba devět řídících bodů umístěných do čtverce se speciálními vahami a uzlový vektor.

Kružnice se středem [0, 0] a poloměrem r = 1.
Stupeň křivky: 2 Body: [1, 0] , [1, 1] , [0, 1] , [−1, 1] , [−1, 0] , [−1,−1] , [0,−1] , [1,−1] , [1, 0]

nurbs5

A jak se obecná nurbs křivka naprogramuje se dozvíte příště …

Našli jste v článku chybu?

5. 3. 2006 20:18

jan (neregistrovaný)
ten soupis clanku a jejich hodnoceni - k tomu se muzu pridat. Vidim to take tak, a nejen zde na rootu. Na linuxsoftu jsou napr. zase nekonecne serialy a nebo clanky s par obrazkami nejakych exotickych distribuci. To nemluvim o linuxzone a pod.

Presto si myslim, ze nepomuze, aby se sefredaktor zamyslel. Clanky nejsou a je moje pevne presvedceni, ze take nebudou. Portaly se sice krecovite snazi vydat denne nejaky clanek, ale presne to odpovida vasemu popisu. Proc tomu tak je?

Nu, podle me je to …



7. 3. 2006 16:55

Tak nejak. Trochu vsechno odrostlo. Je fakt dost lidi, kteri toho dost znaji, ale malokdo ma chut a nutkani publikovat, a chut se vracet k necemu o cem uz jednou psali. Navic funguji zamerene blogy - planet postgres, planet mysql, ... kde se ted uz najde dost veci. Vetsinou Vas neprudi flameri a je vetsi sance, ze narazite na nekoho, s kym se da diskutovat.
Podnikatel.cz: Platební brány a EET? Stále s otazníkem

Platební brány a EET? Stále s otazníkem

Podnikatel.cz: Přivýdělek u Airbnb nebo Uberu? Čekejte kontrolu

Přivýdělek u Airbnb nebo Uberu? Čekejte kontrolu

Podnikatel.cz: Přehledná titulka, průvodci, responzivita

Přehledná titulka, průvodci, responzivita

Vitalia.cz: Jak koupit Mikuláše a nenaletět

Jak koupit Mikuláše a nenaletět

Lupa.cz: E-shopy: jen sleva už nestačí

E-shopy: jen sleva už nestačí

120na80.cz: Rakovina oka. Jak ji poznáte?

Rakovina oka. Jak ji poznáte?

DigiZone.cz: Sony KD-55XD8005 s Android 6.0

Sony KD-55XD8005 s Android 6.0

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

Vitalia.cz: 9 největších mýtů o mase

9 největších mýtů o mase

Podnikatel.cz: EET: Totálně nezvládli metodologii projektu

EET: Totálně nezvládli metodologii projektu

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Vitalia.cz: „Připluly“ z Německa a možná obsahují jed

„Připluly“ z Německa a možná obsahují jed

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Lupa.cz: Google měl výpadek, nejel Gmail ani YouTube

Google měl výpadek, nejel Gmail ani YouTube

Vitalia.cz: Tesco: Chudá rodina si koupí levné polské kuře

Tesco: Chudá rodina si koupí levné polské kuře

Vitalia.cz: I církev dnes vyrábí potraviny

I církev dnes vyrábí potraviny

Lupa.cz: Avast po spojení s AVG propustí 700 lidí

Avast po spojení s AVG propustí 700 lidí

DigiZone.cz: Flix TV má set-top box s HEVC

Flix TV má set-top box s HEVC

Lupa.cz: Propustili je z Avastu, už po nich sahá ESET

Propustili je z Avastu, už po nich sahá ESET

Měšec.cz: Finančním poradcům hrozí vracení provizí

Finančním poradcům hrozí vracení provizí