Page 217 - Geometric Modeling and Algebraic Geometry
P. 217
220 M. Shalaby and B. J¨uttler
Algorithm 2 Approximate implicitization by generalized cylinders
Input A parametric space curve C or a set of sampled points p i.
Output An implicit representation of the given space curve as the intersection of two gener-
alized cylinders.
1: Project the parametric space curve C (the points p i) orthogonally into two orthogonal
planes (e.g. xy-plane and xz-plane).
2: Apply an approximate implicitization method to the data in xy-plane and xz-plane. Let
the bivariate functions f(x, y) and g(x, z) define the implicit curves in xy-plane and xz-
plane respectively.
3: Define the two generalized cylinders by the polynomials f(x, y) and g(x, y) respectively.
4: Represent the curve C(x, y, z) as the intersection of the two generalized cylinders f(x, y)
and g(x, z).
Example 5. The left plot in Figure 12.4 (see page 222) shows a space curve (white)
which is represented as the intersection of two generalized cylinders Z(f) (black)
and Z(g) (grey), where f = f(x, y) and g = g(x, z).
12.3.3 Approximately orthogonal representation
Our method for generating an approximate implicitization by two approximately
orthogonal surfaces is based on the following simple observation.
Lemma 6. At all regular points x ∈ C(f, g), the gradients of the two functions
F(x)= &∇f(x)& g(x)+ &∇g(x)& f(x) (12.9)
G(x)= &∇f(x)& g(x) −&∇g(x)& f(x) (12.10)
are orthogonal.
This observation can be verified by a direct computation.
Remark 7. This result cannot be used at points where the two original surfaces in-
tersect each other tangentially. In the case of two generalized cylinders produced by
Algorithm 2, this happens only if the curve C has a tangent which lies in a plane that
is perpendicular to both projection planes. One may easily choose the two projection
planes such that this is not the case.
Clearly, even if the function f and g are piecewise polynomials, neither F nor G
are piecewise polynomials in general. We propose to approximate them by piecewise
polynomials, as follows.
The functions &∇f& and &∇g& depend on x, y and x, z respectively. We would
¯
g
like to approximate them by two piecewise polynomials f(x, y) and ¯(x, z) in the
area of interest, which is the region near the zero contours of the functions f and g.
(See [9] for more information and references on surface fitting.) The two approxi-
mating functions are to minimize