Bitmap to Surface to Model

Bitmaps can be used as height fields for a 3D terrain. Typically, the brighter the pixel value, the higher the terrain at the location mapped to the pixel. A 3D grid such as a terrain model can be output as cross-sections and created in any convenient material. The Processing app included with this post will do the whole process for you: open a bitmap, display it as a terrain model, and output cross-section profiles to a PDF file. The profiles include slot marks. Once you cut out the profiles and the slots, you can fit everything together into a model. The model can be used to construct a mold for the surface.

Let me explain this with pictures. First, here’s what the assembled model looks like:

The assembled model

The assembled model

The Model

I used a heavy paper stock, 30 x 44 inches in size, and printed it on an Epson 9900. Large paper sizes require some careful positioning with the printer’s vacuum on, unlike smaller sheets, which can be dropped into place. You needn’t print at high resolution: 1440 dpi with high speed printing will do fine, and print much faster.

Profiles printed

Profiles printed on heavy paper

I cut the profiles out with a ruler and an Exacto knife. I could have cut the slots first, several at once in position on the paper, using a ruler on my drafting table. They were nicely lined up. ┬áIt might have saved some time. As it was, I cut them individually after the profiles. If you have a laser cutter, you can let it cut the profiles, but you’ll need to edit the slot geometry in the file to the right size for your material.

Profiles cut out

Profiles cut out, ready to cut slots

Then came the business of assembly. It was tricky to get all the slots aligned, but with careful rocking and a little patience, they slipped into place.

Partially assembled model

Partially assembled model

Finally, the model can be draped with plastic wrap or wax paper, then built up with modeling clay, wax, plaster or fiberglass on a cloth mesh. You could also fill the model itself, to produce part of a mold.

Model with draped cloth

Model with draped cloth

The Code

As to the Processing code, you’ll need to download it to get full functionality. You can’t export a PDF from your browser.

The application opens a grayscale bitmap like this:

Grayscale image

16 pixel square grayscale image

It reads the brightness of each pixel to produce a grid:

3D mesh

The 3D surface mesh

This grid is ┬áresult of the bitmap above. It has 16 lines horizontally and vertically, corresponding to the 16 x 16 pixel bitmap. If you download the code, you can type “p” to output the grid to a series of profiles in a PDF file:

Mesh surface profiles

Mesh surface profiles in PDF file

If you open the file in Adobe Illustrator, you can release the clipping mask (select all, then type command-option-7) and fill the profiles with white to get the appearance shown above. To print the profiles, I scaled them and rearranged them to print on large sheet of paper. I numbered the profiles to make assembly a little easier.

You can get the Processing file here.

0 Responses to “Bitmap to Surface to Model”


  • No Comments

Leave a Reply

You must be logged in to post a comment.