I am trying to parameterise a surface of revolution such that each infinitesimal area element is uniform across the surface. The cross-sections of the surface are shown in the picture below. The title of the post refers to a torus as I thought this might be an easier place to start. However, I really want to know how to do this for a surface with a general cross-section like the one below.
Here is what I have tried so far...
Let $l_\theta$ denote the length and coordinate along the contour shown below in the $x$-$z$ plane. Where I am using $\theta$ here as a reference to the poloidal direction in "Toroidal and poloidal coordinates".
Let $R(l_\theta)$ denote the distance to the corresponding point from the $z$-axis.
Let $$\phi=\mathrm{atan2}(y, x),$$ denote the toroial angle.
Let $$s_\theta = \frac{A_{tot}}{2\pi R(l_\theta)}\frac{l_\theta}{l_{tot}},$$ where $A_{tot}$ gives the total area of the surface and $l_{tot}$ give the total length of the contour.
Note that $$\begin{aligned} ds_{\theta} &= dl_\theta\frac{ds_\theta}{dl_\theta} \\ &= dl_\theta\frac{A_{tot}}{2\pi l_{tot}}\left(\frac{1}{R(l_\theta)}-\frac{l_\theta}{R(l_\theta)^2}\frac{dR}{dl_\theta}\right) \end{aligned}$$
Using $\phi$ and $s_\theta$ as my coordinates nearly gives what I want but not quite. The infinitesimal area elements are given by $$\begin{aligned} R(l_\theta)\,d\phi\,ds_\theta &=\frac{A_{tot}}{2\pi l_{tot}}d\phi dl_\theta\left(1-\frac{l_\theta}{R(l_\theta)}\frac{dR}{dl_\theta}\right) \\ &\approx \frac{A_{tot}}{2\pi l_{tot}}d\phi dl_\theta \end{aligned}$$ for $$\frac{l_\theta}{R(l_\theta)}\frac{dR}{dl_\theta}\ll1.$$ Do you know if it's possible to get a better parameterization where the infinitesimal areas are completely uniform across the surface? If not, do you know how I can improve on the parameterization above?
