Hey! This thing is still a Work in Progress. Files, instructions, and other stuff might change!

Image to Halftone to Printable Object

by gwygonik, published

Image to Halftone to Printable Object by gwygonik Oct 13, 2012
0 Share
Download All Files

Thing Apps Enabled

Order This Printed View All Apps


Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

14356Views 2764Downloads Found in Art Tools


This is a Processing app that will load a JPEG or PNG, convert it to a halftone image (with many parameters), and output a STL[1] or OpenSCAD[2] file.

Make cool halftone coasters. Use them as plastic "rubber" stamps. Make art!

This app was a result of a question posed on the Makerbot Operators Google group, and was written in 10-12 hours over the course of a few days. Feel free to take it and add features or make a standalone app or whatever.

You can download the source as well as packaged executables for Windows, OSX, and Linux.[3]

DISCLAIMER: This app is presented as-is and does not come with ANY support. (No time for that here, sorry)

NOTE 1 - the resulting STL files MUST be run through a post-processing app like Netfabb to create printable models.

NOTE 2 - the resulting OpenSCAD files can take a REALLY LONG TIME to render in OpenSCAD before you can save a STL from there.

NOTE 3 - I've only tested the OSX executable (which works fine), but not the Windows or Linux ones. I've mostly run from source.


This Processing app is packaged as an Eclipse workspace folder, as that was what was used to develop it, as well as pre-packaged executable files for Windows, OSX, and Linux. Please note, this source package will not work in the Processing IDE -- you must use Eclipse!

Tracked source is available on github, or download the un-tracked packaged source with this "thing".

To run from source, you also need to download and install:

 Marius Watz's ModelBuilder library for Processing ( https://github.com/mariuswatz/modelbuilder - I used v0007a03)

 ControlP5 library ( http://code.google.com/p/controlp5/downloads/list - SPECIFICALLY v0.5.4)

I also used the handy Proclipsing tool ( http://code.google.com/p/proclipsing/ )

Add the project to your Eclipse workspace, and run HalftoneImageToSTL.

Alternatively, download one of the pre-compiled executables and launch HalftoneImageToSTL.

Once you get it running, load an image and adjust:

  • number of grid divisions
  • invert colors
  • reduce colors (pixelate) with variable amount
  • use fixed-height or variable-height halftone "dots" (each adjustable)
  • save as STL or OpenSCAD script

Note that the output file is sized to max-out a Thing-o-Matic HBP.

Have fun!

UPDATE v1.0.4

  • Fix from jcosmo that gets the app running on Windows
  • Disabled UI navigation while trying to load image

More from Art Tools

view more

All Apps

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Print through a distributed network of 3D printing enthusiasts from across the US, at a fraction of the cost of the competitors. We want to change the world for the better through technology, an...

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

3D Print a wide range of designs with Treatstock. Easy to use tools to get the perfect result. The global 3D printing network that connects you with high-quality and fast working print services nea...

App Info Launch App

Sorry folks -- it seems that the Windows executable may not work for everyone. :-(

I don't want to remove it unless it in case it's a Java or hardware-specific issue with only some machines. If anyone has a Windows machine to try to compile on from Eclipse, and test that exectuable, that would be awesome (see update with github source, or download main ZIP) :-)

This looks great, but does the windows executable does not appear to work.

 Please try the updated Windows exe (v104) :-)

windows version crashing after loading image. Java is autoupdating, so must be the latest,  windows7 x64

  Please try the updated Windows exe (v104)

Having problems getting this working, using the windows executable, my java application just crashes straight after loading an image, using latest java, jre 7u7 i586, any ideas please

  Please try the updated Windows exe (v104)

Thanks. I think i'm gonna try it out. I've been trying to get a pic of my dog on some stuff I'm printing out. I've been trying to draw him by putting tracing paper on the lcd screen and then drawing his outline using a series of cylinders generated as "primitive shapes" on netfabb. It's gonna take several hundred dots just to draw his outline and make a cartoon image of my dog. This may be more expedient than my method. BTW, is there an easier way to take a jpg image and turn it into a solid 3d printable file without having to use solidworks,scad, sketchup, etc? I dunno how to use those complicated programs. I'm more of a netfabb pro and tinkercadd type of guy. Thanks! You're a genius!

You might also want to look at Jetty's OmNomNom creator, which would allow you to take an image of your dog and make different types of objects - medallions, terrian-like 3D panels, etc.


OmNomNom Creator
by jetty

I'd add that post-processing, slicing, and printing these files takes a long time and a lot of processing power. I found that Miracle Grue slicer in RepG works way faster than SF50 (I have not tried Slic3r). OpenSCAD sometimes never returns from generating. This is a good proof of concept, but I don't know this is really a production-ready process.

Hey there. No worries about not fully getting what this does -- it is a little bit of a niche app.

Yes, latigerlilly, it does do almost exactly what you linked to. The difference being that this allows the B&W image (grayscale, actually) to not only change the size of "dots" in the halftone, but also the height if one wants.

MichaelAtOz, I'll upload a sample image and STL here shortly.

Err... color me stupid, but what does this do? I am guessing that it takes a jpg image and turns it into a black and white picture and then uses that black and white picture to somehow turn it into a 3d printable image like this:  http://www.tailormadecreation.com/components/com_vportfolio/images/2/94_clock4.jpghttp://www.tailormadecreation....

Could you please post an example JPG/PNG, the resultant STL and if possible a printed object? I'm having trouble visualising what it would be like.

 I posted a screen grab of the app converting a familiar logo into a model.

The top-right is the original JPG, the bottom-right is the converted image, and the middle is the 3D rendered model. I also posted a STL file (run through Netfabb) of the model that you could print, or use Thingiverse's rendering to get an idea of what it would be like.

I hope these help :-)

 Thanks. Pretty nifty!