This draft anim was created for The ODI and shows 2 years (summer 2011-2013) worth of London knife crime (based on open data ambulance & A&E reports):
http://media.thi.ng/2013/odi/20131029-heatmap-draft-1280x960.mp4 On 26 February 2015 at 00:42, Dylan Butman <dbut...@gmail.com> wrote: > I totally thought that map was a photo of 3d printed shapes, but it makes > sense that you're using luxrender now. Is there a video of the animation > online somewhere? > > On Wed Feb 25 2015 at 6:13:25 PM Karsten Schmidt <i...@toxi.co.uk> wrote: >> >> That's a good point, Bruce! To be honest, I don't know anymore, but it >> makes complete sense to change it. Consider it done! :) >> >> As for your mapping question, yes, of course! I've done a few of them. >> E.g. the first pic on the website [1] was a project for The ODI in >> 2013 and is a map of different council/borough stats of London (here >> knife crime). The shape files were first retrieved & processed with >> the thi.ng/trio lib directly from the UK statistics office's SPARQL >> endpoint [2], then projected to Mercator, converted to 2d polygons, >> smoothed them and then extruded as 3D walled meshes and exported as >> STL files using geom. To create that rendered image, another function >> then combined all borough meshes into a complete render scene for >> Luxrender (using the luxor lib). Since this all was for a 60sec >> animation, I also wrote the tweeny lib for that project to allow me to >> define the timeline for the various camera, mesh, light & shader >> changes. The whole bundle was then sent to EC2 and rendered on 340+ >> CPUs... basically, spawned a private render farm. >> >> Alternatively with < 30 lines of code you could query any UK >> constituency (or use similar endpoints for other countries), do those >> initial shape transformations and send the resulting STL mesh file >> straight to a 3D printer... For online use, of course the SVG or WebGL >> modules would be more interesting, but these really would just deal >> with that last transformation/visualization step, i.e. turning a >> thi.ng.geom.Polygon2 into an SVG <polygon> node or tesselate it and >> stuff it into WebGL buffer to display... >> >> For more flexible mapping, it'd be great to port some/all of the >> projections from [3] in its own clj lib for easier (and non-JS >> related) access... >> >> [1] http://thi.ng/img/04.jpg >> [2] http://statistics.data.gov.uk/doc/statistical-geography >> [3] https://github.com/d3/d3-geo-projection/ >> >> Hth! >> >> On 25 February 2015 at 22:34, Bruce Durling <b...@otfrom.com> wrote: >> > Karsten, >> > >> > Is there a reason why you went with a README.md and then an index.org >> > rather than a plain README.org? >> > >> > (love all the rest of it and loved your use of it at The Barbican. I >> > need to get my head around it all. I'm wondering if I can use it for >> > some of the geographic and other charting things I do a lot of). >> > >> > cheers, >> > Bruce >> > >> > On Wed, Feb 25, 2015 at 5:06 AM, 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 clojurescr...@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 clojurescr...@googlegroups.com. >> > Visit this group at http://groups.google.com/group/clojurescript. >> >> >> >> -- >> Karsten Schmidt >> http://postspectacular.com | http://toxiclibs.org | http://toxi.co.uk >> >> -- >> Note that posts from new members are moderated - please be patient with >> your first post. >> --- >> You received this message because you are subscribed to a topic in the >> Google Groups "ClojureScript" group. >> To unsubscribe from this topic, visit >> https://groups.google.com/d/topic/clojurescript/RlESPn4PHkM/unsubscribe. >> To unsubscribe from this group and all its topics, send an email to >> clojurescript+unsubscr...@googlegroups.com. >> To post to this group, send email to clojurescr...@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 clojurescr...@googlegroups.com. > Visit this group at http://groups.google.com/group/clojurescript. -- Karsten Schmidt http://postspectacular.com | http://toxiclibs.org | http://toxi.co.uk -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.