garl@nlm-mcs.ARPA (Gary Letourneau) (04/24/86)
I am beginning some work on graphing 2-d and 3-d curves and surfaces and I have run across the following problem: If given an equation of a 3-dimensional surface in the form f(x, y, z) = ... and a range of values for x, y, and z x1 < x < x2 y1 < y < y2 z1 < z < z2 is there an algorith for determining the parametric equations for the same surface fx(t) = ... fy(t) = ... fz(t) = ... where 0 <= t <= 1 In short, is there an algorithmic way of generating parametric equations from nonparametric ones? I would appreciate any pointers, ideas, program code, etc. that anyone would post. Thanks in advance, Gary Letourneau letourneau@nlm-mcs
majka@ubc-vision.UUCP (Marc Majka) (04/28/86)
The problem of finding parametric equations for a surface relies upon being able to parameterize the surface. A parameter, or more generally a set of parameters form a new coordinate system in which you hope that the description of the surface will be simple. It is very difficult to find such a coordinate system for a general surface. For a curve (or a section of a curve) the solution is easy: the parameter has an initial value at an end point of the curve, and a unique path along which its value changes. Trying to extend this idea to surfaces lands one immediatly in deep water. Where do the parameters have zero value (i.e. the origin of the new coordinate system), and which way do they go? The choices get very arbitrary. There are "local" solutions which work well. By "local", I mean that for any point on the surface, a coordinate system exists with that point at the origin. A good example is Riemannian normal coordinates (RNC), which essentially are "polar" coordinates around that origin, with "directions" and "lengths" based on the geodesics (shortest-path curves) at that point. Trouble is, there just are no good natural coordinate systems like RNC with a global characterization. You may be able to construct a principled way (read algorithm) of making some arbitrary choices for some domain of intrest, but you may end up with artifacts and secondary problems that are painful. Even then, you still will not be sure that your new coordinate system will afford a "good" parameterization of the surface. Grains of salt to be taken with this posting: 1) I am talking about a very general notion of surfaces. You may find easy solutions for special cases. 2) For those of you with a background in Differential Geometry: please excuse my cavalier use of terminology. I am trying to make this simple. --- Marc Majka
ken@turtlevax.UUCP (Ken Turkowski) (04/29/86)
In article <1450@nlm-mcs.ARPA> garl@nlm-mcs.ARPA (Gary Letourneau) writes: > If given an equation of a 3-dimensional surface in the form > f(x, y, z) = ... > and a range of values for x, y, and z > x1 < x < x2, y1 < y < y2, z1 < z < z2 > is there an algorith for determining the parametric equations for the > same surface > fx(t) = ... , fy(t) = ... , fz(t) = ... , 0 <= t <= 1 First, you'll never get a full surface from a univariate function; you need two variables: fx(u,v), fy(u,v), fz(u,v), 0 <= u <= 1, 0 <= v <= 1 Otherwise, you'll get a curve instead of a surface. -- Ken Turkowski @ CIMLINC, Menlo Park, CA UUCP: {amd,decwrl,hplabs,seismo}!turtlevax!ken ARPA: turtlevax!ken@DECWRL.DEC.COM
acm@ucla-cs.ARPA (Assoc for Computing Machinery ) (04/30/86)
An excellent book that covers the mathematical representations of parametric curves, surfaces, and solid plus their generation from non-parametric objects is one entitled _Geometric Modeling_ by Michael E. Mortenson from John Wiley & Sons (1985). You should find everything you need in there plus more about the analytical properties of these objects, transformations, and some information on solid modeling. David E. Lee UCLA ACM Chairman