looks stunning... literally stunning, thanks for sharing.
On Tue, Feb 24, 2015 at 9:06 PM, Karsten Schmidt <i...@toxi.co.uk> wrote: > Hi guys, > > thi.ng is a collection of over a dozen largely x-platform Clojure & > Clojurescript libs for computational/generative design & data > visualization tasks. > > I just wanted to give a little heads up that this project has recently > seen a number of releases and, as a whole, by now is generally quite > stable and usable (*is used*) for realworld projects (although most > libs remain in constant parallel development to make them more feature > complete). I've collated a number of images of projects and links to > the most important libs here: > > http://thi.ng/ > > Most notably of those: > > http://thi.ng/geom > By far the largest sub-project and backbone for most others: A 2D/3D > geometry package w/ comprehensive vector algebra, swizzling, > intersections, matrix types & helpers, quaternions, pure shape > primitives with ~50 protocols for polymorphic enquiry & manipulation, > meshes (incl. I/O), mesh subdivisions, CSG mesh ops, Verlet physics > engine (only particles, springs, behaviors)... Most of this lib is > pure geometry w/ no rendering specifics, although there're separate > modules for SVG rendering w/ shader support & decorators [1], WebGL > wrapper and converters from shapes/meshes to VBOs and various shader > presets/utils. > > http://thi.ng/shadergraph > GLSL (WebGL) pure function library & dependency graph (based on > com.stuartsierra/dependency), GLSL minification during CLJS compile > time > > http://thi.ng/color > RGB, HSV, CMYK, CSS conversions, color presets (incl. D3 category schemes) > > http://thi.ng/luxor > Complete scene compiler DSL for http://luxrender.net, based around > thi.ng/geom > > http://thi.ng/morphogen > Declarative 3D form evolution through tree-based transformations, > basically an AST generator of geometric operations to transform a > single seed node into complex 3D objects > > http://thi.ng/tweeny > Interpolation of nested (presumably animation related) data > structures. Allows tweening of deeply nested maps/vectors with > completely flexible tween fns/targets and hence easy definition of > complex timelines > > http://thi.ng/validate > Purely functional, composable data validation & optional corrections > for nested data. Supports both maps & vectors, wildcards, comes with > many predefined validators, but extensible... > > http://thi.ng/trio > A generic, non-RDF specific triple store API and feature rich > SPARQL-like query engine > (and my prime example of using the literate programming approach with > org-mode[2][3]) > > Last but not least: Super special thanks are due to the following people: > > Rich, Alex + rest of clojure.core > David (+everyone else involved) for the immense effort on making CLJS > proper useful, > Chas, Kevin and anyone else working on CLJX... > none of this would have been possible without these amazing tools! > > Best, K. > > Ps. There're a number of other libs in this collection which are in > dire need of updating (last touched spring 2013) - these are related > to general OpenCL functionality and voxel rendering. Some of the > example images on the above site were created with these... > > [1] https://github.com/thi-ng/geom/blob/master/geom-svg/src/examples.org > [2] https://github.com/thi-ng/trio/blob/master/src/query.org > [3] http://orgmode.org/ > > -- > Karsten Schmidt > http://postspectacular.com | http://thi.ng/ > > -- > Note that posts from new members are moderated - please be patient with > your first post. > --- > You received this message because you are subscribed to the Google Groups > "ClojureScript" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to clojurescript+unsubscr...@googlegroups.com. > To post to this group, send email to clojurescript@googlegroups.com. > Visit this group at http://groups.google.com/group/clojurescript. > -- Note that posts from new members are moderated - please be patient with your first post. --- You received this message because you are subscribed to the Google Groups "ClojureScript" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojurescript+unsubscr...@googlegroups.com. To post to this group, send email to clojurescript@googlegroups.com. Visit this group at http://groups.google.com/group/clojurescript.