Graphics Reference
In-Depth Information
Figure 7.13.
Some boundary tracker cases.
one works here in parameter space rather than the corresponding points in 3-space.
Blinn refers to this tracking process as maintaining “edge trackers.” The questions
that need to be asked are: How are “edge trackers” defined? How do they get their
edges? How do edges appear/disappear?
To see how edges are created, assume that all the critical points and maxima and
minima of f have been found. Figure 7.13 shows some possible cases. The type of
edges that are created depends on the type of critical point. In case (a) we have a strict
local maximum. From that we get an elliptical intersection and two silhouette track-
ers. In case (b) we have an edge maximum with a parabolic intersection for two
boundary trackers. In case (c) there is a corner maximum that basically gives us a
linear intersection for two boundary trackers. In all these cases, initial (u,v) values
must be found. These are then updated using a Newton-Raphson method where pos-
sible. This works fine in case (c) using the corner as a starting point. In cases (a) and
(b) we cannot update with the Newton-Raphson method because the derivative van-
ishes. Instead, one uses the second derivative of f to locally approximate the level curve
of f at the next scan line by a parabola or ellipse. This approximation of the level
curve is used as an initial guess at (u,v).
Unfortunately, there are all kinds of things that can happen in the curved surface
case other than “standard” maxima and minima. Figure 7.14 shows a “folded edge.”
This is detected by checking the sign of the z- component of the normal, denoted by
n z , of each boundary tracker. If it changes from one scan line to the next, then we
have this case. What we have to do is to create a new silhouette tracker using the z-
coordinate of the boundary edge tracker as an initial guess. Figure 7.15 shows a saddle
point. Such points cause the creation of a new silhouette tracker.
When it comes to deleting edge trackers, there are two events for which we have
to watch:
(a) when passing a local minimum or
(b) when a silhouette leaves at a boundary.
Search WWH ::




Custom Search