<!--#set var="name" value="Written Exercise 2" -->
<!--#include virtual="header.html" -->
<!--
<head><title>COS 526, Fall 2006: Written Exercise 2</title></head>
<body bgcolor="#ffffff" text="#000000">
<center><h2>COS 526 - Advanced Computer Graphics</h2></center>
-->


<h2>Written Exercise 2</h2>
<b>Due Tuesday, Oct. 24</b>

<ol>
<li> As we saw, a single cubic B&eacute;zier curve can be defined as
<center>
Q(t) = b<sub>0</sub>(t) P<sub>0</sub> + b<sub>1</sub>(t) P<sub>1</sub> +
b<sub>2</sub>(t) P<sub>2</sub> + b<sub>3</sub>(t) P<sub>3</sub>
</center>
where the P<sub>i</sub> are the control points and the b<sub>i</sub>(t) are
the Bernstein polynomials.
<ol type=a>
<li> Extend this definition to a bicubic B&eacute;zier patch.  That is, write
down the equation for Q(s,t) in terms of the Bernstein polynomials and the
sixteen control points P<sub>ij</sub>, i=0..3, j=0..3.
<li> How would you go about computing the surface normal at an arbitrary point
on a B&eacute;zier patch?  That is, given some s and t, find the surface normal
at Q(s,t).  (Explain how you would derive the answer - it is not necessary to
write out the full expression explicitly.)
</ol>
<li> What is the degree of continuity at an interior point of an
<i>n</i>th-order B-spline patch?  What is the degree of continuity
at a point on the boundary between two such B-spline patches?
<li> Show that a quadratic <i>rational</i> B&eacute;zier curve in
the plane can generate arbitrary conic sections (i.e.,
arcs of an arbitrary curve of the form
Ax<sup>2</sup> + Bxy + Cy<sup>2</sup> + Dx + Ey + F = 0).
Short proofs preferred!
<li> The basic operation in hierarchical frustum culling is testing whether
some primitive shape lies completely inside, lies completely outside, or
crosses the view frustum.  Describe how to perform this test for (a) a sphere
and (b) an AABB (axis-aligned bounding box).  Assume the equations for the
planes that make up the view frustum are given.
</ol>

<p>
<h3> Submitting </h3>
<p>
Please submit the answers to these questions in writing, or in an email to
<tt>funk@cs.princeton.edu</tt>, with "CS526" in the subject line.
Acrobat pdf files are preferred.
<p>
Please see the <a href="assignments.html#submitting">general
notes on submitting your assignments</a>, as well as the
<a href="assignments.html#late">late policy</a> and the
<a href="assignments.html#collaboration">collaboration policy</a>.


<!--#include virtual="footer.html" -->







