# teaching machines

## Circle Dance

At one time, people believed that the Earth was the center of the universe, and that the planets and the sun orbited around it. Copernicus came along and challenged this idea, suggesting that the sun was the center. These are the only two sides of the debate that we ever hear about.

Heliocentrism vs. geocentrism is a false dichotomy. To get better science, we need to enumerate more theories. If I were alive at the time of Copernicus, I would offer the theory that Earth orbited the sun in even years, and the sun orbited the Earth in odd years. Something like this perhaps:



with viewport
center = :zero2
size = [20, ~]
color = :cornflower

f = 2
with time
stop = 40 * f

with circle()
color = :black
center = [-5, -5]
with rotate()
0 -> t -> 30 * f
pivot = [5, -5]
10 * f-> t
degrees = 0
t -> 20 * f -> 30 * f
degrees = -90
10 * f -> t -> 20 * f
degrees.tween = :cubicInOut
30 * f -> t -> 40 * f
pivot = [-5, 5]
30 * f -> t
degrees = 90
t -> 40 * f
degrees = 0
30 * f -> t -> 40 * f
degrees.tween = :cubicInOut

with circle()
color = :white
center = [-5, 5]
with rotate()
0 -> t -> 20 * f
pivot = [-5, -5]
0 -> t
degrees = 0
t -> 10 * f -> 20 * f
degrees = -90
0 * f -> t -> 10 * f
degrees.tween = :cubicInOut
20 * f -> t -> 40 * f
pivot = [5, 5]
20 * f -> t
degrees = 90
t -> 30 * f -> 40 * f
degrees = 0
20 * f -> t -> 30 * f
degrees.tween = :cubicInOut

var twovilleDiv = jQuery('#twoville_demo');
twovilleDiv.closest('pre').replaceWith(twovilleDiv);
document.getElementById('twoville_form_demo').submit();

with viewport
center = :zero2
size = [20, ~]
color = :cornflower

f = 2
with time
stop = 40 * f

with circle()
color = :black
center = [-5, -5]
with rotate()
0 -> t -> 30 * f
pivot = [5, -5]
10 * f-> t
degrees = 0
t -> 20 * f -> 30 * f
degrees = -90
10 * f -> t -> 20 * f
degrees.tween = :cubicInOut
30 * f -> t -> 40 * f
pivot = [-5, 5]
30 * f -> t
degrees = 90
t -> 40 * f
degrees = 0
30 * f -> t -> 40 * f
degrees.tween = :cubicInOut

with circle()
color = :white
center = [-5, 5]
with rotate()
0 -> t -> 20 * f
pivot = [-5, -5]
0 -> t
degrees = 0
t -> 10 * f -> 20 * f
degrees = -90
0 * f -> t -> 10 * f
degrees.tween = :cubicInOut
20 * f -> t -> 40 * f
pivot = [5, 5]
20 * f -> t
degrees = 90
t -> 30 * f -> 40 * f
degrees = 0
20 * f -> t -> 30 * f
degrees.tween = :cubicInOut