POV-Ray : Newsgroups : povray.newusers : isosurface problem : Re: isosurface problem Server Time
5 Sep 2024 02:14:12 EDT (-0400)
  Re: isosurface problem  
From: pete
Date: 4 Feb 2002 00:25:24
Message: <3c5e1b44$1@news.povray.org>
>   From: "R. Suzuki" <r-s### [at] aistgojp>

> Try the below code.
> Is this what you want?

Absolutely, it does just what I was trying to do! Thanks!

Still, I would like to understand why your version
works and mine doesn't.

[...]
>        f_vcrossmag(vx,vy,vz,x,y,z) / pow(f_r(x,y,z),3)

Aha, so there is a provided vlength function, f_r(). Good!

[...]
>isosurface { function {
>               max(-1,
>                   -(f_bfield(x,y,z,velx,vely,velz) - 6)
>               )
>                  }

I admit I don't get this at all.

I notice I can take the max() part out (is it some kind of
error trap?), leaving the function definition as just

       -(f_bfield(x,y,z,velx,vely,velz) - 6)

and I can change this to

        6 - f_bfield(x,y,z,velx,vely,velz)

and it still works. But

        f_bfield(x,y,z,velx,vely,velz) - 6

(as in my original) doesn't work.

I thought that the surface would be drawn where the function becomes
zero, but then if 6 - f_bfield() is zero then f_bfield() - 6 should be
zero too! So I don't understand why this change makes such a
huge difference.
 
[...]
>        evaluate 10,1.1,0.99

I'll have to look this one up in the docs, too, since it sounds
fundamental, and I've no idea what it's doing!

Many thanks for the speedy and very helpful reply.

- Pete.


Post a reply to this message

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