POV-Ray : Newsgroups : povray.programming : [Patch] Another radical idea -- isosurface function normals : [Patch] Isosurface function normal update Server Time
28 Jul 2024 20:19:30 EDT (-0400)
  [Patch] Isosurface function normal update  
From: Lummox JR
Date: 12 Jul 1999 01:51:50
Message: <3789828D.6EC2@aol.com>
The function-normal patch is alive and well. It had some weird bugs at
first, but all seems to be working now. The patch just includes support
for the normal calculation, though, and doesn't actually put it to any
use.
I've only applied the new normal calculation to the isoblob I've been
working on, as a test. Turns out, the isoblob wasn't working right at
all with the old isosurface-style method of finding a normal (I have no
clue why), but it works just fine with the new one. An example of the
difference is posted on povray.binaries.images -- just look for
"isoblob" and look for the two images I posted with cylinders and a
cube.
So far the normal calculation appears to be accurate and working just
great, including (it seems) for noise3d(). func3d(), for nested
functions, remains untested as yet, but I may try out something to see
if it works.

Two spots I had to fudge the normal in were noise3d(), the derivative of
which would be murder to calculate precisely even if I had a clue how,
and in evaluating a pre-defined function. The pre-defined isosurface
functions (sphere, helix, etc.) wouldn't be too hard to find normals
for, but I for one don't feel like altering those functions *and* their
basic syntax. Close approximation is good enough for them.
So, it seems like this was a good idea after all. Maybe sometime I'll
apply the normal calculation to isosurfaces and possibly parametric
surfaces, and see how that works out. I have a feeling it will be even
better than the results I've had with isoblobs, since the isoblob is
still in a very experimental (i.e. flaky) stage.

Lummox JR


Post a reply to this message

Copyright 2003-2023 Persistence of Vision Raytracer Pty. Ltd.