POV-Ray : Newsgroups : povray.newusers : Stupid Question Server Time
5 Nov 2024 03:17:01 EST (-0500)
  Stupid Question (Message 1 to 10 of 12)  
Goto Latest 10 Messages Next 2 Messages >>>
From: Tom Melly
Subject: Stupid Question
Date: 22 Feb 2001 11:48:16
Message: <3a9542d0$1@news.povray.org>
I want to make a pigment of 3 mandelbrots, each one positioned differently,
at different rotations and scales.

I have my mandel pigs, but I can't work out how to lay them on top of each
other.

Essentially, I want to use the average function - e.g.

pigment{
    average
    pigment_map{
        [basepig]
        [man1]
        [man2]
        [man3]
    }
}

The trouble with this is that it doesn't leave the pigments alone. How do I
accomplish this?  (btw the areas outside the man. set are rgbt 1).

At the moment, my kludge is to lay 3 separate objects on top of each other,
each one given a different mandel pig.


Post a reply to this message

From: Ron Parker
Subject: Re: Stupid Question
Date: 22 Feb 2001 12:02:43
Message: <slrn99ahhk.qdv.ron.parker@fwi.com>
On Thu, 22 Feb 2001 16:48:16 -0000, Tom Melly wrote:
>I want to make a pigment of 3 mandelbrots, each one positioned differently,
>at different rotations and scales.
>
>I have my mandel pigs, but I can't work out how to lay them on top of each
>other.

Layered textures?

Alternatively, for some configurations of your mandel pigs, you could use
a radial or a gradient pigment with appropriate ugly transformations and
such.  Specifically, if they don't overlap and you can draw lines between
adjacent copies such that the three lines all meet at a single point, you
can use radial.  If they don't overlap and you can draw two parallel lines
between adjacent copies, you can use gradient.  But it'll be ugly, I 
guarantee.

-- 
Ron Parker   http://www2.fwi.com/~parkerr/traces.html
My opinions.  Mine.  Not anyone else's.


Post a reply to this message

From: Chris Huff
Subject: Re: Stupid Question
Date: 22 Feb 2001 12:05:46
Message: <chrishuff-F8C1CF.12045122022001@news.povray.org>
In article <3a9542d0$1@news.povray.org>, "Tom Melly" 
<tom### [at] tomandlucouk> wrote:

> The trouble with this is that it doesn't leave the pigments alone. 
> How do I accomplish this?  (btw the areas outside the man. set are 
> rgbt 1).

What do you mean by "it doesn't leave the pigments alone"? Maybe the 
problem is just that you are using averaging...if the color values vary 
evenly from 0 to 1 for each component, and you average enough samples, 
you will end up getting closer to 50% gray.


> At the moment, my kludge is to lay 3 separate objects on top of each 
> other, each one given a different mandel pig.

Layered textures would probably work...

object {
    texture {pigment {basepig}}
    texture {pigment {man1}}
    texture {pigment {man2}}
    texture {pigment {man3}}
}

Just make sure the mandel pigments are at least partially transparent.

-- 
Christopher James Huff
Personal: chr### [at] maccom, http://homepage.mac.com/chrishuff/
TAG: chr### [at] tagpovrayorg, http://tag.povray.org/

<><


Post a reply to this message

From: Ron Parker
Subject: Re: Stupid Question
Date: 22 Feb 2001 12:10:21
Message: <slrn99ahvu.qdv.ron.parker@fwi.com>
On Thu, 22 Feb 2001 16:48:16 -0000, Tom Melly wrote:
>I have my mandel pigs, but I can't work out how to lay them on top of each
>other.

Another option, if you leave the "transparent" parts black instead, is to 
just boost the color values of everything else by a factor of 3.  This, too,
only works if the colored parts don't overlap.  And I'm not sure it's easy
to integrate with the base pigment you mentioned.  

-- 
Ron Parker   http://www2.fwi.com/~parkerr/traces.html
My opinions.  Mine.  Not anyone else's.


Post a reply to this message

From: Christoph Hormann
Subject: Re: Stupid Question
Date: 22 Feb 2001 12:20:37
Message: <3A954A66.717F3E1F@gmx.de>
Chris Huff wrote:
> 
> Layered textures would probably work...
> 
> object {
>     texture {pigment {basepig}}
>     texture {pigment {man1}}
>     texture {pigment {man2}}
>     texture {pigment {man3}}
> }
> 
> Just make sure the mandel pigments are at least partially transparent.
> 

Instead of that you could also use nested pigments maps:

#declare Mandel_1= pigment {..}
#declare Mandel_2= pigment {..}
#declare Mandel_3= pigment {..}

