I have a very interesting problem that I can't seems to figure out an answer. I managed to create a 3D polygon that resides on a 3D cone surface:

My goal is to somehow project the cone onto a 2D plane but still retains the general shape of the polygon (ex: a rectangular-like shape should not turn into a trapezium-like shape, or at least try to minimise that distortion). Here's the constraint of the problem:
- The 2D plane will always be Oxy.
- The cone will always be centered around Oz.
Over the last few days, I thought about translating Cartesian coordinate into Cylindrical coordinate and then project the Cylindrical coordinate to Polar Coordinate. However, I very soon realised that by doing so, if the taper angel of the cone is small, a "thick" polygon will turn into a thin line.
Any other suggestions? Thanks :).