|
![](/i/fill.gif) |
"Trevor G Quayle" <Tin### [at] hotmail com> wrote:
> "Mathuin" <mat### [at] gmail com> wrote:
> > I used to think I knew more about POV-Ray than I apparently do. Either that, or
> > this new project is introducing me to new corners of SDL and other interesting
> > things.
> >
> > I find myself making sets of user-defined float functions because I can't figure
> > out how to make a user-defined vector function. I end up with stuff like this:
> >
> > #declare LocX = function(x) { x + 1 }
> > #declare LocY = function(y) { y * 2 }
> > #declare LocZ = function(z) { z / 3 }
> >
> > I'd *much* rather have this:
> >
> > #declare LocXYZ = function(x, y, z) { <x + 1, y * 2, z / 3> }
> >
> > Any chance there's an easy way to do this? Will I have to use a macro?
>
> A macro is best suited for this:
>
> #macro LocXYZ (x0,y0,z0)
> #local x1=x0+1;
> #local y1=y0*2;
> #local z1=z0/3;
> <x1,y1,z1>
> #end
>
> evaluate using:
>
> #declare A=LocXYZ(1,2,3);
This is pretty much what I ended up doing, for what it's worth. Thank you for
doing what I forgot to do -- provide a useful answer for those who come to the
forums later trying to avoid asking the same questions I asked.
>
>
> -tgq
Post a reply to this message
|
![](/i/fill.gif) |