Condividi tramite


Uso di curve e superfici NURBS

Le funzioni NURBS (Non Uniform Rational B-Spline) forniscono descrizioni generali e potenti di curve e superfici in due e tre dimensioni, convertendo le curve e le superfici in analizzatori OpenGL. Le funzioni NURBS possono rappresentare la geometria in molti sistemi meccanici a supporto informatico. Possono eseguire il rendering di curve e superfici in un'ampia gamma di stili e possono gestire automaticamente la suddivisione adattiva che tassella il dominio in triangoli più piccoli in aree con curvatura elevata e vicino ai bordi della silhouette. Le funzioni NURBS rientrano nelle categorie seguenti.

Per gestire un oggetto NURBS, usare:

Per specificare le curve desiderate, usare:

Per specificare le superfici desiderate, usare:

È anche possibile specificare un'area di taglio, che definisce un subset del dominio di superficie NURBS da valutare in modo da poter creare superfici con limiti uniformi o che contengono fori.

Per specificare l'area di taglio, usare:

Come per gli oggetti quadric, è possibile controllare il rendering delle curve e delle superfici NURBS. È possibile determinare:

  • Se rimuovere una curva o una superficie il cui poliedro di controllo si trova all'esterno del riquadro di visualizzazione corrente.
  • Lunghezza massima (in pixel) dei bordi dei poligoni utilizzati per eseguire il rendering di curve e superfici.
  • Indipendentemente dal fatto che la matrice di proiezione, la matrice modelview e il viewport vengano accettati dal server OpenGL o che vengano forniti esplicitamente con gluLoadSamplingMatrices.

Usare gluNurbsProperty per impostare queste proprietà o usare i valori predefiniti. È possibile eseguire una query su un oggetto NURBS sullo stile di rendering con gluGetNurbsProperty.