#declare Mandel_X1= 
pigment {..
  Mandel_3
  pigment_map {
    [0.0 Mandel_1] 
    [0.1 color ... ] 
  }
}

#declare Mandel_Final= 
pigment {..
  Mandel_2
  pigment_map {
    [0.0 Mandel_X1] 
    [0.1 color ... ] 
  }
}

Christoph

-- 
Christoph Hormann <chr### [at] gmxde>
IsoWood include, radiosity tutorial, TransSkin and other 
things on: http://www.schunter.etc.tu-bs.de/~chris/


Post a reply to this message

From: Tom Melly
Subject: Re: Stupid Question
Date: 22 Feb 2001 12:33:41
Message: <3a954d75@news.povray.org>
>
> Layered textures would probably work...
>
> object {
>     texture {pigment {basepig}}
>     texture {pigment {man1}}
>     texture {pigment {man2}}
>     texture {pigment {man3}}
> }
>

Yes, they probably would. Told you it was a stupid question. (I sort of
forgot that textures could be layered without a pattern - when I tried it, I
was trying to layer pigments IIRC).

Thanks all.


Post a reply to this message

From: Josh English
Subject: Re: Stupid Question
Date: 22 Feb 2001 17:23:11
Message: <3A95919A.ED9A024@spiritone.com>
When averaging pigments, I find it's helpful to create color maps with entries
greater than 1 to keep the colors from getting dark and muddy. Is that what you
mean by "doesn't leave the pigments alone?"

Josh

Tom Melly wrote:

> I want to make a pigment of 3 mandelbrots, each one positioned differently,
> at different rotations and scales.
>
> I have my mandel pigs, but I can't work out how to lay them on top of each
> other.
>
> Essentially, I want to use the average function - e.g.
>
> pigment{
>     average
>     pigment_map{
>         [basepig]
>         [man1]
>         [man2]
>         [man3]
>     }
> }
>
> The trouble with this is that it doesn't leave the pigments alone. How do I
> accomplish this?  (btw the areas outside the man. set are rgbt 1).
>
> At the moment, my kludge is to lay 3 separate objects on top of each other,
> each one given a different mandel pig.

--
Josh English -- Lexiphanic Lethomaniac
eng### [at] spiritonecom
The POV-Ray Cyclopedia http://www.spiritone.com/~english/cyclopedia/
"He who hebetates is last."


Post a reply to this message

From: Tom Melly
Subject: Re: Stupid Question
Date: 23 Feb 2001 07:55:06
Message: <3a965daa$1@news.povray.org>
"Josh English" <eng### [at] spiritonecom> wrote in message
news:3A9### [at] spiritonecom...
> When averaging pigments, I find it's helpful to create color maps with
entries
> greater than 1 to keep the colors from getting dark and muddy. Is that
what you
> mean by "doesn't leave the pigments alone?"
>

Yep - BTW, the layered texture didn't work ("can't layer over layered
texture"). Would a non-averaging average pattern (if you see what I mean) be
possible?

Then, it would be easy to layer pigment, so to speak, as opposed to whole
textures.

Feature request?


Post a reply to this message

From: Warp
Subject: Re: Stupid Question
Date: 23 Feb 2001 09:50:22
Message: <3a9678ad@news.povray.org>
Tom Melly <tom### [at] tomandlucouk> wrote:
: Yep - BTW, the layered texture didn't work ("can't layer over layered
: texture").

  How can this be possible? A mandel pigment is not a layered texture.

-- 
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

From: Chris Huff
Subject: Re: Stupid Question
Date: 23 Feb 2001 10:08:30
Message: <chrishuff-FE1FA1.10073623022001@news.povray.org>
In article <3a965daa$1@news.povray.org>, "Tom Melly" 
<tom### [at] tomandlucouk> wrote:

> Yep - BTW, the layered texture didn't work ("can't layer over layered
> texture").

You mean "Can't layer over patterned texture"? That one is a pain with 
complex textures...
Are you sure you need patterned textures here? My example only used a 
patterned pigment, which should work fine with texture layers. Could you 
post the code?


> Would a non-averaging average pattern (if you see what I mean) be
> possible?

I've considered doing add, multiply, divide, etc...I was planning to do 
these along with my layered texture effects patch, which would allow you 
to specify how each layer affects the underlying layers, but which I 
never got working properly.

-- 
Christopher James Huff
Personal: chr### [at] maccom, http://homepage.mac.com/chrishuff/
TAG: chr### [at] tagpovrayorg, http://tag.povray.org/

<><


Post a reply to this message

Goto Latest 10 Messages Next 2 Messages >>>

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