Envelopes – Computational Theory and Applications
Total Page:16
File Type:pdf, Size:1020Kb
Envelopes – Computational Theory and Applications Category: survey Abstract for points, whose tangent plane maps to a line un- der the projection. These points form the so-called Based on classical geometric concepts we discuss contour of the surface with respect to the given the computational geometry of envelopes. The projection; the image of the contour is the silhou- main focus is on envelopes of planes and natural ette. Since the tangent t at a point p of the silhou- quadrics. There, it turns out that projective duality ette is the projection of the tangent plane at a sur- and sphere geometry are powerful tools for devel- face point, both the u-curve and the v-curve passing oping efficient algorithms. The general concepts through p have t as tangent there. This shows the are illustrated at hand of applications in geometric envelope property. Points on the envelope are also modeling. Those include the design and NURBS called characteristic points. representation of developable surfaces, canal sur- faces and offsets. Moreover, we present applica- X c tions in NC machining, geometrical optics, geo- v metric tolerancing and error analysis in CAD con- structions. Keywords: envelope, duality, sphere geometry, NURBS surface, developable surface, canal sur- face, geometric tolerancing. s 1 Introduction p 2 Definition and computa- Figure 1: The silhouette of a surface as envelope of tion of envelopes the projections of the parameter lines 2.1 First order analysis For an analytic representation we note that the tangent plane of the surface is spanned by the tan- We will define and discuss envelopes at hand of a gent vectors to the parameter lines, which are the spatial interpretation. Let us first illustrate this ap- partial derivatives with respect to u and v, proach with a simple special case. Consider a sur- ∂ ∂ face in Euclidean 3-space R3, which has the regular X X ∂ =: Xu, ∂ =: Xv. parameterization u v Under the normal projection onto the plane x3 = 0, X(u,v)=(x1(u,v),x2(u,v),x3(u,v)). the tangent plane has a line as image iff it is par- allel to the x -axis. In other words, the projections Here and in the sequel, we always assume suffi- 3 xu,xv of the two vectors Xu,Xv must be linearly de- cient differentiability. The curves u = const and pendent, i.e., v = const form two one-parameter families of curves (‘parameter lines’) on the surface. Under x1,u x2,u det(xu,xv)= 0 ⇐⇒ = 0. (1) a projection, e.g. the normal projection onto the x1 v x2 v , , plane x3 = 0, each family of parameter lines is mapped onto a one-parameter set of planar curves. The computation of the silhouette (envelope) s The envelope of each of these two curve families is therefore equivalent to finding the zero set of is the silhouette s of the surface X (see Fig.1). It a bivariate function. This is done with a stan- is defined as follows: On the surface X, we search dard contouring algorithm, a special case of a surface/surface intersection algorithm (see [21]). The ui are the parameters of the n-dimensional sur- Let us recall that (1) characterizes the envelope faces and the λk are the set parameters. We inter- of two curve families, described by x(u,v) = pret this set of surfaces as normal projection of a k+n+1 d (x1(u,v),x2(u,v)): the set of u-lines (where u is the hypersurface Φ in R onto R (xd+1 = ... = curve parameter and v is the set parameter) and the xk+n+1 = 0). At any point of Φ, the tangent hyper- set of v-lines (where v is the curve parameter and u plane is spanned by the partial derivatives with re- is the set parameter). spect to u1,...,un,λ1,...,λk. Their projections are Given any one-parameter set of curves in the the partial derivatives of f . At a point of the sil- plane with a parametric representation x(u,v), we houette (= envelope), these derivative vectors must can interpret it as projection of a surface onto that span at most a hyperplane in Rd. This yields the plane; it is sufficient to set x3(u,v)= v. If the curve envelope condition family is given in implicit form, ∂ f ∂ f ∂ f ∂ f rank( ,..., , ,..., ) < d. (4) ∂u1 ∂un ∂λ1 ∂λk f (x1,x2,v)= 0, It characterizes points on the envelope by a rank we interpret it again as projection of a surface with deficiency of the Jacobian matrix of f . the level curves f (x1,x2,v)= 0 in the planes x3 = v. Analogously, we find the following known re- The tangent planes of this surface f (x1,x2,x3)= 0 sult. The envelope of a k-parameter set of hyper- are normal to the gradient vectors surfaces in Rd, analytically represented by λ λ ∂ f ∂ f ∂ f f (x1,...,xd, 1,..., k)= 0, (5) ∇ f =( , , ). ∂x1 ∂x2 ∂x3 is the solution of the system Hence, a tangent plane is projected onto a line iff f (x1,...,λk)= 0, (6) the gradient vector is normal to the x3-axis, i.e. ∂ f ∂ f (x1,...,λk)= 0,..., (x1,...,λk)= 0. ∂λ1 ∂λk ∂ f = 0. The envelope conditions elucidate the computa- ∂x 3 tional difficulties: we have to solve a nonlinear sys- We see that the silhouette (= envelope) is the solu- tem of equations. tion of the system (we set again x3 = v), In special cases, a variety of methods are avail- able. Let us give an important example. For a one- ∂ f parameter set of surfaces in R3 (n = 2,k = 1), equa- f (x ,x ,v)= 0, (x ,x ,v)= 0. (2) 1 2 ∂v 1 2 tion (4) can be formulated as ∂ ∂ ∂ This is a well-known result. Its computational f f f det(∂ , ∂ , ∂λ )= 0. treatment can follow our derivation: one has to u1 u2 1 compute a projection of the intersection of two Hence, we have to compute the zero set of a trivari- implicit surfaces (see [21]). An implicit rep- ate function, which can be done, for example, with resentation of the envelope follows by elimina- marching cubes [31]. The solution is the preim- tion of v from (1). A parametric representation age of the envelope in the parameter domain, and (x1(v),x2(v)) is obtained by solving for x1 and x2. application of f to it results in the envelope itself. By the spatial interpretation, various algorithms for For systems of polynomial or rational equations, computing silhouettes may also be applied [1, 21]. one can use algorithms which employ the subdi- With the understanding of this special case, it vision property of Bezier´ and NURBS representa- is straightforward to extend the results to the gen- tions [10, 25, 56]. In more general situations one eral case. It concerns envelopes of k-parameter sets realizes the lack of algorithms for geometric pro- of n-dimensional surfaces in Rd (n < d). We set cessing in higher dimensions. k + n ≥ d, since otherwise there is in general no envelope. 2.2 Singularities, curvature com- Let us start with the parametric representation in putation and approximation of the form envelopes λ λ (u1,...,un, 1,..., k) 7→ Let us continue with the special case of a one- d f (u1,...,un,λ1,...,λk) ∈ R . (3) parameter family of curves in the plane and its en- 2 velope, viewed as silhouette of a surface in R3. It also shows cusps at the curve of regression. They is well known in classical constructive geometry are additionally satisfying [6] that the silhouette of a surface possesses a cusp ∂3 if the projection ray is an osculating tangent at the f (x1,x2,x3,v)= 0. corresponding point of the contour. Therefore, the ∂v3 condition for cusps follows by expressing that the The transition to higher dimensions is straightfor- x3-parallel projection ray has contact of order two ward: A one-parameter family of hypersurfaces in with the surface. Rd, written as Let us work out this condition in case that the 3 curve family (surface in R ) is given in implicit f (x1,...,xd,v)= 0, 0 0 0 form f (x1,x2,v)= 0. We pick a point (x1,x2,v ) on the surface and express that the projection ray has an envelope hypersurface which also satisfies 0 0 0 R (x1,x2,v + t), t ∈ , has contact of order two ∂ f at this point. We use the Taylor expansion at (x1,...,xd,v)= 0. 0 0 0 ∂v (x1,x2,v ), On this envelope, we have a (d − 2)-dimensional f (x1,x2,v)= (7) surface of singular points characterized by ∂ ∂ ∂ f 0 f 0 f 0 2 (x1 − x1)+ (x2 − x2)+ (v − v )+ ∂ f ∂x1 ∂x2 ∂v (x ,...,x ,v)= 0. ∂ 2 1 d ∂2 ∂2 v 1 f 0 2 f 0 2 (x1 − x ) + ... + (v − v ) +(∗). 2 ∂x2 1 ∂v2 The singularities of this surface possess vanishing 1 third derivative of f , and so on. Clearly, the enve- Here, all partial derivatives are evaluated at lope and the singular sets need not be real. 0 0 0 (x1,x2,v ) and (*) denotes terms of order ≥ 3. In- For a reliable approximation of envelope serting v0 +t for v, we must get a threefold zero at curves/surfaces, the computation of singularities t = 0 in order to have second order contact. Using is an important subtask. More generally, we can 0 0 0 the fact that (x1,x2,v ) is a point on the contour, use results of constructive differential geometry to this requires in addition compute curvatures.