Utilisation de courbes et de surfaces NURBS

Les fonctions NURBS (Non-Uniform Rational B-Spline) fournissent des descriptions générales et puissantes des courbes et des surfaces en deux et trois dimensions, convertissant les courbes et les surfaces en évaluateurs OpenGL. Les fonctions NURBS peuvent représenter la géométrie dans de nombreux systèmes de conception mécanique assistée par ordinateur. Ils peuvent restituer des courbes et des surfaces dans divers styles, et ils peuvent gérer automatiquement la subdivision adaptative qui transforme le domaine en triangles plus petits dans les régions de courbure élevée et les bords de silhouette proches. Les fonctions NURBS appartiennent aux catégories suivantes.

Pour gérer un objet NURBS, utilisez :

Pour spécifier les courbes souhaitées, utilisez :

Pour spécifier les surfaces souhaitées, utilisez :

Vous pouvez également spécifier une région de découpage, qui définit un sous-ensemble du domaine de surface NURBS à évaluer afin de créer des surfaces qui ont des limites lisses ou qui contiennent des trous.

Pour spécifier la région de découpage, utilisez :

Comme avec les objets quadric, vous pouvez contrôler le rendu des courbes et des surfaces NURBS. Vous pouvez déterminer :

  • Indique s’il faut ignorer une courbe ou une surface dont le polyèdre de contrôle se trouve en dehors de la fenêtre d’affichage actuelle.
  • Longueur maximale (en pixels) des bords des polygones utilisés pour afficher les courbes et les surfaces.
  • Que vous preniez la matrice de projection, la matrice modelview et la fenêtre d’affichage à partir du serveur OpenGL ou que vous les fournissez explicitement avec gluLoadSamplingMatrices.

Utilisez gluNurbsProperty pour définir ces propriétés ou utilisez les valeurs par défaut. Vous pouvez interroger un objet NURBS sur son style de rendu avec gluGetNurbsProperty.