1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Most Efficient way to solve for Euler Angles

  1. Jun 23, 2011 #1
    Hi guys, could you please help me out?

    Essentially, a lazer is pointing at a certain point in 3 dimensional space. There is a fixed target that the lazer is specifically supposed to point to. My job is to find the most efficient way to solve for the euler angles(yaw pitch and roll) in order to sync the lazer with the target point. What is the best way to do this? The values known are the direct distance from the lazer to to the target, the distance from the lazer to the initial point, and the distance from the initial point to the fixed target. Thank you guys, it would help a lot!
  2. jcsd
  3. Jun 23, 2011 #2
    You need more or different info. One set of info that would be sufficient is the cartesian coordinates of the initial point and the target with respect to the laser plus the yaw, pitch, and roll of the laser in that coordinate system. Another sufficient set is yaw, pitch, and roll of the laser plus the yaw and pitch of the target position with respect to some fixed coordinate system. It's not clear exactly what your particular situation is, but the info you've given is not sufficient to solve the problem.
  4. Jun 24, 2011 #3


    User Avatar
    Science Advisor

    A vector pointing from [itex](x_0, y_0, z_0)[/itex] to [itex](x_1, y_1, z_1)[/itex] can be written as [itex]\vec{v}= (x_1- x_0)\vec{i}+ (y_1- y_0)\vec{j}+ (z_1- z_0)\vec{j}[/itex]. Its length is
    [tex]|\vec{v}|= r= \sqrt{(x_1-x_0)^2+ (y_1- y_0)^2+ (z_1- z_0)2}[/tex]

    Finally, the unit vector in that direction is
    [tex]\frac{\vec{v}}{|\vec{v}|}= \frac{x_1- x_0}{r}\vec{i}+ \frac{y_1- y_0}{r}\vec{j}+ \frac{z_1- z_0}{r}\vec{k}[/tex]

    So the Euler angles are given by
    [tex]cos(\theta_x)= \frac{x_1- x_0}{r}[/tex]
    [tex]cos(\theta_y)= \frac{y_1- y_0}{r}[/tex]
    [tex]cos(\theta_z)= \frac{z_1- z_0}{r}[/tex]

    That is, the Euler angles for a given direction are the arccosines of the components of a unit vector in that direction.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook