Esto dependerá del tipo de espiral que quieras, pero el algoritmo más fácil es el siguiente:
trazas los ejes X, Y
desde el punto (0,0), con una amplitud de 1 (sustituyase por X, depende de lo abierta que quieras la espiral) traza un semicírculo (cogerá 2 cuadrantes cualesquiera, lo explicaré tomando los cuadrantes I y IV) Este semicirculo interseca con el eje X en +X y -X (mi caso: +1 y -1).
Desde uno de los puntos de intersección (por ejemplo, (-1,0)) y con amplitud de 2X (en este caso, 2) trazamos otro semicirculo que continúe el anterior. Para el siguiente semicírculo, nos desplazamos a la última intersección por la derecha (+1,0), con amplitud doble que la vez anterior y traza el siguiente semicírculo, que te deja más intersecciones en el eje X, desde las intersecciones nuevas, repites el proceso y así hasta que quieras...
Espero que se me entienda, creo que al final me lié con la explicación.
Un saludo.
Silverfox