POV-Ray : Newsgroups : povray.binaries.scene-files : Isosurface Asteroids macro "IsoRoids.pov" Server Time
1 Sep 2024 16:17:06 EDT (-0400)
  Isosurface Asteroids macro "IsoRoids.pov" (Message 1 to 2 of 2)  
From: Bryan Valencia
Subject: Isosurface Asteroids macro "IsoRoids.pov"
Date: 3 Oct 2004 11:45:40
Message: <41601ea4@news.povray.org>
This is very simple, but it just worked so well.  It will render by itself, 
showing it's parameters, or you can #include it into your scene.

Pass in any real number to use as a random seed.

---

#include "functions.inc"
#macro IsoRoid(s)
 #declare R=seed(s);

 #declare SmallAmplitude=rand(R)/10+.1;
 #declare SmallFrequency=rand(R)*5+4;
 #declare BigAmplitude=rand(R)/3+0.5;
 #declare BigFrequency=rand(R)+1;

 union{
 isosurface{
    function {
     f_sphere(x, y, z, 1.6)
     - f_noise3d(x * SmallFrequency, y * SmallFrequency, z * SmallFrequency) 
* SmallAmplitude
     + f_noise3d(x * BigFrequency, y * BigFrequency, z * BigFrequency) * 
BigAmplitude
    }
 max_gradient 10
 contained_by { box { -3, 3 } }
 pigment{color rgb 1}
 scale rand(R)+.4
  }

#ifndef(White)
 text{ttf "Arial.ttf" concat("Small F",str(SmallFrequency,8,3)," 
A",str(SmallAmplitude,8,3)) 0.01,0
  scale .4
  translate <-2,-3,0>
  pigment{color rgb<0,1,0>}
  finish{ambient 1}
 }

 text{ttf "Arial.ttf" concat("Big F",str(BigFrequency,8,3)," 
A",str(BigAmplitude,8,3)) 0.01,0
  scale .4
  translate <-2,-3.5,0>
  pigment{color rgb<1,0,0>}
  finish{ambient 1}
 }
#end
}

 #end

#ifndef(White)

 #declare A=-3;
 #declare Ast=seed(1);
 #while (A<=3)
  #declare Place=<A*6,7,0>;
  object{IsoRoid(A) translate Place}

  #declare Place=<A*6,0,0>;
  object{IsoRoid(A+10) translate Place}

  #declare Place=<A*6,-7,0>;
  object{IsoRoid(A+20) translate Place}


  #declare A=A+1;
 #end

 light_source{<-1,1,-1>*100 color rgb 1}
 camera{
  location<0,0,-30> look_at<0,0,0>
  up y*.9
  right x*1.6
 }
#end


Post a reply to this message

From: Shurakai
Subject: Re: Isosurface Asteroids macro "IsoRoids.pov"
Date: 4 Oct 2004 05:35:00
Message: <web.41611829e3ebc7636b3522e90@news.povray.org>
"Bryan Valencia" <bry### [at] 209softwarecom> wrote:
> This is very simple, but it just worked so well.  It will render by itself,
> showing it's parameters, or you can #include it into your scene.
>

Nice litte tool, :)). I think i'll use it for. Thanks for providing it. Keep
going that way.

Shu.


Post a reply to this message

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