POV-Ray : Newsgroups : povray.general : Transformation to align two axes? : Re: Transformation to align two axes? Server Time
30 Jul 2024 10:20:19 EDT (-0400)
  Re: Transformation to align two axes?  
From: Tim Attwood
Date: 11 Mar 2009 22:51:29
Message: <49b878b1$1@news.povray.org>
> I'm having trouble thinking through a transformation problem, and I'm 
> pretty sure this isn't too crazy of a problem.
> The idea is that I have an object centered at the origin, let's say a 
> thin oval with the major and minor radii along the x and z axes, (so the 
> normal on the flat face is in y). I want to rotate this so the x and y 
> axes are pointing in the direction of two arbitrary (normalized and 
> perpendicular) vectors.
> 
> transforms.inc has the Point_At_Trans(newY) that will do half this 
> problem, but if I want to then rotate the x axis to align with another 
> vector, it will mess up the original translation.
> 
> The object can then be translated to be centered at a given point, but 
> that part is easy.

I think what you want is Shear_Trans. 
As long as the vectors you supply are normal and perpendicular
the object just gets rotated. You can use VPerp_To_Plane to 
get the third vector...

#include "transforms.inc"
#include "math.inc"

object { 
   Foo
   Shear_Trans(Xvec,YVec,VPerp_To_Plane(Xvec,YVec))
}


Post a reply to this message

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