There are a large variety of sea-shells (and land shells) that can be
simply described by rotating a ellipse around a log-spiral that has
been projected onto a cone. The image below was generated using this
approach:
The following images show the log-spiral, the spiral on the cone, a circle rotated about the spiral, and the resulting surface.
They were generated with the matlab function shells.m, which is hopefully self-explanitory if you read the comments.
You can generate many other shell shapes with the same
code. Some examples calling shells
in Matlab are given below.