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.

widgety

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ě …

Ohodnoťte jako ve škole:

Průměrná známka 2,92

Našli jste v článku chybu?
Zasílat nově přidané názory e-mailem
Měšec.cz: Banky umí platby na kartu, jen to neříkají

Banky umí platby na kartu, jen to neříkají

120na80.cz: Pyly útočí. Braňte se

Pyly útočí. Braňte se

Podnikatel.cz: Když si reklamou „zabíjíte“ zákazníky

Když si reklamou „zabíjíte“ zákazníky

Vitalia.cz: Pozor na nealko pivo s alkoholem

Pozor na nealko pivo s alkoholem

Vitalia.cz: Očkování a autismus ve světle vědeckého objevu

Očkování a autismus ve světle vědeckého objevu

Podnikatel.cz: Velká fotogalerie franšíz. Vybírejte v ČR

Velká fotogalerie franšíz. Vybírejte v ČR

Podnikatel.cz: Český chřest míří až do Japonska nebo Dubaje

Český chřest míří až do Japonska nebo Dubaje

Podnikatel.cz: Prodá jen 15 obědů denně. Co dělá špatně?

Prodá jen 15 obědů denně. Co dělá špatně?

Podnikatel.cz: Nepřišlo vaše hlášení k DPH? Beřnák po vás jde

Nepřišlo vaše hlášení k DPH? Beřnák po vás jde

Vitalia.cz: Domácí výrobna, kterou si zamilujete

Domácí výrobna, kterou si zamilujete

120na80.cz: Čím namazat zmožené nohy?

Čím namazat zmožené nohy?

Vitalia.cz: Jak obléct dítě tak akorát

Jak obléct dítě tak akorát

Podnikatel.cz: Poděs, Slibotechna a další. Ty berte obloukem

Poděs, Slibotechna a další. Ty berte obloukem

Lupa.cz: V Brně vyvinuli rychlý internet do letadel

V Brně vyvinuli rychlý internet do letadel

Podnikatel.cz: Máte poslední dny na odevzdání přehledů

Máte poslední dny na odevzdání přehledů

Vitalia.cz: Vědci: Svět vegetariánů by byl zdravější a...

Vědci: Svět vegetariánů by byl zdravější a...

Podnikatel.cz: Kašlali na předpisy, byznys jim zavřeli

Kašlali na předpisy, byznys jim zavřeli

120na80.cz: Akce na podporu lidí s hemofilií

Akce na podporu lidí s hemofilií

Lupa.cz: Online budoucnost je v neviditelných platbách

Online budoucnost je v neviditelných platbách

Vitalia.cz: Kontrola: Med bez potíží. Konečně!

Kontrola: Med bez potíží. Konečně!

Ušetřete