POV-Ray : Newsgroups : povray.general : isosurface function conversion : Re: isosurface function conversion Server Time
30 Jul 2024 12:19:42 EDT (-0400)
  Re: isosurface function conversion  
From: [GDS|Entropy]
Date: 8 Feb 2009 19:13:53
Message: <498f7541$1@news.povray.org>
I appreciate the effort, but only the isosurfaces are troubling me. ;-)
I've replaced the noise3d with f_noise3d, played with values etc.., but 
alas, no joy.

I think it must be changes in implementation of noise3d...maybe........I 
don't know what I'm talking about. ;-p

All I know, is those isos used to work way back when I made the file.

*~*

Thanks,
ian

"Alain" <ele### [at] netscapenet> wrote in message 
news:498f5df2$1@news.povray.org...
> [GDS|Entropy] nous illumina en ce 2009-02-08 05:46 -->
>> Greetings,
>>
>> Going through my old files, I found an isosurface that I used to produce 
>> a very interesting shape in an old version of MegaPov I think, but using 
>> the functions.inc and f_noise3d I get literally nothing. I've tried 
>> installing old versions of pov and megapov, but I can't seem to locate 
>> the correct one, maybe someone will recognize the syntax and be able to 
>> convert the following:
>>
>> #declare GridCubeOn = true;
>> #declare use_photons = false;
>>
>> #if (GridCubeOn)
>> #declare Foo =
>>  function {(noise3d(8*x, 12*y, .01)*noise3d(12*x, .01, 8*z)*noise3d(.01, 
>> 8*y, 12*z))/3}
>> #declare Foo1 =
>>       function {noise3d(8*x, 12*y, .01)/3*noise3d(12*x, 8*y, 
>> .01)/3*noise3d(8*y, 12*z, .01)/3}
>> #declare Foo2 =
>>  function {noise3d(8*x, 12*y, .01)/3*noise3d(12*x, 8*y, 
>> .01)/3*noise3d(8*y, 12*z, .01)/3}
>>
>> #declare GridCube =
>>  isosurface {
>>   function {
>>    Foo
>>    }
>>    threshold 0.0001
>>    scale 1.6
>>    bounded_by {
>>     box {
>>      -4, 4
>>      }
>>     }
>>     texture {
>>      pigment {color rgb 0}
>>     }
>>      #if (use_photons)
>>      photons {
>>       separation 0.02*phd
>>       #if(refl)
>>       reflection on
>>       #end
>>       ignore_photons
>>       }
>>       #end
>>      }
>>
>> #declare GridCube1 =
>>  isosurface {
>>   function {
>>    Foo1
>>    }
>>    threshold 0.0001
>>    scale 1.6
>>    bounded_by {
>>     box {
>>      -4, 4
>>      }
>>     }
>>     texture {
>>      pigment {color rgb 0}
>>      }
>>      #if (use_photons)
>>      photons {
>>       separation 0.02*phd
>>       #if(refl)
>>       reflection on
>>       #end
>>       ignore_photons
>>       }
>>       #end
>>      }
>>
>> #declare GridCube2 =
>>  isosurface {
>>   function {
>>    Foo2
>>    }
>>    threshold 0.0001
>>    scale 1.6
>>    bounded_by {
>>     box {
>>      -4, 4
>>      }
>>     }
>>     texture {
>>      pigment {color rgb 0}
>>     }
>>      #if (use_photons)
>>      photons {
>>       separation 0.02*phd
>>       #if(refl)
>>       reflection on
>>       #end
>>       ignore_photons
>>       }
>>       #end
>>       rotate 90*y
>>      }
>>
>> object {
>>  GridCube
>>   scale 1000
>>   translate <0,0,5000>
>>   }
>>
>> object {
>>  GridCube1
>>   scale 1000
>>   translate <2000,0,5000>
>>   }
>>
>> object {
>>  GridCube2
>>   scale 1000
>>   translate <-2000,0,5000>
>>   }
>>
>> #debug "\nFinished Parse Of GridCube:"
>> #end
> I can't help you for your function.
>
> I can help with the pfotons part:
> Remove the photons from the finish. Add a photons{} block to the object.
>
> The photons block should be:
> photons{target reflection on}
>
> Just the abcence of a photons block prevent the shootong of photons toward 
> the object.
>
>
> You also need this in the global_settings:
> #if(use_photons)photons{spacing 0.02*phd autostop 0}#end
>
> The presence of a photons block in the light_source is optional only 
> needed if you want to sidable all or some of the photons treatment from 
> that light_source.
>
> -- 
> Alain
> -------------------------------------------------
> You know you've been raytracing too long when you can describe in perfect, 
> legal, pov syntax, how to re-create everything in your computer room using 
> primitives and csg operations.
> fish-head
>


Post a reply to this message

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