\documentstyle[11pt]{article}
\begin{document}
\section*{Chapter 9 Solutions}
\begin{flushleft}
9.1 $(m+1)^3$

\medskip
10.3 As $u$ varies over $(a,b)$, $v=\frac{u-a}{b-a}$ varies over $(0,1)$.
Substiuting into the polynomial $p(u)=\sum_{k=0}^nc_ku^k$, we have
$q(v)=\sum_{i=0}^vd_iv^i=\sum_{k=0}^nc_k((b-a)v+a)^k.$ We can expand the
products on the right and match powers of $v$ to obtain $\{d_i\}$.

10.5 Consider the Berstein polynomial
$$ b_{kd}(u)=\left( \begin{array}{c}d\\k \end{array}\right)u^k(1-u)^{d-k}.$$
For $k=0$ or $k=d$, the maximum value of 1 is at one end of the interval (0,1)
and the minum is at the other because all the zeros are at 1 or 0. For
other values of $k$, the polynomial is 0 at both ends of the interval
and we can differentiate to find that the maximum is at $u=k/d.$ Substituting
into the polynomial, the maximum value is $\frac{d!}{d^d}\frac{k^k}{k!}
\frac{(d-k)^{d-k}}{(d-k)!}$ which is always between 0 and 1.

\medskip
10.7 Proceeding as on page 374, we have the interpolating control
point array ${\bf q}$ and can form the interpolating polynomial
$$p(u)={\bf u}^T{\bf M}_I{\bf q},$$
where ${\bf M}_I$ is the interpolating geometry matrix.
This polynomial can also be written as a Bezier polynomial
$$p(u)={\bf u}^T{\bf M}_B{\bf p},$$
for properly chosen control points ${\bf p}.$ If these representations
are to yield the same polynomial, we must have
$${\bf p}={\bf M}_B^{-1}{\bf M}_I{\bf q}.$$
Thus, we find the correct control points to convert the interpolating
polynomial to an equivalent Bezier polynomial and then use our 
abiliuty to render Bezier polynomials efficiently.

\medskip
10.9 If we have two patches that share an edge and subdivide only the patch on one
side of this edge, we can create a crack. The middle shared endpoint on
the subdivided patch does not have to lie on original edge. We can either
create an extra triangle from the original endpoints and this middle point
to fill the crack or we can triangulate the unsubdivided patch to meet the
new subdivided edge, i.e. we rplace the unsubdivided patch by a set of
triangles that use three of the edges of the patch and the subdivided edge.

\medskip
10.11 Although the curves are continuous, when we have only $G^1$ continuity,
there is a discontinuity in the velocity at which we trace the curve. In
an animation we might see changes in velocity as objects move along paths
described with only $G^1$ continuity.

\medskip
10.13 One simple test is to use the {\em twist} (page 361). Suppose the
four corners of the patch are given by ${\bf p}_{00}$, ${\bf p}_{01}$,
${\bf p}_{10}$, and ${\bf p}_{11}$. These points form a quadrilateral
that will be flat if ${\bf p}_{00}-{\bf p}_{01}+{\bf p}_{10}-{\bf p}_{11}$
is zero. A simple test of flatness is to measure the magnitude of this term.

\medskip
10.15 For $r=0$ we get the line between $P_0$ and $P_2$. For $r=\frac{1}{2}$
we get the parabola $u^2P_0+2u(1-u)P_1+(1-u)^2P_2$ which passes through
$P_0$ and $P_2$. For $r>\frac{1}{2}$, we obtain hyperbolas, and for
$r<\frac{1}{2}$, we obtain ellipses. Thus, we can use NURBSs 
to obtain both parametric polynomial curves and surfaces, and to obtain
quadric surfaces.

\medskip
10.17 We can write the Hermite surface as
$${\bf p}(u,v)={\bf u}^T{\bf M}_H{\bf QM}_H^T{\bf v}=
{\bf u}^T{\bf A}{\bf v},$$
where ${\bf Q}$ contains the control point data and ${\bf M}_H$ is
the Hermite gfeometry matrix. If evaluate ${\bf p}$,
$\frac{\partial {\bf p}}{\partial u}$, $\frac{\partial {\bf p}}{\partial v}$, 
and $\frac{\partial^2 {\bf p}}{\partial u \partial v}$ at the corners we find that
the 16 values in the matrix ${\bf A}$ are the 4 values at the
4 corners of the patch, the first partial derivatives $\frac{\partial {\bf p}}
{\partial v}$ and $\frac{\partial {\bf p}}{\partial u}$ at the corners
and the first mixed partial derivative $\frac{\partial^2 {\bf p}}{\partial u
\partial v}$ at the corners
\end{flushleft}
\end{document}
