ws-ldn-10
ws-ldn-10 copied to clipboard
Generative design workshop (Clojure/ClojureScript)
- Workshop: Generative design w/ Clojure & thi.ng
There is a [[https://medium.com/@thi.ng/workshop-report-generative-design-with-clojure-7d6d8ea9a6e8][related article]] which covers the examples found in this repository in more detail.
** Examples
*** Namespace: ws-ldn-10.ex01
- Repetition & parameterization of basic processes
- Coordinate systems (cartesian vs polar)
- Custom shape generation
- Shape sampling
| [[./assets/ex03.png]] | [[./assets/ex04.png]] |
*** Namespace: ws-ldn-10.ex02
- Iterative systems #1
- SVG vs bitmap outputs
- Mapping parameters to colors
[[./assets/dejong.png]]
*** Namespace: ws-ldn-10.ex03
- Noise & octaves
- Turbulence
- Tonemapping noise values
- Using noise to drive design parameters
[[./assets/noise-lines.png]]
*** Namespace: ws-ldn-10.ex04
- Agent systems
- Di-pole field lines
- =deftype= & =defprotocol=
- SVG image sequence output & MP4 conversion
[[./assets/agents.png]]
*** Namespace: ws-ldn-10.ex06
- L-Systems
- Recursive rule expansions
- Writing simple interpreter (using =defmulti=)
- Implementing branching (state stacks)
- Visualizing recursion depth
| [[./assets/lsys-gasket.png]] | [[./assets/lsys-penrose.png]] | | [[./assets/lsys-tree.png]] | [[./assets/lsys-dragon.png]] |
** License
This project is open source and licensed under the [[http://www.apache.org/licenses/LICENSE-2.0][Apache Software License 2.0]].