POV-Ray : Newsgroups : povray.newusers : Scale by axis? : Re: Scale by axis? Server Time
5 Jul 2024 03:43:17 EDT (-0400)
  Re: Scale by axis?  
From: Alain
Date: 31 May 2010 22:44:22
Message: <4c047406@news.povray.org>

> Hello!
>
>       Is there a way to scale an object along a specified axis?  I.e., at x=0,
> the object would be scaled x*0, at x=0.3, it would be scaled x*0.3, etc.
>
> Joe
>
>
>

You can only scale uniformly. Also, you can't scale by zero. The idea is 
that ANY line traced through the object must remain a line after any 
scaling, even if it's lenght and orientation have changed.
That's for normal objects made using primitives, including any mesh.

There is a way to have some non-uniform scaling, but it's more complicated.
For that, you need to use an isosurface equivalent to your object and 
work on the function used to represent it.
Once the function is set, you can have some fun:
you can call the function with non-constant parameters, as this:
My_Function(sin(x),y,z)
My_Function(sqrt(x),y,z)
My_Function(pow(x,3),y,z)
You can do that on all 3 axis:
My_Function(sqrt(x), pow(y,2), z+f_noise())

You can also work on an axis parameter inside the function itself.



Alain


Post a reply to this message

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