I\'m new to three.js and 3d programming in general, so this may seem like a very simple question. Ideally, I hope the answer can help me understand the underlying principles.
What you are really saying is you want the y-axis of the object (the object's up
-vector) to be orthogonal to the plane.
All you have to do is set the object's up
-vector before you call lookAt( origin )
.
You compute the desired up
vector by taking a cross-product of two vectors you know lie in the plane.
Here is a working fiddle: http://jsfiddle.net/rQasN/43/
Note that there are two solutions to your problem, as both the computed vector and it's negation will be orthogonal to the plane.
EDIT: fiddle updated to three.js r.71