# Finding an orthogonal vector

rocketman123
Hey guys,

Given a vector, ie < -1, 2, 3 > , how does one go about finding a vector which is orthogonal to it?

I also have another vector < x, y ,z > which is the point of origin for the above vector.

In context, I'm given a directional vector from which I need to find an 'up' vector and a 'horizontal' vector. You can see here http://www.cs.auckland.ac.nz/~jli023/images/opengl/pov-ray/viewplaneAnglechanged.jpg - I have a 'look_at' vector and must determine a suitable up and right vector.

I know that to get the right/ horiztonal vector I can just take the cross product between the directional / look at vector and the up vector. However, how to get the up vector confuses me.

A standard up vector is <0 1 0 >. Would it make sense to take the cross product of <0 1 0 > and the direction vector - to get the horizontal vector. And then take the cross product of the horizontal and directional vectors to get the proper up vector? It makes sense to me, however I have no real way of checking if my answer is correct! - I need to find some nice 3d plotting software hehe

Cheers,
Dan