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.