I have the following problem. I not only want to calculate the angle between two planes, I would also like to know what's the direction of this angle, basically the yaw angle. So I would set plane A to some angle, then calculate the angle between the direction of plane A and the direction of the highest slope between both planes. I know angle alpha in the image thats no problem

So far I have two planes, defined by their normal vector. Then I can calculate the cross product of these two, which give me the line of intersection. Then I take the normal vector of this line, project it to reference plane A and say plane A has a certain direction vector. Now I calculate the angle between the direction vector of plane A and the projected normal vector of the line of intersection. But then I still don't know if I am going up or down.

I would like to know the angle beta in this picture. Black is a reference vector for the first (reference plane A), which I can assign to this plane, red is the direction of the highest slope. How do I find this vector? Then I could calculate beta.

Maybe there is also another possibility. If I calculate roll and pitch angle (so set the normal component of the reference plane one time to zero for x -> roll angle between both plane, and one time to zero for y - pitch angle) separately, then I could from a combination of these, also calculate the yaw angle between two planes?

Does someone know the solution? I hope I have explained it clearly.


  • $\begingroup$ keyword : "dihedral angle" $\endgroup$
    – Jean Marie
    Jan 29, 2020 at 15:33
  • $\begingroup$ Does this answer your question? calculating the dihedral angle of two planes $\endgroup$
    – Jean Marie
    Jan 29, 2020 at 15:36
  • $\begingroup$ The highest slope angle is your $\alpha$ in the first picture. Maybe you're confused by thinking ''ok, if I move this vector then the angle will grow and get a higher slope'' but that is not the case (since contradicts definition) but also because in that mindset, there wouldn't be such a highest slope line since by letting your red vector approach the line of intersection then you would get a higher slope but never reaching a maximum since at the intersection line itself it is not defined. I hope this helps, regards. $\endgroup$
    – astro
    Jan 29, 2020 at 23:58
  • $\begingroup$ hmm but I would like to calculate alpha (already done) and beta (I don't know how). There must be a way to also calculate beta, or I am really confused? I mean this red vector is also in the reference plane. So if they match the direction is a 0 degree, so if I go forward I get the highest slope. $\endgroup$
    – gab
    Jan 30, 2020 at 0:06

1 Answer 1


If you have the two normal vectors, lets call them $u, v$

then $\frac {u\cdot v}{\|u\|\|v\|} = \cos \theta$

This Theta will be the angle between the normal vectors. But it will also be the angle that you are looking for for the intersection of the planes.

  • $\begingroup$ I am already know how to calculate this angle. I have added two pictures, I hope they make it more clear. $\endgroup$
    – gab
    Jan 29, 2020 at 23:19

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .