                    (/ 1000 60))
         dt (/ delta-ms 1000)]
     (set! prev-time curr-time)
-    (put! tick-chan dt))
+    (put! tick-chan dt)
+
+    (tick-orbits! dt)
+    (tick-radar! dt)
+    )
   (.requestAnimationFrame js/window tick!))
 
 ;;--------------------------------------------------------------------------------

            :soundscript {:alpha 0}
            :flow {:alpha 0}}
   :coffeescript {:alpha 0
                  :angle 0
                  :radar {:alpha 0
                          :offset 0}
                  :r 900
                  }
   :dart {:alpha 0
          :angle 0
          :radar {:alpha 0
                  :offset 0}
          :r 1400
                  }
   :clojurescript {:alpha 0
                   :angle 0
                   :radar {:alpha 0
                           :offset 0}
                   :r 1900
                  }
   })

;; Current state of the application.
(defonce state
  (atom initial-state))

;;--------------------------------------------------------------------------------
;; Math
;;--------------------------------------------------------------------------------

(def PI  (aget js/Math "PI"))
(def cos (aget js/Math "cos"))
(def sin (aget js/Math "sin"))

;;--------------------------------------------------------------------------------
;; Canvas


     ;; show coffeescript
     #(go
        (swap! state assoc :enable-orbits? true)
        (swap! state assoc-in [:radar :orbit] :coffeescript)
        (swap! state assoc-in [:coffeescript :highlight] true)
        (<! (multi-animate!
              {:a :_ :b 1 :duration 1} [:coffeescript :alpha]
              )))

     ;; show dart
     #(go
        (swap! state assoc-in [:coffeescript :highlight] false)
        (swap! state assoc-in [:dart :highlight] true)
        (swap! state assoc-in [:radar :orbit] :dart)
        (<! (multi-animate!
              {:a :_ :b 1 :duration 1} [:dart :alpha]
              ;;{:a :_ :b 0.1 :duration 1} [:cam :zoom]
              )))

     ;; show clojurescript
     #(go
        (swap! state assoc-in [:dart :highlight] false)
        (swap! state assoc-in [:clojurescript :highlight] true)
        (swap! state assoc-in [:radar :orbit] :clojurescript)
        (<! (multi-animate!
              {:a :_ :b 1 :duration 1} [:clojurescript :alpha]
              {:a :_ :b 0 :duration 1} [:cam :y]
              {:a :_ :b 300 :duration 1} [:cam :x]
              {:a :_ :b 0.15 :duration 1} [:cam :zoom]
              )))

     ])))

