NURBS je matematička metoda pomoću koje se u 3D CAD sistemima mogu precizno predstaviti (opisati) kako jednostavne pravilne površi tako i složene zakrivljene površi. Površ opisana ovom metodom se naziva NURBS površ.


Pomoću NURBS metode je moguće matematički opisati kako analitičke (lopta, konus, elipsoid...) tako i sintetičke površi tj. površi slobodnog oblika (Freeform surfaces).

NURBS je skraćenica od NeUniformni Racionalni B-Splajn (eng. Non-Uniform Rational B-Splines, rus. Неоднородный рациональный B-сплайн).

NURBS metoda je u suštini unapređena B-Splajn metoda. Glavna razlika je što se NURBS metodom mogu opisati i pravilne analitičke krive i površi poput kružnice, elipse, lopte... Razlog tome je što težine kontrolnih tačaka NURBS geometrije mogu imati različite vrednosti tj. težina se može regulisati za svaku tačku posebno. Težina kontrolne tačke je parametar koji određuje njen uticaj na zakrivljenost površine.  

 


NURBS površi

 

Zbog svoje sposobnosti da na uniforman način opiše kako jednostavne tako i složene oblike, NURBS metoda je postala standard u svetu CAD-a i verovatno ne postoji moderni 3D CAD softver u koji ona nije ugrađena. Veliki broj matematičara i programera su razvili brojne algoritme za operacije sa NURBS krivama i površima: spajanje, trimovanje, produžavanje, pronalaženje tačaka preseka, razni načini konstruisanja površi... Naravno, korisnici CAD softvera nemaju direktni kontakt sa ovim algoritmima pošto su oni ugrađeni u jezgra za geometrijsko modeliranje.

Pošto se NURBS metodom mogu opisati kako pravilne analitičke površi tako i zakrivljene sintetičke, ona CAD sistemima nudi unifikovani način smeštanja 3D modela. Zbog velike primene u 3D CAD sistemina ugrađena je i u neutralne CAD formate (STEP i IGES), što omogućava kvalitetnu razmenu podataka ne samo između 3D CAD sistema već i sa ostalim CAx softverima (CAM, CAE, Obrnuti inženjering...).

 

NURBS metoda omogućava da se površ bilo kakvog oblika predstavi (opiše) samo pomoću sledećih parametara: 

 

Kontrolne tačke "privlače" površ i na taj način određuju njen oblik, odnosno utiču na njenu zakrivljenost. Stepeni NURBS površi u pravcima u i v određuju glatkoću površi.

NURBS površi su zasnovane na istom konceptu kao i NURBS krive, jedina razlika je što površi imaju dva parametar (u i v), a krive jedan (u) tj. NURBS krive su jednodimenzionalne, a površi dvodimenzionalne.

NURBS površi u suštini predstavljaju mrežu glatko spojenih NURBS kriva koje su raspoređene u pravcima u i v. Parametarska NURBS površ se slično Bezjeovoj ili B-Splajn konstruiše kombinovanjem (množenjem) dve NURBS krive tj. tenzorskim proizvodom njihovih osnovnih funkcija.

 

Ako imamo:

  • mrežu kontrolnih tačaka pi,j  u dva pravca (m+1, n+1), gde je 0≤i≤m i 0≤j≤n

  • vektor čvorova h u pravcu u (u=u0, u1,…,up)

  • vektor čvorova k u pravcu v (v=v0, v1,…,vq)

  • stepen p u pravcu u

  • stepen q u pravcu v

 

Jednačina NURBS površi se onda može napisati u sledećem obliku:

 

      $P{\left( {u,v} \right)}=\frac{\sum_{i=0}^{m} {\sum_{j=0}^{n} {{p}_{i,j}\ {w}_{i,j}\ {N}_{i,p}{\left( {u} \right)}\ {N}_{j,q}{\left( {{v}} \right)}}}}{\sum_{i=0}^{m} {\sum_{j=0}^{n} {{p}_{ij}\ {N}_{i,p}{\left( {u} \right)}\ {N}_{j,q}{\left( {{v}} \right)}}}}$

 

${N}_{i,p}{\left( {u} \right)} i {N}_{j,q}{\left( {{v}} \right)}$ su osnovne polinomske funkcije iste kao kod NURBS kriva

Broj elemenata vektora h i k se računaju prema jednačinama h=m+p+1 i k=n+q+1, gde su n i m brojevi kontrolnih tačaka po pravcima u i v, a p i q su stepeni osnovnih funkcija.

