Internet Info, s.r.o. Lupa Měšec Podnikatel Root Zdroják DigiZone Slunečnice Vitalia TopDrive KupDnes Navrcholu NovýTarif Dobrý web Weblogy Woko Jagg Computer.cz SK: MojeLinky

Hlavní navigace

Křivky NURBS (1)

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á?

Tweetni to Twitter Jaggni to! Jagg Del.icio.us Delicious

Čí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.

davame_internetu_obsah
       

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

Školení: Linux – Firemní server

Na třídenním školení se naučíte nainstalovat a spravovat kompletní linuxový server do Vaší firmy se všemi základními službami, které potřebujete pro provoz Vaší sítě, firemních emailů a webových stránek.

Podrobnější informace a přihláška

Ohodnoťte jako ve škole:
Průměrná známka 2,93

Přehled názorů

Matematika...
Oldřich Jedlička 3. 3. 2006 08:50
Nový
├ 
Re: Matematika...
Jana Procházková 3. 3. 2006 09:45
Nový
└ 
Re: Matematika...
Lukáš Zapletal 3. 3. 2006 10:12
Nový
 
└ 
Re: Matematika...
Jana Procházková 3. 3. 2006 12:12
Nový
 
 
└ 
Re: Matematika...Re: Matematika...
Lukáš Zapletal 3. 3. 2006 14:25
Nový
 
 
 
└ 
Re: Matematika...Re: Matematika...
Jana Procházková 3. 3. 2006 16:12
Nový
 
 
 
 
└ 
Re: Matematika...Re: Matematika...Re: Matematika...Re: Matematika...
Lukáš Zapletal 3. 3. 2006 17:44
Nový
Jazyk
Jakub Hegenbart 3. 3. 2006 08:55
Nový
├ 
Re: Jazyk
Jana Procházková 3. 3. 2006 09:53
Nový
├ 
Re: Jazyk
casablanca 3. 3. 2006 12:31
Nový
│
└ 
Re: Jazyk
Jakub Hegenbart 3. 3. 2006 13:54
Nový
└ 
Re: Jazyk
JP 4. 3. 2006 10:48
Nový
NURBS?
steh 3. 3. 2006 11:49
Nový
└ 
Re: NURBS?
David 3. 3. 2006 12:48
Nový
fajn clanok
mikro 3. 3. 2006 13:05
Nový
Co to tu dela?
anonymní uživatel 3. 3. 2006 18:56
Nový
├ 
Re: Co to tu dela?
anonymní uživatel 3. 3. 2006 23:40
Nový
├ 
Re: Co to tu dela?
Yokotashi 4. 3. 2006 04:46
Nový
│
└ 
Re: Co to tu dela?
anonymní uživatel 4. 3. 2006 10:20
Nový
│
 
└ 
Re: Co to tu dela?
David 4. 3. 2006 12:00
Nový
└ 
Re: Co to tu dela?
Jana Procházková 4. 3. 2006 12:15
Nový
 
└ 
Re: Co to tu dela?
anonymní uživatel 6. 3. 2006 17:42
Nový
opet kritika
martin h. 4. 3. 2006 18:28
Nový
└ 
Re: opet kritika
jan 4. 3. 2006 19:37
Nový
 
└ 
Re: opet kritika
martin h. 4. 3. 2006 22:39
Nový
 
 
└ 
Re: opet kritika
jan 5. 3. 2006 20:18
Nový
 
 
 
└ 
Re: opet kritika
martin h. 5. 3. 2006 23:34
Nový
 
 
 
 
└ 
Re: opet kritika
Pavel Stěhule 7. 3. 2006 16:55
Nový
A co to teda vlastně je ten Nurbs?
BoneFlute 5. 3. 2006 22:20
Nový
       

Tento text je již více než dva měsíce starý. Chcete-li na něj reagovat v diskusi, pravděpodobně vám již nikdo neodpoví. Pro řešení aktuálních problémů doporučujeme využít naše diskusní fórum.

Zasílat nově přidané příspěvky e-mailem