Path: utzoo!mnetor!uunet!lll-winken!lll-lcc!ames!mailrus!umix!utah-gr!jcobb From: jcobb@utah-gr.UUCP (Jim Cobb) Newsgroups: comp.graphics Subject: Re: Defining a sphere with Bezier patches Message-ID: <2424@utah-gr.UUCP> Date: 1 Apr 88 21:20:15 GMT References: <2390@saturn.ucsc.edu> <1632@pixar.UUCP> <1639@pixar.UUCP> <3183@csli.STANFORD.EDU> <2552@saturn.ucsc.edu> Reply-To: jcobb@gr.utah.edu.UUCP (Jim Cobb) Organization: University of Utah CS Dept Lines: 35 Keywords: sphere, Bezier, REYES It is impossible to exactly parametrize a sphere with polynomial patches. I will describe here a simple rational quadratic Bezier patch that IS exact. This patch covers an octant of the sphere. Let sq = sqrt(2)/2. Define homogeneous control points P_ij as P_00 = [ 0 0 -1 1 ] P_01 = [ sq 0 -sq sq ] P_02 = [ 1 0 0 1 ] P_10 = [ 0 0 -sq sq ] P_11 = [ 0.5 0.5 -0.5 0.5 ] P_12 = [ sq sq 0 sq ] P_20 = [ 0 0 -1 1 ] P_21 = [ 0 sq -sq sq ] P_22 = [ 0 1 0 1 ] A note about the interpretation of these coefficients: There are two conflicting conventions for the meaning of control points for a rational Bezier curve or surface. I am using the convention that denotes the components of the points as [ X Y Z W ], with resulting surface evaluation given by sum [X_ij Y_ij Z_ij] theta_i(u) theta_j(v) S( u, v ) = ------------------------------------------ sum W_ij theta_i(u) theta_j(v) There is a slight problem with this parametrization: the patch is degenerate along one of its edges (an entire edge curve collapses into a single point). There are alternative schemes to avoid this difficulty, and there are ways of dealing with the degeneracy (see Faux & Pratt p. 235 ff.). Jim