Angles and measurement - PCB design help
I use Eagle.  When I need to do things like this I write a program that generates a script.  The program does the sines, cosines, and other math to determine the coordinates, then writes those into the script.

This comes up often enough that I've created a generic host program module that has subroutines for writing coordinates in Eagle format, for writing whole WIRE commands, it's own 2D transforms, etc.  This kind of thing is really not hard to do.

Keep in mind that efficiency of the program is no issue.  No matter what, it will complete instantaneously in human time.  Write it for clarity and the ability to make changes to it.

Often what you think you want at first will be a little different from what you actually want after looking at results, running DRC checks, and the like.  Having a program that writes a script allows you to easily delete the whole mess on the board, re-run the program, and re-run the script to try something a little different.  It will also be useful for the next rev of the board.  If you did it all manually and things need to be a little different next rev, you have a lot of work to do it over.