     [figwheel.client :as fw]))
 
 (enable-console-print!)
+
+;;--------------------------------------------------------------------------------
+;; Math
+;;--------------------------------------------------------------------------------
+
+(def PI  (aget js/Math "PI"))
+(def cos (aget js/Math "cos"))
+(def sin (aget js/Math "sin"))
 
 ;;--------------------------------------------------------------------------------
 ;; State

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

;;--------------------------------------------------------------------------------


     ;; 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]
              )))

     ])))

