# comp.graphics.algorithms

## Subject: Re: Offset Faces

Abhinav.S.C wrote:
> Oops!! Sorry if that was a bit blunt. :)
> Okay, what I meant to say is that one can expect only a certain amount
> of complexity in surfaces designed using a solid modelling software.

And until you can flesh this out to state *what* amount of complexity
that'll be, we're getting nowhere.

> Like for example no engineer would try contructing a Mandelbrot plot.

They might not be trying to --- but they may still end with a
principally unlimited class of surfaces, depending on how powerful
that solid model editor actually is. If you don't believe mount
Mandelbrot is a viable example, try to find out how to *generally*
classify the offset surface of a fully generic screw, in any other way
than by just saying it's an offset surface of a screw.

> I would like to know your thoughts on the kind of algorithms one can
> develop for checking whether two surfaces are offset or not.

Unless you restrict the class of surfaces, algorithm design is out of
the question. No practical algorithm can ever possibly do that job
correctly. The only one that could would be this close relative of
"bogosort", which really quite impractical:

pick a point on the presumed offset surface, at random
find its nearest distance to the other surface
if this distance differs from the usual result, terminate
restart at the beginning

If this algorithm terminates, the assumed offset surface isn't one.
But if it is indeed an offset surface, you'll never know, because the
algorithm will never stop. Bummer ;->

> Lets assume the two surfaces can be expressed by explicit equation
> by parametric equations x = f(u,v), y = g(u,v), z = h(u,v). u, v go
> from some constants m to n.

That's not an assumption --- that's a truism for anything your
modellers would care to call a surface, known as the "theorem on
implicit functions". In other words, it doesn't tell us anything we

--
Hans-Bernhard Broeker (broeker@physik.rwth-aachen.de)
Even if all the snow were burnt, ashes would remain.