Modelling Forms in Nature: Easter Chocolate Eggs 2021

This year, your Highness, we will be featuring square eggs.
Peter Carl Fabergé

The Easter Math Bunny is back again, and he is talking again of … eggs!

Two years ago, I ended my blog with a question, “What about chocolate egg shapes?” It is now the time to give some answer. If you have read my previous articles, I and many scientists and artists have been caught by the shape of the bird eggs. Several models have been proposed to reproduce the silhouette of bird eggs. Baker [1] proposed a simple two-parameters mathematical model based on projection geometry that was revealed to be versatile and accurate in producing the shapes of a large variety of bird eggs [1]. More recently, the model was used to perform a systematic and comparative study of the shape of 1400 bird eggs species [2].

Baker’s equation is based on a fundamental transformation from projective geometry. This mathematical description generates so-called “path curves” that remarkably resemble natural shapes such as eggs, buds, and embryos. The equation is given by the following expression


where T and \lambda are two parameters.

In the paper by Stoddard et al. [2], the asymmetry (A=\lambda-1 ) and ellipticity (E = \frac{1}{T} - 1) parameters are used instead to define the geometric properties of the analyzed eggs. In my 2019 Easter article, I have proposed simple TCL/Tk programing language scripts to play around with the silhouette of birds’ eggs. And, for Easter 2020, a program in C++ to produce the three-dimensional representation. It is now the time to go experimental and obtain the two parameters directly from pictures of eggs or eggs shaped objects (precisely chocolate eggs!).

In his article, Baker gave a simple procedure for deriving using the nonlinear least-square fit the eggs’ parameters. It consists of defining the central axis (in the Figure below represented in red). It then draws seven equispaced diameters perpendicular to the central axis.

The analysis of the picture of a Uria aalge eggs. (egg picture source: wikipedia).

The value of the parameters \lambda and T , are then obtained using the relations:

\lambda = \frac{10.51}{\left[ \log(7)\log \left(\frac{7F}{A}\right) + \log(3)\log\left(\frac{3E}{B}\right) +\log\left(\frac{5}{3}\right) \log\left(\frac{5D}{3C}\right) \right]}

T=\frac{\log\left( 3.25 ABCTDEF\right)}{7}

where A, B, C, T, D, E, and are the seven measured radii of a bird egg, each one perpendicular to the egg axis as shown in the Figure.

I have written a Tcl/Tk language program to help accomplish this task using the picture of an egg that will be posted on this page at some time.

But what about fabergé’s superellipsoidal eggs? Well, I am afraid, my dear reader, but for that one, you need to wait until next year!



  1. D. E. Baker. A Geometric Method for Determining Shape of Bird Eggs. The Auk 119(4):1179–1186, 2002.
  2. M. C. Stoddard et al. Avian egg shape: Form, function, and evolution.Science 356, 1249–1254 (2017).

2 thoughts on “Modelling Forms in Nature: Easter Chocolate Eggs 2021

    • Hi Mojmir, It is a long time I do not hear from you. How are you?

      Thank you for the comment. I am happy that you are interested in my blogs. You are quite right, but the paper I cited in the blog has done this job better than me and probably uses computer vision approaches.

      In some of my blogs, I am not presenting cutting edge modern computer programming approaches but just old-style (or even obsolete) programming and computational recreations. It is just for those that still appreciate and enjoy it. Indeed, there is a resurge of interest in these approaches thanks to developing the other low-cost computers.
      However, stay tuned and come to articles where I will use more “modern” programming strategies!


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.