
/g,">").replace(/"/g,""").replace(/'/g,"'")}let l={},o=[];function c(e,t,n){l={...l,dynamic:e,core:t,leinProject:n}}function M(){o=["wh","with-style"]}window.onload=()=>{let{dynamic:t,core:n,leinProject:a}=l;if(t&&(document.getElementById("code-dynamic").innerHTML=s(t)),n&&(document.getElementById("code-core").innerHTML=s(n)),a&&(document.getElementById("code-lein-project").innerHTML=s(a)),o){let e={wh:';; Copyright (c) 2016 Tyler Hobbs\n;; MIT License\n;; https://github.com/thobbs/genartlib/\n(defn h\n "Returns a given percentage of the height Quil-specific."\n ([] (h 1.0))\n ([percentage] (* (height) percentage)))\n\n;; Copyright (c) 2016 Tyler Hobbs\n;; MIT License\n;; https://github.com/thobbs/genartlib/\n(defn w\n "Returns a given percentage of the width. Quil-specific."\n ([] (w 1.0))\n ([percentage] (* (width) percentage)))\n',"with-style":"(defmacro with-style [& body]\n `(do\n (q/push-style)\n (try\n ~@body\n (finally (q/pop-style)))))\n"},t=o.map(t=>e[t]).join("\n");document.getElementById("code-helpers").innerHTML=s(t)}e(r).addPlugin((0,h.number)()),e(r).highlightAll()}}),h("2tEiH",function(e,n){t(e.exports,"number",()=>a);let a=e=>({"after:highlightElement":({el:e,result:t,text:n})=>{let a=t.value.split("\n");a.pop();let r=a.length.toString().length,i=a.map((e,t)=>{let n=(t+1).toString().padStart(r);return`${e}`}).join("\n");e.innerHTML=i}})}),i("d3dEA"),i("7Y8VX");var s=i("gUHNU");(0,s.make)("(ns sketch.dynamic\n (:require [artlib.quil.global :refer :all]\n [genartlib.util :refer [w h]]\n [easings.core :as ease]\n [quil.core :as q]))\n\n(defn draw [state]\n (let [frame (:frame state)\n tau-seq (map str (seq (str Math/TAU)))\n f (* (/ frame (parse-long (apply str (conj [] \n (first (rest (rest (rest (rest tau-seq)))))\n (int (- Math/TAU Math/TAU))\n (int (- Math/TAU Math/TAU)))))) Math/TAU)]\n (when (= frame (int (- Math/TAU Math/TAU)))\n (q/background \n (- Math/TAU Math/TAU)\n (- Math/TAU Math/TAU)\n (+ (* Math/TAU Math/TAU) (* Math/TAU Math/TAU) Math/TAU Math/TAU Math/TAU)))\n (with-style\n (q/stroke \n (- Math/TAU Math/TAU)\n Math/TAU\n (* Math/TAU Math/TAU)\n (/ Math/TAU (* Math/TAU Math/TAU Math/TAU)))\n (dotimes [i (int (* Math/TAU Math/TAU Math/TAU Math/TAU))]\n (let [n (/ i (* Math/TAU Math/TAU Math/TAU))\n n (ease/ease-in-out-sine n)\n n (+ n (* \n (/ (/ Math/TAU Math/TAU)\n (parse-long (apply str (conj [] (first tau-seq) (first tau-seq)))))\n (Math/sin (* f i))))\n n (ease/ease-in-out-expo n)\n center (/ Math/TAU (+ Math/TAU Math/TAU))\n x (+ center (* n n (Math/cos (+ f n n n f))))\n y (+ \n (q/lerp (- Math/TAU Math/TAU) center (Math/round (/ f Math/TAU)))\n (/ Math/TAU Math/TAU) \n (* n (Math/sin (- f f n n))))\n r (/ (/ Math/TAU Math/TAU) (parse-long (apply str (conj [] \n (first tau-seq) \n (first tau-seq)))))]\n \n (dotimes [j (int (+ Math/TAU Math/TAU Math/TAU Math/TAU))]\n (let [x (gauss x (/ 1 (* Math/TAU Math/TAU Math/TAU Math/TAU)))\n y (gauss y (/ 1 (* Math/TAU Math/TAU Math/TAU Math/TAU)))\n y (/ (Math/floor (* y (* Math/TAU Math/TAU))) \n (* Math/TAU Math/TAU (q/lerp (/ Math/TAU Math/TAU) Math/TAU (int n))))\n y (gauss y (/ 1 (* Math/TAU Math/TAU Math/TAU Math/TAU n y)))]\n (q/point (w x) (h y))))\n \n (dotimes [j (int (* Math/TAU Math/TAU))]\n (let [x (gauss x (/ 1 (* Math/TAU Math/TAU Math/TAU Math/TAU)))\n x (/ (Math/floor (* x (* Math/TAU Math/TAU))) (* Math/TAU Math/TAU))\n x (gauss x (/ 1 (* Math/TAU Math/TAU Math/TAU Math/TAU n y n)))\n y (gauss y (/ 1 (* Math/TAU Math/TAU Math/TAU Math/TAU Math/TAU)))]\n (q/point (w x) (h y)))))))))\n",'(ns sketch.core\n (:require [artlib.quil.middleware :refer [animation-mode]]\n [clojure.core.matrix :refer [set-current-implementation]]\n [quil.middleware :as qm]\n [sketch.dynamic :as dynamic]\n [quil.core :as q]))\n\n(set-current-implementation :vectorz)\n(println)\n\n(q/defsketch example\n :title "genuary-2024-01-10"\n :setup (fn [] {})\n :draw dynamic/draw\n :update identity\n :size [1080 1080]\n :animation {:render? true :dirname "1"}\n :middleware [qm/fun-mode animation-mode])\n\n','(defproject genuary-2025-01-10 "0.1.0-SNAPSHOT"\n :description "FIXME: write description"\n :url "https://example.com/FIXME"\n :license {:name "Apache License, Version 2.0"\n :url "https://www.apache.org/licenses/LICENSE-2.0.html"}\n :dependencies [[org.clojure/clojure "1.11.1"]\n [com.dedovic/artlib-core "0.0.11"]\n [com.dedovic/easings-clj "0.1.0"]\n [genartlib/genartlib "1.0.0"]] ; utility functions\n :jvm-opts ["-Xms4000m" "-Xmx4000M" ; 4GB heap size\n "-server"\n "-Dsun.java2d.uiScale=1.0"] ; adjust scaling for high DPI displays\n :source-paths ["src/clj"]\n :java-source-paths ["src/java"]\n :resource-paths ["resources"])\n'),(0,s.withDefaultHelpers)();
dynamic.clj
core.clj
helpers
project.clj