How to determine yaw-pitch-roll orientation by specifying a plane via 3 points?

1.8k Views Asked by At

[Note, this question is an attempt at rephrasing the one posted here, as it has not garnered any attention, unfortunately]

Hello,

Let's say you have three points in 3D space: A, B and C. Together, these 3 points specify a plane. What I'd like to do is have an X-Y-Z triad (right hand axis system) positioned at point A, and then oriented so that the X-Y plane lies on the plane formed by A, B and C, with the X axis pointing along the vector AB, and the Y axis pointing to the "left" or "right" of the X axis, depending on whether the point C lies to the "left" or "right" of the X axis. With the X and Y axes oriented, the Z axis then becomes known.

How can I calculate the yaw-pitch-roll (rotation about Z, rotation about new Y, rotation about new X) angles needed in order to perform such an orientation based on these inputs?