In my last suggestion I was referring to rotating your machine coordinate system around the X axis in the LinuxCNC control. If you were able to do that, the control would handle the trig for you. If you programmed Z-15.0 it would move the Y and Z axis to produce the required angle. I don't know if this is possible with LinuxCNC though.

I don't think you can add your own code to the user defined cycles, but it would be great if you could.

You may want to give Mecsoft a call to see what they suggest. Seeing as how you have a 5 axis seat, there may be some nice tools that I am unaware of that would help you out.