 |
 |
|
 |
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
I need to create turbulated pattern with amount of turbulence
dynamically changing, at the center of some circle I need zero
turbulence and at some distance from center I need turbulence 1.
Ideal will be some way to get turbulence value at some point from
another pattern.
Any way to do this? Or I will require coding?
Regards
Disnel
Post a reply to this message
|
 |
|  |
|  |
|
 |
From: Christoph Hormann
Subject: Re: Any way to create variable turbulence?
Date: 22 Mar 2001 09:21:12
Message: <3ABA0A53.C3C249F8@gmx.de>
|
|
 |
|  |
|  |
|
 |
Disnel wrote:
>
> I need to create turbulated pattern with amount of turbulence
> dynamically changing, at the center of some circle I need zero
> turbulence and at some distance from center I need turbulence 1.
>
> Ideal will be some way to get turbulence value at some point from
> another pattern.
>
> Any way to do this? Or I will require coding?
>
You can use a pigment_map, something like:
pigment {
spherical
pigment_map {
[0.0 bozo turbulence 1.0 ]
[1.0 bozo turbulence 0.0 ]
}
}
Maybe use more pigment map entries with a while loop.
Rune has some examples for this technique on his site:
http://rsj.mobilixnet.dk/3d/goodies/goodies.html
Christoph
--
Christoph Hormann <chr### [at] gmx de>
IsoWood include, radiosity tutorial, TransSkin and other
things on: http://www.schunter.etc.tu-bs.de/~chris/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
> You can use a pigment_map, something like:
>
> pigment {
> spherical
> pigment_map {
> [0.0 bozo turbulence 1.0 ]
> [1.0 bozo turbulence 0.0 ]
> }
> }
>
> Maybe use more pigment map entries with a while loop.
>
I need it for curving rays from some point, at the point they should be
straight and at greater distance they should be randomly curved. When I
will use your pigment_map they will be chopped.
Disnel
Post a reply to this message
|
 |
|  |
|  |
|
 |
From: Christoph Hormann
Subject: Re: Any way to create variable turbulence?
Date: 22 Mar 2001 11:34:09
Message: <3ABA2982.B7265C7@gmx.de>
|
|
 |
|  |
|  |
|
 |
Disnel wrote:
>
> > You can use a pigment_map, something like:
> >
> > pigment {
> > spherical
> > pigment_map {
> > [0.0 bozo turbulence 1.0 ]
> > [1.0 bozo turbulence 0.0 ]
> > }
> > }
> >
> > Maybe use more pigment map entries with a while loop.
> >
> I need it for curving rays from some point, at the point they should be
> straight and at greater distance they should be randomly curved. When I
> will use your pigment_map they will be chopped.
>
I don't really understand what you want to do, but the construction i
suggested makes a perfectly smooth pigment if you use a smooth color map.
Christoph
--
Christoph Hormann <chr### [at] gmx de>
IsoWood include, radiosity tutorial, TransSkin and other
things on: http://www.schunter.etc.tu-bs.de/~chris/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Image descripbin the problem sent to p.b.i
Post a reply to this message
|
 |
|  |
|  |
|
 |
From: Christoph Hormann
Subject: Re: Any way to create variable turbulence?
Date: 22 Mar 2001 11:46:35
Message: <3ABA2C69.5B4437AB@gmx.de>
|
|
 |
|  |
|  |
|
 |
Disnel wrote:
>
> Image descripbin the problem sent to p.b.i
Seen it, just use more pigment map entries with a while loop like i
suggested:
pigment {
spherical
pigment_map {
#declare Inx=0.0;
#while (Inx<=1.0)
[Inx bozo turbulence 1.0-Inx ]
#declare Inx=Inx+0.03;
#end
}
}
Of course you can only use up to 255 entries right now.
Christoph
--
Christoph Hormann <chr### [at] gmx de>
IsoWood include, radiosity tutorial, TransSkin and other
things on: http://www.schunter.etc.tu-bs.de/~chris/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Perhaps you could use pigment functions for this.
That is, create two functions using two pigments (the same pigments but
with different amount of turbulence) and then interpolate between these
two functions as needed.
--
char*i="b[7FK@`3NB6>B:b3O6>:B:b3O6><`3:;8:6f733:>::b?7B>:>^B>C73;S1";
main(_,c,m){for(m=32;c=*i++-49;c&m?puts(""):m)for(_=(
c/4)&7;putchar(m),_--?m:(_=(1<<(c&3))-1,(m^=3)&3););} /*- Warp -*/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |
|  |
|
 |
Christoph Hormann wrote:
>
> Disnel wrote:
>
>> Image descripbin the problem sent to p.b.i
>
>
> Seen it, just use more pigment map entries with a while loop like i
> suggested:
>
> pigment {
> spherical
> pigment_map {
> #declare Inx=0.0;
> #while (Inx<=1.0)
> [Inx bozo turbulence 1.0-Inx ]
> #declare Inx=Inx+0.03;
> #end
> }
> }
>
> Of course you can only use up to 255 entries right now.
Sure, but it is still an aproximation. I want use it in isosurface.
>
> Christoph
Post a reply to this message
|
 |
|  |
|  |
|
 |
From: Christoph Hormann
Subject: Re: Any way to create variable turbulence?
Date: 23 Mar 2001 06:36:04
Message: <3ABB3524.38B0FEA8@gmx.de>
|
|
 |
|  |
|  |
|
 |
Disnel wrote:
>
> Sure, but it is still an aproximation. I want use it in isosurface.
>
That shouldn't be a problem, of course it would be quite slow.
Another possibility would be to use a displace warp, but that would
generate a quite different type of turbulence.
Christoph
--
Christoph Hormann <chr### [at] gmx de>
IsoWood include, radiosity tutorial, TransSkin and other
things on: http://www.schunter.etc.tu-bs.de/~chris/
Post a reply to this message
|
 |
|  |
|  |
|
 |
|
 |
|  |