/**
  * Makes a NURBS surface.
  *
  * @param r GLUnurbs object holding the surface
  * @param sknot_count number of knots in s direction
  * @param sknot knots in s direction
  * @param tknot_count number of knots in t direction
  * @param tknot knots in t direction
  * @param s_stride number of control points coordinates in s direction
  * @param t_stride number of control points coordinates in t direction
  * @param ctlarray control points
  * @param sorder order of surface in s direction
  * @param torder order of surface in t direction
  * @param type surface type
  */
 public final void gluNurbsSurface(
     GLUnurbs r,
     int sknot_count,
     float[] sknot,
     int tknot_count,
     float[] tknot,
     int s_stride,
     int t_stride,
     float[] ctlarray,
     int sorder,
     int torder,
     int type) {
   // DONE
   ((GLUgl2nurbsImpl) r)
       .nurbssurface(
           sknot_count,
           sknot,
           tknot_count,
           tknot,
           s_stride,
           t_stride,
           ctlarray,
           sorder,
           torder,
           type);
 }