Exemple : Format de données d'une surface NURBS
Creo définit la surface NURBS par des fonctions de base (dans u et v) et par des tableaux dynamiques de noeuds, de pondérations et de points de contrôle. La figure suivante représente une surface NURBS cubique.
Format de données :
deg[2] | Degré des fonctions de base (dans u et v) |
u_par_arr[] | Tableau de noeuds sur la ligne de paramètre u |
v_par_arr[] | Tableau de noeuds sur la ligne de paramètre v |
wghts[] | Tableau de pondérations pour des NURBS rationnelles, sinon NULL |
c_point_arr[][3] | Tableau de points de contrôle |
Définition :
k = degree in u
l = degree in v
N1 = number of knots in u, degree in u -2
N2 = number of knots in v, degree in v -2
Bi,k = basis function in u
Bj,l = basis function in v
wi,j = weights
Ci,j = control points (x,y,z) * wi,j
La pondération et les tableaux c_points_arr représentent les matrices de taille wghts[N1+1] [N2+1] et c_points_arr [N1+1] [N2+1]. Les éléments des matrices sont groupés dans des tableaux par ordre principal de ligne.