|
|
The reason would be that you can use this in a pigment or a density, whereas
by #declaring you would be restricted to one of the two.
You can't do this:
#declare Pattern=pigment{...}
media{density{Pattern}}
or vice versa.
Margus
Ken wrote in message <37194AB7.22B37382@pacbell.net>...
>When designing macros I have seen occassions where the macro was
>specified like this example shows:
>
> #macro Pattern ()
> granite
> color_map{
> [0.5000 rgb 0]
> [0.5001 rgb 1]
> }
> warp { turbulence .03 lambda 1.4 omega 2.0 octaves 5 }
> translate z*3
> scale <2, .5, 2>
> #end
>
> Note the absence of any identifiers inside the macro parenthesis ( )
> This was later used in a media statement as a density pattern.
>
> My question then is this. Why go through the trouble of making a macro
>with no customizable attributes, for a one time use, when is would seem to
>me that a simple #declared density would serve the same purpose.
>
> From where I sit there is no real difference from the above example
>and the one that follows.
>
> #declare Pattern =
> density {
> granite
> color_map{
> [0.5000 rgb 0]
> [0.5001 rgb 1]
> }
> warp { turbulence .03 lambda 1.4 omega 2.0 octaves 5 }
> translate z*3
> scale <2, .5, 2>
> }
>
> Would they not function the same way and is there anything to suggest
>that the macro offers any advantage the way it is illustrated above ?
>
>
>
>--
>Ken
>
>mailto://tylereng@pacbell.net
Post a reply to this message
|
|