\subsection{Compute a surface interpolating a set of points,
derivatives as input.}
\funclabel{s1534}
\begin{minipg1}
  To compute a surface interpolating a set of points, derivatives
  as input.
  The output is represented as a B-spline surface.
\end{minipg1}\\ \\
SYNOPSIS\\
      \>void s1534(\begin{minipg3}
        {\fov points}, {\fov der10}, {\fov der01}, {\fov der11}, {\fov im1}, {\fov im2}, {\fov idim}, {\fov ipar}, {\fov con1}, {\fov con2}, {\fov con3},
        {\fov con4}, {\fov order1},  {\fov order2}, {\fov rsurf}, {\fov jstat})
      \end{minipg3}\\[0.3ex]
      \>\>    double \> {\fov points}[\,];\\
      \>\>    double \> {\fov der10}[\,];\\
      \>\>    double \> {\fov der01}[\,];\\
      \>\>    double \> {\fov der11}[\,];\\
      \>\>    int    \> {\fov im1};\\
      \>\>    int    \> {\fov im2};\\
      \>\>    int    \> {\fov idim};\\
      \>\>    int    \> {\fov ipar};\\
      \>\>    int    \> {\fov con1};\\
      \>\>    int    \> {\fov con2};\\
      \>\>    int    \> {\fov con3};\\
      \>\>    int    \> {\fov con4};\\
      \>\>    int    \> {\fov order1};\\
      \>\>    int    \> {\fov order2};\\
      \>\>    SISLSurf \> **{\fov rsurf};\\
      \>\>    int    \> *{\fov jstat};\\
\\
ARGUMENTS\\
        \>Input Arguments:\\
        \>\>    {\fov points} \> - \>
        \begin{minipg2}
          Array of dimension $idim\times im1\times im2$ containing the
          positions of the nodes (using the same ordering as ecoef in
          the SISLSurf structure).
        \end{minipg2}\\[0.8ex]
        \>\>    {\fov der10}  \> - \>
        \begin{minipg2}
          Array of dimension $idim\times im1\times im2$ containing
          the first derivatives in the first parameter direction.
        \end{minipg2}\\
        \>\>    {\fov der01}  \> - \>
        \begin{minipg2}
          Array of dimension $idim\times im1\times im2$ containing the
          first derivatives in the second parameter direction.
        \end{minipg2}\\[0.8ex]
        \>\>    {\fov der11}  \> - \>
        \begin{minipg2}
          Array of dimension $idim\times im1\times im2$ containing the
          cross derivatives (the twists).
        \end{minipg2}\\[0.8ex]
        \>\>    {\fov im1}  \> - \>
        \begin{minipg2}
          The number of interpolation points in the first parameter
          direction.
        \end{minipg2}\\[0.8ex]
        \>\>    {\fov im2}  \> - \>
        \begin{minipg2}
          The number of interpolation points in the second parameter
          direction.
        \end{minipg2}\\[0.8ex]
        \>\>    {\fov idim} \> - \> Dimension of the space we are working in.\\
        \>\>    {\fov ipar} \> - \> Flag showing the desired
                                    parametrization to be used:\\
                 \>\>\>\>\> $= 1$ : \begin{minipg5}
                                      Mean accumulated cord-length
                                      parameterization.
                                    \end{minipg5}\\[0.3ex]
                 \>\>\>\>\> $= 2$ : Uniform parametrization.\\
%\newpagetabs
        \>\>\>\>\begin{minipg2}
                Numbering of surface edges:\\
                \begin{center}
                  \begin{picture}(180,110)(0,0)
                    \put(50,15){\framebox(80,80)}
                    \put(40,55){\makebox(0,0){3}}
                    \put(140,55){\makebox(0,0){4}}
                    \put(90,5){\makebox(0,0){1}}
                    \put(90,105){\makebox(0,0){2}}

                    \put(60,20){\vector(1,0){40}}
                    \put(85,28){\makebox(0,0){$(i)$}}
                    \put(55,25){\vector(0,1){40}}
                    \put(65,50){\makebox(0,0){$(ii)$}}
                  \end{picture}\\
                  $(i) \; \; \;$ first parameter direction of surface.\\
                  $(ii)$   second parameter direction of surface.\\
                \end{center}
              \end{minipg2}\\ \\
        \>\>    {\fov con1} \> - \> Additional condition along edge 1:\\
                      \>\>\>\>\> $= 0$ : No additional condition.\\
                      \>\>\>\>\> $= 1$ : Zero curvature.\\
        \>\>    {\fov con2} \> - \> Additional condition along edge 2:\\
                      \>\>\>\>\> $= 0$ : No additional condition.\\
                      \>\>\>\>\> $= 1$ : Zero curvature.\\
        \>\>    {\fov con3} \> - \> Additional condition along edge 3:\\
                      \>\>\>\>\> $= 0$ : No additional condition.\\
                      \>\>\>\>\> $= 1$ : Zero curvature.\\
        \>\>    {\fov con4} \> - \> Additional condition along edge 4:\\
                      \>\>\>\>\> $= 0$ : No additional condition.\\
                      \>\>\>\>\> $= 1$ : Zero curvature.\\
        \>\>    {\fov order1} \> - \> Order of surface in first
                                      parameter direction.\\
        \>\>    {\fov order2} \> - \> Order of surface in second
                                      parameter direction.\\
\\
        \>Output Arguments:\\
        \>\>    {\fov rsurf}  \> - \> Pointer to the B-spline surface produced.\\
        \>\>    {\fov jstat} \> - \> Status message\\
                \>\>\>\>\> $< 0$ : Error.\\
                \>\>\>\>\> $= 0$ : Ok.\\
                \>\>\>\>\> $> 0$ : Warning.\\
\newpagetabs
EXAMPLE OF USE\\
        \>      \{ \\
        \>\>    double \> {\fov points}[300];\\
        \>\>    double \> {\fov der10}[300];\\
        \>\>    double \> {\fov der01}[300];\\
        \>\>    double \> {\fov der11}[300];\\
        \>\>    int    \> {\fov im1} = 10;\\
        \>\>    int    \> {\fov im2} = 10;\\
        \>\>    int    \> {\fov idim} = 3;\\
        \>\>    int    \> {\fov ipar};\\
        \>\>    int    \> {\fov con1};\\
        \>\>    int    \> {\fov con2};\\
        \>\>    int    \> {\fov con3};\\
        \>\>    int    \> {\fov con4};\\
        \>\>    int    \> {\fov order1};\\
        \>\>    int    \> {\fov order2};\\
        \>\>    SISLSurf \> *{\fov rsurf};\\
        \>\>    int    \> {\fov jstat};\\
        \>\>    \ldots \\
        \>\>s1534(\begin{minipg4}
          {\fov points}, {\fov der10}, {\fov der01}, {\fov der11}, {\fov im1}, {\fov im2}, {\fov idim}, {\fov ipar}, {\fov con1}, {\fov con2}, {\fov con3},
          {\fov con4}, {\fov order1},  {\fov order2}, \&{\fov rsurf}, \&{\fov jstat});
        \end{minipg4}\\
        \>\>    \ldots \\
        \>      \}
\end{tabbing}
