Interpreting the hour hand on a clock as a two-dimensional object on a plane, the hand’s tip can be seen as a complex number.
This clock converts the hour hand’s position into a complex number, sets the number’s length to the current minutes and displays it in the form a + b \cdot i.
The angle \phi is determined by the hours passed (\frac{2 \cdot \pi \cdot \text{hour}}{12} = \frac{\pi \cdot \text{hour}}{6}) but has to be slightly modified because a complex number starts at the horizontal axis and turns anti-clockwise whilst an hour hand starts at the vertical axis and turns — as the name implies — clockwise.
Thus \phi = (2 \cdot \pi - \frac{\pi \cdot \text{hour}}{6}) + \frac{\pi}{2} = (\frac{15 - \text{hour}}{6}) \cdot \pi.
The complex number’s length is simply determined by the minutes passed. Because the length must not be equal to 0, I simply add 1. |z| = k = \text{minute} + 1.
Lastly, to convert a complex number in the form k \cdot e^{\phi \cdot i} into the form a + b \cdot i, I use the formula k \cdot (\cos{\phi} + \sin{\phi} \cdot i) = a + b \cdot i.


# Python 2.7.7 Code
# Pygame 1.9.1 (for Python 2.7.7)
# Jonathan Frech 29th of July, 2016

Continue reading


JClock VII

This alternative clock is not really readable by human. It calculates the first 144┬╣ primes, assigns 60 of them to every possible second, 60 to every possible minute and 24 to every possible hour.
Multiplying those three primes for a given time results in a composite number representing said time. Using integer factorization, you then can get the three primes back, map them to seconds, minutes and hours, and by doing so calculate the time.

2 minutes of prime time┬╣This number is the sum of 60 seconds, 60 minutes and 24 hours.

# Python 2.7.7 Code
# Pygame 1.9.1 (for Python 2.7.7)
# Jonathan Frech 13th of November, 2015

Continue reading