  | 
  | 
 | 
  | 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
I would like to request the addition of a "resolution" keyword for gradients and
maps. This keyword would be used to create steps in a gradient so that one
doesn't necessarily have to interpolate it smoothly.
I know this can be done manually by inserting additional steps, but it is a
chore to do.
-Mike
 
 Post a reply to this message 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
From: Warp 
Subject: Re: Feature request: "resolution" keyword for gradients and maps 
Date: 22 Jun 2008 15:24:19 
Message: <485ea6e2@news.povray.org> 
 | 
 
 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
SharkD <nomail@nomail> wrote:
> I would like to request the addition of a "resolution" keyword for gradients and
> maps. This keyword would be used to create steps in a gradient so that one
> doesn't necessarily have to interpolate it smoothly.
  This can already be done by putting your pattern in a function, and
then creating a second function which calls that function and returns
the value stepped in the way you want (by appropriately using
multiplication, int() and division).
-- 
                                                          - Warp
 Post a reply to this message 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
Warp <war### [at] tag povray org> wrote:
> SharkD <nomail@nomail> wrote:
> > I would like to request the addition of a "resolution" keyword for gradients and
> > maps. This keyword would be used to create steps in a gradient so that one
> > doesn't necessarily have to interpolate it smoothly.
>
>   This can already be done by putting your pattern in a function, and
> then creating a second function which calls that function and returns
> the value stepped in the way you want (by appropriately using
> multiplication, int() and division).
>
> --
>                                                           - Warp
Could you please post an example? Especially about the function referencing
another function part. Functions and related objects are confusing to me.
-Mike
 
 Post a reply to this message 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
From: Warp 
Subject: Re: Feature request: "resolution" keyword for gradients and maps 
Date: 22 Jun 2008 18:47:45 
Message: <485ed691@news.povray.org> 
 | 
 
 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
SharkD <nomail@nomail> wrote:
> Could you please post an example?
#default { finish { ambient 1 } }
background { rgb z*.5 }
camera { location <0, 0, -10> look_at 0 angle 35 }
#declare ThePattern = function { pattern { gradient y } };
#declare SteppedPattern = function { int(10*ThePattern(x, y, z))/10 };
// Original pattern:
box
{ <-1, -2, 0>, <1, 2, .1>
  pigment
  { function { ThePattern(x, y, z) }
    color_map { [0 rgb 0][1 rgb 1] }
  }
  translate -x*1.1
}
// Stepped pattern:
box
{ <-1, -2, 0>, <1, 2, .1>
  pigment
  { function { SteppedPattern(x, y, z) }
    color_map { [0 rgb 0][1 rgb 1] }
  }
  translate x*1.1
}
-- 
                                                          - Warp
 Post a reply to this message 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
Thank you very much, it is clear to me now.
-Mike
 
 Post a reply to this message 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
Warp <war### [at] tag povray org> wrote:
> SharkD <nomail@nomail> wrote:
> > Could you please post an example?
>
> #default { finish { ambient 1 } }
> background { rgb z*.5 }
> camera { location <0, 0, -10> look_at 0 angle 35 }
>
> #declare ThePattern = function { pattern { gradient y } };
> #declare SteppedPattern = function { int(10*ThePattern(x, y, z))/10 };
>
> // Original pattern:
> box
> { <-1, -2, 0>, <1, 2, .1>
>   pigment
>   { function { ThePattern(x, y, z) }
>     color_map { [0 rgb 0][1 rgb 1] }
>   }
>   translate -x*1.1
> }
>
> // Stepped pattern:
> box
> { <-1, -2, 0>, <1, 2, .1>
>   pigment
>   { function { SteppedPattern(x, y, z) }
>     color_map { [0 rgb 0][1 rgb 1] }
>   }
>   translate x*1.1
> }
>
>
> --
>                                                           - Warp
Thanks for the response! I turned your suggestion into a wiki article so that
others may benefit from it.
http://wiki.povray.org/content/HowTo:Turn_a_function_into_a_stepped_function
-Mike
 
 Post a reply to this message 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
From: Warp 
Subject: Re: Feature request: "resolution" keyword for gradients and maps 
Date: 24 Jun 2008 08:53:39 
Message: <4860ee53@news.povray.org> 
 | 
 
 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
SharkD <nomail@nomail> wrote:
> http://wiki.povray.org/content/HowTo:Turn_a_function_into_a_stepped_function
  One small error: int() doesn't round the value to the nearest integer.
It simply drops the decimal part of the value.
  If you want to round, you have to say int(theValueToBeRounded + .5).
(Although one should note that this works correctly only for positive
values. OTOH, pattern values are always positive.)
-- 
                                                          - Warp
 Post a reply to this message 
 | 
  | 
 |   | 
 |   | 
 | 
  | 
 | 
  | 
 |   |