I see. :-D Well, it's a bit complicated, because of the relativity of the problem. First thing I observed is that roll doesn't actually change the position of the tip? It just rotates the "barrel" of the cannon around itself? Pitch would move tip up and down and yaw would move tip left and right? Now, what skipjack is trying to say is that (even if you don't know the position of the tip), you should set it as a fixed point first. When you run the application, or something. For example, set the butt of the cannon in (0,0,0) and tip of the cannon in (10,0,0). Then it's easier to observe rotation of the tip. Now, there are simple matrices for rotation, but it's easier to observe when the butt is in (0,0,0). Even if it isn't we can translate both tip and butt so that butt is (0,0,0), rotate tip around (0,0,0), then translate the cannon back. And yes, it should be simple to calculate using only sin, cos and Pythagoras's theorem. I will try to find a satisfactory formula in a few days (if skipjack doesn't do it first
), any further explanation would help.