Za nas korisnike CAD softvera nisu toliko bitne teorijske priče u vezi NURBS površi već načini kako se one mogu konstruisati u 3D CAD softverima.

 

Osobine NURBS površi slobodnog oblika:

  • preciznost - definisane su preciznim matematičkim jednačinama što kao rezultat daje glatke zakrivljene površi koje su pogodne za veliki broj tehničkih oblasti: vazduhoplovstvo, auto industrija, brodogradnja...

  • razvijen veliki broj algoritama za konstruisanje, uređivanje i manipulaciju

  • omogućavaju opisivanje veoma složenih oblika sa veoma malo podataka 

  • mogu se konstruisati interpolacijom ili aproksimacijom skupa tačaka

  • mogu matematički opisati površ bilo kakvog oblika i složenosti, kako analitičke tako i sintetičke 

  • stepen nezavisan od broja kontrolnih tačaka

  • moguća je lokalna kontrola oblika tj. moguće je promeniti oblik samo jednog dela površi. Npr. ako se promeni položaj neke kontrolne tačke promeniće se samo oblik regiona u njenoj blizini

  • sastoje se od segmenata tj. od međusobno spojenih Bezjeovih površi između kojih postoji gladak prelaz tj. kontinuitet zakrivljenosti.

  • mogu se konstruisati pomoću koliko god kontrolnih tačaka

  • oblik prati kontrolne tačke - površ je raširena između kontrolnih tačaka koje kao da je privlače ka sebi

  • kontrolne tačke mogu imati različite težine. Ova osobina daje NURBS metodi mogućnost opisivanja analitičkih površi koje se B-Splajn metodom ne mogu predstaviti

  • jednostavna i brza kontrola oblika pomeranjem kontrolnih tačaka ili promenom njihovih težina

  • kontrolne tačke ne leže na površi

  • ne moraju da prolaze kroz kontrolne tačke na uglovima (p0,0, pn,0, p0,m i pn,m) kao Bezjeove površi.

  • leže unutar konveksnog omotača formiranog od kontrolnih tačaka

  • granične krive P(u,0), P(0,v), P(u,1), P(1,v) su NURBS krive

  • sve krive kada su u ili v parametri konstantni su NURBS krive

  • mogu biti isečene (trimovane) drugim krivama ili površima

  • Afina invarijantnost: transformacije (pomeranje, obrtanje i slično pretvaranje (skaliranje)) primenjene na kontrolne tačke imaju isti uticaj i na površ

  • omogućavaju UV mapiranje i primenu tekstura

Na osnovu nabrojanih osobina možemo videti da postoji velika sličnost sa B-Splajn površima, što je i logično pošto su NURBS površi vrsta B-Splajn površi.

 

NURBS metoda ima nekoliko nedostataka koji se uglavnom odnose na poligonalne mreže:

  • složena matematika koja stoji iza ove metode otežava njenu ugradnju u softvere, pogotovu ako se uporedi sa poligonalnim mrežama

  • modeliranje sa NURBS je mnogo teže od modeliranja sa poligonalnim mrežama

  • nedostatak topološke kontrole oblika kao što je to slučaj kod 3D modeliranja. 

  • da bi se NURBS površinski modeli koristili u softverima za 3D modeliranje (Blender, 3ds Max, Unity, Unreal Engine...) tj. kreativnu industriju (animacije, igrice...) preporučuje se konverzija NURBS površi u poligonalne mreže.

Ovi nedostaci su delimično rešeni T-Splajn metodom predstavljanja.

 

Napomenuo bi još jedanput da je tačnost najveća prednost NURBS u odnosu na poligonalne mreže. NURBS metoda ne aproksimira (pravim segmentima ili pljosnima) neki zakrivljeni 2D ili 3D oblik, već opisuje pomoću matematičkih funkcija. Oblik NURBS kriva i površi jeste približan, ali pošto je opisan matematičkim jednačinama on je gladak i precizno matematički određen. Ova osobina je glavni razlog zašto se u tehničkim strukama koriste CAD softveri, a ne softveri za 3D modeliranje.

 

 

Zbog brzine proračuna i prikazivanja na ekranu računar može prikazivati NURB krive i površi aproksimativno, ali svi proračuni koje obavlja sa njima će biti obavljeni na osnovu jednačina koje daju kontinualni zakrivljeni glatki oblik.

Submitted by Čeh Jan on