GitHub Adds 3D Modeling Features That Make It A Printer-Agnostic Choice For Object Sharing

Github, everyone’s favorite nerdery, added STL object file support – basically a system for uploading and rendering 3D models – in April. Now, however, they’ve improved their service with a system for finding the differences in subsequent versions of these 3D files, essentially adding an undo button to 3D modeling.

The system, as demonstrated here, takes two or more STL files and overlays them, allowing you to see the differences and changes over time. The GH folks write:

How does this work? We take both versions of the model, and using binary space partitioning, we compute the added, removed, and unchanged parts. This is done using csgtool, a C library paired with a Ruby gem via FFI. These pieces are cached and displayed by the 3D viewer we already have, though we color them differently and play with their transparency to help illustrate the changes.


You can see the revision slider in action here but basically it takes each version and then overlays over the next using some nice transitions. Not unlike code diffs – the processes of comparing two iterations of a piece of software – this gives you far more control over the design process and lets you see where someone screwed up (or did something amazing).

Unlike Thingiverse and YouMagine, however, Github is agnostic when it comes to printers and model types so it’s a safe place for almost every printer user to play and work.