Hey there, thanks for the pointer, I've made a solution from it that works reasonably well, it only slightly falls short because the distance is a scalevector created from angles, so the distance is fairly inconsistent, but it generally works. Thanks.
Edit: Actually, with normalizing the vector and scaling it by a greater amount it gives a much more consistent result, cheers!