RE: [Algorithms] Spline Surface Extremal Points ?
Brought to you by:
vexxed72
From: Steve W. <Ste...@im...> - 2000-08-29 15:49:24
|
Well, I didn't think the original poster wanted to get into a discussion like this, but now you made me take out my calculus book :) An extrema of a function F(x,y,z,...n) will be where the first derivative is zero F' = 0 AND the product of the partial derivatives minus the square of the sum of the partial derivatives is greater than zero. Reference: Calculus with analytic geometry, Earl W. Swokowski. If you twist a graph around then you also change the function....if it's not a function then there will be some set of coordinates where F(x,y,z,...n) can be two or more different values and is not a function and will not be usefull for much of anything especially in 3D graphics...ie...player KamaKazi could be in two places at the same time. However, sometimes you can change the coordinate system to develop a function which will give you a means to find extrema. For example, a sphere can not be described by a function in cartesian coordinates, but we can use polar coordinates to give us a function for which we could find extrema. I guess my point is that life will find a way...no wait that's from Jurassic Park...I guess I don't have any point. Rockn-Roll > -----Original Message----- > From: Dave Eberly [mailto:eb...@ma...] > Sent: Monday, August 28, 2000 8:04 PM > To: gda...@li... > Subject: Re: [Algorithms] Spline Surface Extremal Points ? > > > From: "Steve Wood" <Ste...@im...> > > I don't know anything about spline patches...but extrema is > defined as the > > point where the the slope of the tangent=0 AND the slope of > the tangent to > > the left of that point is the opposite sign from the slope > of the tangent > to > > the right of that point...ie...it's not an inflection point. > > Your definition is for the graph of a function y = f(x). A > local maximum > occurs at x0 if f'(x0) = 0 and f"(x0) < 0. Unfortunately > these extrema > are tied into the coordinate system. Consider f(x) = 1-x^2 > for |x| <= 1. > The local maximum occurs at x = 0. Now rotate the curve > (x,f(x)) about > the origin a small amount (so that no tangent line becomes vertical). > The new curve is a graph of another function, but the local maximum > for it is not at the same point as in the original coordinate system. > > For a graph z = (x,y,f(x,y)), a local maximum occurs at (x0,y0) if > Gradient(f)(x0,y0) = (0,0) and Hessian(f)(x0,y0) is a negative > definite matrix. Just as in the one dimensional case, if the graph > has no vertical tangents, and if you rotate the graph a small amount > so that you still have no vertical tangents, the new surface is a > graph of another function, but the local maxima are not at the > same location as in the original coordinate system. > > If the original poster has a coordinate system in mind for the > surface, then the definition above will locate the extremal > points. But if the idea is to find some "intrinsic" extrema, > for example, the vertices of an ellipsoid that do not change > with orientation of the ellipsoid, you need a different concept > for extremum. The usual ones involve measuring principal > curvatures and deriving some scalar function from them, then > applying the definition mentioned above for finding extrema > of that function. This approach is what is used for defining > "ridges" (curves of extreme points) on a surface. > > -- > Dave Eberly > eb...@ma... > http://www.magic-software.com > > > _______________________________________________ > GDAlgorithms-list mailing list > GDA...@li... > http://lists.sourceforge.net/mailman/listinfo/gdalgorithms-list > |