Hello LuBan Manual
Hello LuBan Manual
Hello LuBan Manual
Hello LuBan
Contents
1 Introduction 4
1.1 Download LuBan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 Install LuBan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.1 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.2 Mac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.2.3 Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.1 License file MU License.dat . . . . . . . . . . . . . . . . . . . . . 6
1.3.2 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1.3.3 Mac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3.4 Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.5 Change of a License ID . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 Update LuBan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.5 Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.6 Setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.7 Window frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.8 Hit the Enter key to update display . . . . . . . . . . . . . . . . . . . . . 11
2 Lithophane 13
2.1 Positive vs. Negative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Exterior vs. Interior . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
2.3 Model size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4 Min Max thickness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.5 Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.6 File size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.7 Border . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.8 Base and Socket . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.9 Hanger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.10 Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.11 Backlight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1
CONTENTS Hello LuBan
3 Photo magic 43
3.1 Balloon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3.2 Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.2.1 Inner vs. Outer size . . . . . . . . . . . . . . . . . . . . . . . . . 44
3.2.2 Base, lid, and box size . . . . . . . . . . . . . . . . . . . . . . . . 45
3.2.3 Lid type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.2.4 Inner pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.2.5 Nested box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.2.6 Edge chamfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2
CONTENTS Hello LuBan
3.2.7 Tolerance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.2.8 Box light . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.2.9 Box lithophane . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.3 Cutter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.3.1 Flip photo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.3.2 Photo vs. Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.3.3 Inner size X, Y, Z . . . . . . . . . . . . . . . . . . . . . . . . . . 56
3.3.4 Inner pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.3.5 Blade, Cutter, and Base . . . . . . . . . . . . . . . . . . . . . . . 58
3.3.6 Base hole . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.3.7 Edge chamfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.3.8 Relief cutter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3
Hello LuBan
1 Introduction
LuBan is generative design software that helps designers and makers in rapid production
of their creations. LuBan automatically generates 3D models in various forms, such as
lithophane, cookie cutter, extrusion, stack, hash, plate, relief, module, and wireframe.
The generated models can be fabricated by 3D printing, laser cutting, and CNC milling.
The most widely used LuBan functions are grouped in four clusters.
Mesh → Cut
Cut a model into smaller parts.
Mesh → LuBan
Convert a 3D model to various forms of new 3D models.
Email: luban3d@gmail.com
4
1.2 Install LuBan Hello LuBan
If you have downloaded LuBan.exe, you can run LuBan without any installation. If
you have downloaded setup.msi, you can double click the file to install LuBan on your
computer. By default, LuBan will be installed in “C:\Program Files (x86)\LuBan”,
together with a license file and some language folders.
Note that the folder “Program Files (x86)” does not necessarily suggest that LuBan.exe
is Win 32 version. If fact, both Win 32 and Win 64 LuBan.exe will be installed under
that folder.
1.2.2 Mac
Double click LuBan.dmg to install LuBan app, which can then be placed in any folder.
By default, it is placed in the Mac OS’s Applications folder.
1.2.3 Linux
The LuBan file downloaded can be run from command line and no installation is needed.
In a Terminal program, use cd command to browse to the folder that contains LuBan;
then type ./LuBan and hit Enter to run LuBan.
1.3 License
LuBan license is an ID that uniquely identifies a computer. It can be read from LuBan
“Help → About” dialogue box (Figure 2).
There are several types of licenses.
Unregistered license: A computer can run LuBan to process and view data while
saving of processed results is limited to small-sized files, not larger than 5MB.
5
1.3 License Hello LuBan
A permanent license dose not require internet connection when running LuBan, while
a timed license does.
A license file MU License.dat that stores all registered license IDs is placed in the same
folder that contains the LuBan application. To register an ID, please follow instructions
at www.luban3d.com/license and send relevant information using a web form. Within
48 hours, a LuBan developer will add the ID to MU License.dat and update the file in the
LuBan Dropbox and Google drive download folder, the “License” sub-folder. You will be
informed by email when the updated license file is ready for download.
1.3.2 Windows
After downloading the updated MU License.dat, place it in the same folder as the LuBan
application. If there is an existing license file in the folder, overwrite it with the new one.
(You may have to do this with an administrator account.)
Then run LuBan.exe and go to “Help → About” to check the expiration date. An
updated date should be shown. If the expiration text box still shows Unlicensed or an old
date, you may have encountered the following situations.
1. Wrong ID
If you type the ID and send to LuBan email, there can be typos. Same applies to
sending a screenshot of the ID, not the plain text. It is best to select the ID, copy
it, and paste it to an email. The entire line of the ID with the brackets and the OS
information should be included.
6
1.3 License Hello LuBan
3. Wrong location
The license file must be placed together with LuBan.exe in the same folder. Do not
place the license file in a sub-folder. See an example in Figure 4.
4. False download
An internet browser may not actually download the latest copy of MU License.dat
but gives you a local cached copy, which has not included your computer’s license
ID. To fix the problem, clear the history of the internet browser and download again.
1.3.3 Mac
On Mac OS the actual LuBan application is hidden in a LuBan package icon. You may
right click on the icon and select Show Package Contents. That will show you the internal
7
1.3 License Hello LuBan
Figure 4: Left: correct location. Right: wrong location. The license file is placed in a sub-folder named
License.
folder structure of the package. Enter “Contents” folder and then “MacOS” folder. Copy
the downloaded license file to the “MacOS” folder and overwrite the existing file.
Sometimes, Mac OS may prevent you from changing a file in a package. If that happens,
you need to obtain the permission by the following steps.
1. Open Finder, select your home folder. View the information with the Apply key or
with a secondary click and select “Get Info”.
2. In a popup menu, select “Sharing & Permissions” section and then click on the
padlock icon at the bottom right.
3. Enter the password of your user session, then click on the cogwheel on the left
and choose the “Apply to included items” option. Wait till the operation is complete.
Depending on the number of folders and files in your home folder, this may take a little
while.
4. Open the Terminal application and enter this command:
diskutil resetUserPermissions / ’id -u’
Wait till the end of the operation, which can also take some time.
1.3.4 Linux
Similar to Windows.
Computer failure
8
1.4 Update LuBan Hello LuBan
LuBan is under active development. At the time of writing, it does not have an auto-
updating feature. To update LuBan, please delete LuBan.exe or uninstall LuBan, then
download the latest version from LuBan Dropbox or Google drive download folder (Sec-
tion 1.2). In each new release of LuBan, the latest license file is included in the installer:
setup.msi (Windows) and LuBan.dmg (Mac); however, if you update LuBan by down-
loading LuBan.exe directly, you should keep a copy of your license file. If you lose the file,
you may download it from the License folder in LuBan Dropbox or Google drive share
folder.
1.5 Language
LuBan can be set to display in several languages. (On Linux, only English is available
for now.) Except for English, each language is stored in a folder (Figure 5).
English
French, folder fr FR
German, folder de DE
Greek, folder el GR
Italian, folder it IT
Lithuanian, folder lt LT
9
1.6 Setting Hello LuBan
Malay, folder ms MY
Polish, folder pl PL
Russian, folder ru RU
Slovak, folder sk SK
Slovenian, folder sl SI
Spanish, folder es ES
Thai, folder th TH
The language folders are automatically installed on Mac or using the setup.msi file on
Windows. If you directly downloaded LuBan.exe on Windows and hope to use a non-
English language, you should download the corresponding language folder from LuBan
Dropbox or Google drive Win 32 or Win 64 folder. A language folder is often downloaded
as a zip file. Unzip it after the download and make sure the folder name is exactly same
as shown in the above list.
Then place the folder together with LuBan.exe as shown in Figure 5. Do not move
an MU.mo file out of the folder. When done, run LuBan and go to “Help → Language”.
Select the language that you hope to display.
1.6 Setting
LuBan settings, such as background color and parameters in many functions, are stored
in a MU Setting.txt file, located in the same folder as the LuBan application. When
LuBan starts, it will load the settings. If no setting file can be found, LuBan will apply
the default settings.
On Windows, if you installed LuBan from setup.msi, you should run LuBan by right
click LuBan.exe and select “Run as administrator” at least once (Figure 6). This will
10
1.7 Window frame Hello LuBan
ensure that LuBan has the permission to read the setting file located in the system folder
“C:\Program Files (x86)\LuBan”.
LuBan has a 2D and a 3D window frame with completely different menu items (Figure 7).
The 2D window is focused on image processing and the 3D window is focused on mesh
processing. When LuBan starts, the 3D window will be show by default. The two types
of windows can be switched by “File → Invoke 2/3D window”.
The major functions of LuBan have a graphical user interface (GUI) similar to that shown
in Figure 8. The left area is a control panel and the right area shows a 3D display of a
generated model.
The control panel can have many kind of settings, such as drop-down lists, radio
buttons, check boxes, spin buttons, and text boxes. When you change a selection, the
11
1.8 Hit the Enter key to update display Hello LuBan
display on the right area will be updated automatically with one exception: changes in a
text box will not trigger an automatic update.
To reflect changes in a text box, you should hit the Enter (or Return) key to update
the display (Figure 9). The Enter key carries the same purpose as an “Apply” button.
The GUI of LuBan is designed with a style of simplicity and it tries to avoid redundancy;
therefore, there is no “Apply” button.
12
Hello LuBan
2 Lithophane
A positive lithophane resembles the intensity distribution of the original photo. A negative
lithophane inverses the intensity similar to a negative photo (Figure 11).
Figure 11: Left: original photo. Center: positive lithophane. Right: negative lithophane.
13
2.2 Exterior vs. Interior Hello LuBan
A lithophane has a rough surface and a smooth surface (Figure 12). The thickness varia-
tion between the two surfaces causes different amount of light to penetrate the lithophane
and to produce an image. An exterior lithophane has its rough surface facing a viewer
and its smooth surface facing the light source, while an interior lithophane has the two
surfaces reversed.
In general, an exterior lithophane looks sharper than an interior one (Figure 13). This
has to do with how light scatters through the material. However, using some special
Figure 13: Left: rough surface facing the viewer. Right: smooth surface facing the viewer. Made by
LuBan user, Jelle Van Regenmortel.
filament, an interior lithophane can be sharp (Figure 14). While an exterior lithophane
Figure 14: An interior lithophane trophy made by LuBan user, Rob Dorward, using Eryone silk silver
filament. The min and max thickness of the lithophane is 0.6 and 2.4 mm respectively.
14
2.3 Model size Hello LuBan
might still be sharper, the difference is small. The advantage of the interior lithophane
is that it has a surprising impact on a viewer as he only sees a smooth surface without
backlight.
In LuBan, you may find that the rendering of an interior lithophane is better than
an exterior one. That is only a rendering issue! Computer graphics rendering cannot
fully simulate the actual physical process; therefore, the rendering on a smooth surface
(interior) looks better than on a rough surface (exterior).
The model size of a lithophane in X, Y, and Z directions can be set in text boxes. Af-
ter changing a value in a text box, you must hit the Enter key to update the display
(Figure 15). This is equivalent to clicking an “Apply” button in some other software.
Figure 15: Model size text boxes. Hitting the Enter key to update the display is required in LuBan when
changing a value in a text box.
The minimum and maximum thickness settings determine the overall thickness of a litho-
phane. A relative thick lithophane is strong while requires a strong light source for
viewing. The bigger the depth variation, the higher the contrast of the lithophane but
the more likely that support is needed when printing the lithophane.
0.
0.
0.
4,
4,
4,
8,
8,
8,
9
2
Figure 16: From left to right the Min, Max thickness of the lithophane is (0.8, 2), (0.8, 3), (0.8, 4), (4,
5), (4, 7), and (4, 9).
15
2.5 Resolution Hello LuBan
2.5 Resolution
The resolution determines the level of details on a lithophane. A small resolution value
indicates high resolution in common sense as the unit of resolution is millimeter per pixel
(Figure 17).
Figure 17: From left to right the resolution of the lithophane is 0.1, 0.5, and 2.5 mm/pixel.
A small resolution leads to a large model file. To reduce the file size, increase the reso-
lution value. (Hit the Enter key to update the display.) Although a 3D model file size can
also be reduced by mesh simplification using “Mesh → Simplify”, it is not recommended
for a lithophane model since mesh simplification will result in non-uniform resolution and
the process is time consuming.
Based on a resolution value, you may roughly calculate the desired image resolution
in X direction: Image size X = Model size X / Resolution. For example, Model size X is
50 mm and Resolution is 0.1. The desired image size X is 50/0.1 = 500 pixels.
In practice, it is not necessary to set the resolution value too small because (1) an input
image’s resolution may not be high enough, and (2) a 3D printer’s or a CNC machine’s
resolution may not be high enough. Details finer than a machine’s resolution cannot be
printed or fabricated.
The file size setting is readable only; it predicts a lithophane model’s file size on disk.
One of the most effective methods in reducing the file size is to increase the value of the
Resolution setting. (Hit the Enter key to update the display.)
2.7 Border
A border can be optionally generated on a lithophane. If a border size text box is set to
0 (hit Enter after the change), no border will be generated on the lithophane (Figure 18).
If the border size is a positive value and a dark border is selected, you will see another
text box to set the border thickness, which must be larger than the Max thickness by 5%.
16
2.8 Base and Socket Hello LuBan
Figure 18: From left to right, no border, light border, and dark border.
Several lithophane shapes have an option to enable a base, which may be used to integrate
a light socket. The base and light socket will be further described in the section of each
lithophane shape.
2.9 Hanger
Several lithophane shapes have an option to generate a hanger, which may allow the
lithophane to be used as a hanging photo or a hanging lamp shade (Figure 19). The
hanger hole size is customizable.
2.10 Support
Support is useful when printing a large Flat or Arc lithophane (Figure 21). Printer
vibration and extruder movement may cause a large lithophane to shake, which results in
undesired artifects. The support is designed to reduce such effects so as to maintain the
quality of the print.
17
2.11 Backlight Hello LuBan
Figure 20: Hanger used as a key chain hole. Made by LuBan user, Kevin Lems.
Figure 21: Flat lithophane support attached and detached. Made by LuBan user, Mitchell Rabushka.
2.11 Backlight
Figure 22: From left to right: Backlight simulation in LuBan, a real print with backlight, and the real
printing without backlight, Made by LuBan user, Steve McGarr.
Click the “Save model” button at the bottom of the control panel to save a lithophane
model to an export folder. The folder name will be automatically generated based on
the input photo’s file name and the time stamp when the button is clicked. Here is an
18
2.13 Flat lithophane Hello LuBan
example, a photo named “family” is loaded to the lithophane function. After saving
the model, you will find a folder named something like “family LP Arc 10-25-29”. “LP”
stands for lithophane; “Arc” indicates that it is an arc lithophane; “10-25-29” is the time
stamp, at 10:25 AM, 29 seconds. In the folder, there are several files.
Color 46 46.jpg
A color image for making a color lithophane. More in Section 2.22.
family LP Model.stl
The lithophane model in STL format.
family Setting.txt
Human readable settings used to generate the lithophane.
MU Setting.txt
LuBan setting file. If you hope to roll back to the settings used in an old project, you
can copy this file and place it in the folder that contains LuBan application. There
should be a default setting file in that folder, which can be overwritten by the file
from the old project. Then, restart LuBan; all settings will be rolled back.
The model size X and Z can be set to any desired value; however, the aspect ratio of the
lithophane is fixed to the aspect ratio of the input photo. That means when the model
size X is changed and the Enter key is hit to update the display, the model size Z will be
changed accordingly to maintain the same aspect ratio, and vice versa.
For example, if you want a 100 by 50 mm flat lithophane, the aspect ratio of your image
must be 100/50 = 2. In other words, the width of the image should be twice its height.
You may use any image editor to prepare the input image. To prepare it in LuBan, you
may do the following.
1. Run LuBan.
19
2.13 Flat lithophane Hello LuBan
4. Tool → Body → Crop. Use the mouse device to select two points on the image to
define a region to crop. A dialogue box will show the coordinates of the region as x1
y1 x2 y2 (Figure 23). (x1, y1) is the left-top corner and (x2, y2) is the right-bottom
corner. x2 − x1 is the width and y2 − y1 is the height of the region. You can modify
the coordinates so that width/height is 2.
5. File → Export → BMP, JPG, or PNG. Save the cropped image and use it to generate
a flat lithophane. The lithophane’s aspect ratio will also be 2.
2.13.2 Slant
A slant angle can be applied to a flat lithophane to orient it to a top-down viewing angle
(Figure 24). When printing such a lithophane, it may be better to make the lithophane
surface vertical instead. That is why when you click the “Save model” button, LuBan
will rotate the lithophane back to the vertical position. Although some support is needed
under a base, the printing quality of the lithophane should be better then doing it at an
angle.
Figure 24: Left: Slant angle 20 degrees. Right: When printing, the lithophane can be oriented vertically.
20
2.14 Arc lithophane Hello LuBan
The base of a flat lithophane is a stand that extends towards the back. The base can be
hidden by setting the base length to 0. (Hit the Enter key to update the display.) If the
base length is non-zero, you can configure the thickness of the base (Figure 25) as well as
a socket for adapting to a light source.
Figure 25: From left to right: no base (base length 0), base length 30 mm and thickness 4 mm, and base
thickness 8 mm.
A socket is generated if both the base length and the socket diameter are non-zero
(Figure 26). You may choose to generate an O-shape or a U-shape socket. If the O-shape
is chosen, you can configure the socket height.
Figure 26: From left to right: O-shape socket height 10 mm, O-shape socket height 20 mm, and U-shape
socket.
An arc lithophane is a warped flat lithophane. They share all settings except that the
model size X in the flat lithophane is replaced by the arc angle (Figure 27). In addition,
the arc lithophane has an option of exterior vs. interior. The convex surface is the exterior
surface and the concave surface is the interior surface.
As you can see in Figure 27, rendering of the interior lithophanes look better than
the exterior ones; however, the actual print will show sharper pictures on the exterior
lithophanes. This is a topic that has been discussed in Section 2.2. For this reason, some
21
2.15 Poly-face lithophanes Hello LuBan
Figure 27: First row: exterior lithophanes. Second row: interior lithophanes. From the first to the third
column: arc angle 30, 90, and 120 degrees.
LuBan users prefer to adjust settings based on the display of an interior lithophane; then
switch to an exterior lithophane right before saving the model as disk files.
Poly-face lithophanes are rectangle, hexagon, octagon, and dodecagon lithophanes. They
share most of the settings. The model size X, Y, and Z of a rectangle lithophane can be
independently set, while the model size Y of the other poly-face lithophanes is determined
by the model size X and the number of faces.
Unlike the flat and arc lithophanes which adjust the model size to include an entire
photo, the poly-face lithophanes automatically crop from the center of a photo to adapt
to the size of a face dictated by the model size. Changing the model size of a poly-face
lithophane may change the region of the photo to include (Figure 28).
The select photo button can be used to select one or several photos. LuBan will order
the photos based on their file names and sequentially apply them on each face of a poly-
face lithophane. For example, four photos named: p1.jpg, p2.jpg, p3.jpg, and p4.jpg are
selected. After seeing the display, you hope to swap the second and third photos. You
can do so by swapping the file name of p2.jpg and p3.jpg, and then use the select photo
button to select the four photos again.
In some situations, you may want to apply photos on certain faces and keep other faces
22
2.15 Poly-face lithophanes Hello LuBan
Figure 28: Left: a flat lithophane shows the entire photo. Center: a rectangle lithophane crops a central
region from the photo to adapt to the size of a face. Right: changing the model size also changes the
region of the photo to be included.
empty. To achieve this, you can create a white image with a thin black border (Figure 29)
and name all the photos according to a desired face sequence.
Figure 29: Left: a white image with a thin black border. Right: a lithophane with an empty face
corresponding to the image.
Photos on a poly-face lithophane can be oriented upright or inverted. The upright option
enables the lithophane to sit on a lamp, whereas the inverted option assumes that the
lithophane will be hung upside down (Figure 30).
Figure 30: Left: upright photos. Center: inverted photos. Right: when hung upside down, the inverted
photos are back to upright.
23
2.16 Cylinder, Cone, and Vase lithophanes Hello LuBan
Figure 31: Left: one body. Center: assembly. Right: an exploded view of assembly. To enable the
exploded view, use “Object → Select”.
To facilitate the physical assembly, a setting called tolerance is used to adjust the fitness
of the single-face lithophanes with the slots. The tolerance is defaulted to a negative value,
e.g. -0.3, meaning a slot is expanded by 0.3 mm on both sides. In 3D printing, it is likely
that a printed object is a bit bigger than its digital model due to a printed shell around the
object. This effect tends to make a slot narrower; hence, the expansion of the slots helps
to fit the lithophanes in. If you find the printed slots are too tight, you should reduce
the tolerance, for example from -0.3 to -0.4, in your next print. If they are too loose, you
should increase the tolerance, for example from -0.3 to -0.2. The “best” tolerance value
varies with different printers and printing profiles; therefore, the best value can only be
found through trial and error.
Cylinder, Cone, and Vase lithophanes are revolving shapes around a vertical axis. The
flexibility of these shapes increases: a cylinder has a fixed diameter, a cone has a top and
a bottom diameters, and a vase has varying diameters controlled by several sliders.
More than one photos can be selected and applied to these lithophanes. Just click the
“Select photo” button and select several photos in one go.
The Fixed vs. Stretch option refers to whether a photo maintains a fixed aspect ratio
or is stretched when mapped to the surface of a cylinder, a cone, or a vase (Figure 33).
24
2.16 Cylinder, Cone, and Vase lithophanes Hello LuBan
In the fixed mode, LuBan automatically adds a gap between photos or extends the top
Figure 33: First row: fixed aspect-ratio photos. Second row: stretched photos. First column: the height
of the cone is 50 mm. Second column: the height is 70 mm. Third column: the height is 90 mm.
and bottom border so that the photo’s aspect ratio is preserved. Please note that when
mapping a rectangle photo to a cone or a vase, regional distortion is inevitable. The fixed
mode only preserves the average aspect ratio and does not deal with the distortion.
In both modes, LuBan may duplicate the photos to preserve the original aspect ratio
as much as possible (Figure 34). To prevent duplication, you may crop the input photo
so that its width / height is roughly the average perimeter / the height of the lithophane
(Figure 35).
25
2.16 Cylinder, Cone, and Vase lithophanes Hello LuBan
Figure 34: Left: original photo. Center: fixed mode. Right: Stretch mode.
Figure 35: Left: original photo. Center: fixed mode. Right: Stretch mode.
The base of the cylinder, cone, and vase lithophane can be solid or hollow (Figure 36).
If the solid option is selected, a watertight lithophane will be produced. You may pour
water into the lithophane and drop some waterproof LED light in it to light it up. If the
hollow option is selected, you may optionally enable a light socket by entering a non-zero
socket diameter. The socket height can be separately set. These settings are useful to
make a standing lamp shade. If you want to make a hanging lamp shade, you may explore
the inverted option as discussed in Section 2.15.2.
Figure 36: Left: solid base. Center: hollow base. Right: hollow base with a light socket.
26
2.17 Sphere lithophane Hello LuBan
Figure 37: Left: an exterior sphere lithophane with its opening facing downward. Right: an interior
sphere lithophane with its opening facing upward.
Should the opening be faced downward or upward when printing the lithophane?
A comprehensive answer is a bit long. Firstly, if you can print it without support, either
orientation could be fine. If support is needed, an exterior sphere lithophane should be
printed with the opening facing downward; an interior sphere lithophane should be printed
with the opening facing upward. Exactly as it is shown in Figure 37.
Why? The key to the answer lies in the fact that the support should not be directly in
contact with the rough surface of the lithophane because it carries fine-scale and delicate
structures that can be damaged when removing the support. In contrast, the smooth
surface has no fine-scale structures; when removing the support attached to it, the surface
quality is not compromised. If the opening of a sphere faces downward, support is needed
from a printer bed to the top of the inner surface. This orientation is suitable for an
exterior sphere lithophane as the rough surface is on the outside and the support is only
in contact with the inner smooth surface. If the opening of the sphere faces upward,
support is needed from the printer bed to the bottom, outer surface of the sphere. This
orientation is suitable for an interior sphere lithophane.
That explains why the orientation of the sphere lithophane is reversed when you switch
between the exterior and interior options.
The photo alignment setting determines the orientation of a photo with respect to a
sphere. The first option aligns the top of the photo to the center of the sphere (the first
row of Figure 38). This should be selected if the sphere lithophane is used as a standing
lamp shade where a light source is attached to the bottom opening of the sphere.
Mapping the bottom of the photo to the center of the sphere is equivalent to inverting
27
2.17 Sphere lithophane Hello LuBan
Photo center
Photo center
Bottom offset
Figure 38: Top row: photo top to sphere surface center. Second row; photo bottom to sphere surface
center. Third row: top and bottom offset set to 0.5.
the photo (the second row of Figure 38). This option should be selected if the sphere
lithophane is used as a hanging lamp shade. In the above two alignment options, you
can set a top and bottom offset to confine the photo to a central band on the sphere (the
third row of Figure 38). This helps to reduce the photo distortion on the sphere. The
offset value should be between 0 and 1.
It is also possible to map the center of the photo to the center of the sphere (Figure 39).
In this case, only a central circular region of the photo is mapped to the sphere lithophane.
This option often produces large distortion on a normal photo; however, it is useful in
mapping a special-effect photo to the sphere lithophane (Figure 39).
Figures shown in this section are based on an exterior sphere lithophane. If the interior
option is selected, the orientation of the sphere is reversed.
It is important to note that the sphere lithophane only takes one photo. To apply
multiple photos on a sphere, you need to join the photos to a big one and use it in the
28
2.17 Sphere lithophane Hello LuBan
Figure 39: First row: photo center to sphere surface center. Only the circular region of the photo is
mapped to the sphere. Other regions are not used. Second row: a special-effect photo.
sphere lithophane. You may use any image processing software to join the photos. LuBan
can also do this in the following process.
1. Run LuBan.
4. Tool → Body → Join <left, right> or Join <top, bottom>. Use the mouse device
to select the two images.
To join more than two photos, just repeat the above process. When done, use “File →
Export → BMP, JPG, or PNG” to save the joined image. You may also try an alternative
function “File → Create → Collage” to put several images in one big picture.
The sphere lithophane also tries to maintain the aspect ratio of a photo in similar ways
as the cylinder, cone, and vase lithophanes. That means a photo may be duplicated. If
you do not want the duplication, you should make the photo’s width/height roughly 3:1.
The sphere angle, diameter, and the opening diameter are interrelated parameters (Fig-
ure 40); therefore, not all three can be set independently. The sphere angle and diameter
can be user specified (hit the Enter key to update the display), based on which the opening
diameter is calculated and displayed. The opening diameter is proportional to the sphere
diameter. Assuming the sphere angle is larger than 180 degrees, reducing the sphere angle
29
2.18 Spiral lithophane Hello LuBan
will increase the opening diameter. In most situations, you do not need to directly deal
with the opening diameter as you can use a socket to adapt a sphere lithophane to a light
source.
Sphere angle
eter
diam
Opening
diameter
2.17.3 Socket
A socket is enabled when the socket diameter is non-zero. The socket diameter is the
inner diameter of the socket and should be less than the opening diameter; otherwise, you
will see a warning when hitting the Enter key to update the display. The base thickness
and socket height can be used to configure the socket as shown in Figure 41.
Figure 41: Left: sphere angle: 300 degrees, diameter: 100, base thickness: 4, socket diameter: 50, socket
height: 10. Center left: the socket diameter is changed to 30. Center-right: the socket height is changed
to 30. Right: the base thickness is changed to 10.
A spiral lithophane is for printing a long flat lithophane. For example, a 500 by 50 mm
flat lithophane may be too long to fit in a printer’s volume; instead, a spiral lithophane
of diameter 90 mm can fit in. After printing, the spiral lithophane can be dipped in hot
water to soften it and then unfold it to a flat lithophane (Figure 42).
The diameter of a spiral lithophane can be user specified. If the specified value is
too small to generate a spiral to accommodate a photo, a warning will be shown. In
practice, the diameter should be set to a value as large as possible because the larger the
30
2.19 Balloon lithophane Hello LuBan
Figure 42: First row: an input photo. Second: a spiral lithophane and an unfolded spiral lithophane.
diameter, the smaller the curvature of a spiral and the easier it is to unfold and flatten
the lithophane.
Figure 43: The left image shows a heart-shaped template. The central white region is converted to a
balloon. The right image shows a black heart template. The surrounding region is converted to a balloon.
Up to two photos can be selected to map to the front and back surface of a balloon
lithophane (Figure 44). The photos are ordered by their file names. If only one photo is
selected, the front and back surface will show the same photo.
The balloon lithophane does not have a socket option. To insert a light socket, other
software, such as MeshMixer, needs to be used. The approach is to intersect a balloon
lithophane exported from LuBan with a cylinder tube. The resultant mesh is the balloon
with the tube as an open socket.
2.19.1 Expansion
The expansion setting determines how much to blow up the balloon. The larger the value,
the more blown up is the balloon (Figure 45). If you hope to have a double-sided flat
lithophane, you can input a small non-zero value, such as 0.01.
31
2.19 Balloon lithophane Hello LuBan
Figure 45: From left to right, the expansion values are 0.2, 1, and 2.
Between the front and back surface of a balloon, there is a default space, which is often
very small. Sometimes, in order to insert a light socket you may add some space using
the extra space setting (Figure 46).
Figure 46: From left to right, the extra space values are 0, 10, and 20.
The photo center X and Y settings are used to position a photo on a balloon (Figure 47).
32
2.19 Balloon lithophane Hello LuBan
Figure 47: From left to right, the photo center X and Y are (0, 0), (0.1, 0), and (0, 0.2).
A balloon lithophane can be made in the shape of an object and when illuminated by a
light source inside, it shows a picture of the object (Figure 48). This section shows how
to create such a balloon object.
Figure 48: Balloon lithophane of a motorcycle made by LuBan user, Cyril Burnet.
Take a photo of a lotus as an example. The first step is to extract a template of the
lotus. You may do this in any image processing software, such as Photoshop. Then, you
may generate a balloon lithophane using the template and the original photo. It is most
likely that you will get something similar to what is shown in Figure 49. The results are
not optimal because the lotus has a dark boundary and does not match the balloon shape
perfectly. To fix the problem, we need to crop the lotus from the photo such that it does
not have extra boundary pixels.
1. Run LuBan.
4. Tool → Geometry → Labeling. A dialogue box will appear; just use the default
parameters and click OK. A new labeling image will be generated, which can be closed
as we are only interested in the blue rectangle added to the template (Figure 50).
33
2.19 Balloon lithophane Hello LuBan
Figure 49: Left: a photo of a lotus. Center: a balloon template of the lotus. Right: a balloon lithophane
of the lotus by directly using the photo and the template.
Figure 50: Left: coordinates of the light blue rectangle. Center: the template of the lotus. Right: a
labeling image that can be ignored.
5. Right click the rectangle and select Properties. On the properties dialogue box, copy
the coordinates.
7. Tool → Body → Crop. Use the mouse device to select any two points on the photo.
They do not have to accurately define the lotus region. A dialogue box will show
the coordinates of the selected region. Overwrite the coordinates by pasting those
copied from the light blue rectangle (Figure 51). A new photo will be created which
is in the exact size that we want.
Figure 51: Left: the original photo. Center: a cropping dialogue box. Paste the coordinates of the light
blue rectangle here. Right: a cropped photo.
34
2.20 Tattoo lithophane Hello LuBan
Finally, generate a ballon lithophane based on the template and the cropped photo.
The photo of the lotus will match the shape of the lithophane exactly (Figure 52)!
Figure 52: A balloon lithophane of the lotus, in which the photo of the lotus matches the balloon shape
perfectly. Changing the filament color can produce vivid rendering effects.
The idea of a tattoo lithophane is to apply a photo on any 3D model. The photo is
mapped to the model’s surface continuously (Figure 53). Unlike a balloon lithophane,
there is no gap between the front and back surface. In fact, a tattoo lithophane does not
have front and back. It only has an axis, about which a photo is wrapped around.
Figure 53: Top: a photo and a 3D model. Bottom: a tattoon lithophane based on the photo and model.
35
2.20 Tattoo lithophane Hello LuBan
The axis to wrap a photo around determines the orientation of the photo on a 3D model.
Figure 54 shows a photo of an arrow to be applied on a sphere model. Six possible options
are shown in Figure 55.
50
Z
50 50
Z
50
Z
50 50
Z
Figure 55: From left to right and top to bottom: wrap the photo around +X, -X, +Y, -Y, +Z, and -Z
axis.
2.20.2 Resolution
The resolution is default to 0.1 mm/pixel in all shapes of lithophane except for the tattoo
lithophane, where it is default to 10 mm/pixel. That is because a tattoo lithophane is
36
2.21 Arbitrary-shaped flat lithophane Hello LuBan
10 1 0.2
Figure 56: Left to right: resolution value is 10, 1, and 0.2 mm/pixel. The corresponding file size is 1 MB,
8 MB, and 190 MB.
It is important to note that if the input model is high density, it will be time consuming
to generate a tattoo lithophane even with a large resolution value; therefore, it is best
to use 3D models that are relatively smooth and low density. You can view a model’s
vertices and edges by “Edit → Edge → Enable”.
The center X and Y settings are used to position a photo on a model. The X value moves
the photo around the axis and the Y value moves the photo up and down (Figure 57).
The photo scale settings changes the scaling factor of the photo in horizontal and vertical
directions (Figure 58).
An arbitrary-shaped flat lithophane can be made based on a photo and a template. The
template is a black and white image, in which black pixels indicate background and white
pixels indicate regions of the lithohpane (Figure 59).
1. Run LuBan.
37
2.21 Arbitrary-shaped flat lithophane Hello LuBan
Figure 57: Left top: a photo applied on a heart model. Right top: center X and Y are both 0. Left
bottom: center X is 0.1 and Y is 0. Right bottom: center X and Y are both 0.1.
Figure 58: Left: photo scale X is 1.2 and Y is 1. Right bottom: photo scale X is 1.2 and Y is 0.8.
4. Tool → Data → Linear transform. Input “0 223” in a dialogue box. This ensures
that no pixel’s intensity is close to 255, which will be used as the intensity of a base
plane.
5. Tool → Report → Statistics. The width and height of the photo, along with other
information, are shown on the top left corner.
7. Tool → Body → Resize. Enter the width and height of the photo. Click OK and
a new template image is created with the same size as that of the photo. Close the
original template image.
38
2.21 Arbitrary-shaped flat lithophane Hello LuBan
Figure 59: Left: a photo. Center: a template. Right: mask the photo by the template.
9. Tool → Data → Set mask value. Click on the photo and click OK to confirm; then
click on the template and click OK to confirm. In the dialogue box, input “255 255
255” and click OK. This will mask the photo by the template and the background
pixels are set to white.
10. File → Export → BMP, JPG, or PNG, save the masked photo, which should look
like the rightmost image of Figure 59.
Next, generate a flat lithophane in LuBan; make sure that (1) the shape is flat, (2) use
positive, (3) the slant angle is 0, (4) the border size is 0, (5) the base length is 0, (6) no
hanger, and (7) no support. Then, apply “Mesh → Cut” to cut off the base plane. The
39
2.22 Color lithophane Hello LuBan
cyan cutting plane should be positioned to just cut off the base and to avoid cutting the
main body of the lithophane (Figure 60). The resultant lithophane is shown in Figure 61.
One of the approaches to make a color lithophane is to attach a color photo to the back of a
lithophane. When illuminated, the color photo works as a color filter and the lithophane
modulates the intensity. Since the color photo is supposed to transmit light and only
filters out certain color, it is recommended to use transparent paper to print the color
photo on, although normal white paper may also work if a light source is strong.
Figure 62: A color photo of a cone (top), a vase (center), and a sphere (bottom):
All lithophane shapes except for balloon and tattoo have a color photo generated in
an export folder. The color photo’s physical size is included in its file name; for example,
“Color 105 86.jpg” indicates that the photo’s size is 105 by 86 mm. You should use
software such as MS Word to resize the photo to the indicated size before printing. Note
40
2.23 Tips for 3D printing lithophane Hello LuBan
that this may not be fixed aspect ratio resizing as the photo’s aspect ratio in pixel may
be different from that in millimeter.
A generated color photo may not be a rectangle (Figure 62). The size indicated in its
file name is the size of a bounding rectangle. After printing, the color photo should be cut
along the edges of the irregular pattern and then attach to the back of its corresponding
lithophane. For a full sphere lithophane, you have to generate two semi-spheres, attach
the color photo, and glue the two semi-spheres together.
A color photo generated will look quite different from the original photo (Figure 63).
The intensity component of the photo has been removed as much as possible because the
lithophane’s thickness is responsible for intensity modulation and the color photo only
works as a color filter.
41
2.23 Tips for 3D printing lithophane Hello LuBan
High speed, e.g. 80 to 100 mm/second may cause a printer to vibrate and introduce
artefacts, such as line strips. Low speed, e.g. 30 to 50 mm/second, can reduce such
artefacts.
Support
Support can be disabled when printing a lithophane because removing the support
may damage the rough surface. In situations where support must be used, such
as in a sphere lithophane, you should orient the model such that the support is in
contact with the smooth surface, not the rough surface. When printing a small-
sized sphere lithophane, you may disable the support and let the printer attempt to
close the upper gap in the sphere. With any luck, there will be no significant issues
completing the sphere.
Printer belt
A printer’s drive belt should be properly tightened. A loose belt may cause vibration.
Extruder
A printer’s extruder should be regularly washed by running filament through it at
a relatively high feeding rate. Small dust in the extruder can be cleaned this way;
otherwise, it may clog the extruder and cause non-uniform extrusion of filament.
The printed lithophane may have regions that lack material.
Layer height
Layer height is usually set to half of the nozzle diameter of an extruder. For example,
using a 0.2 mm nozzle, the layer height can be set to 0.1 mm. A nozzle with a
small diameter can produce a high-resolution lithophane at the cost of relatively
long printing time.
42
Hello LuBan
3 Photo magic
Photo magic is a powerful collection of tools that can transform an ordinary photo into a
variety of forms for 3D printing and laser cutting. To optimize a photo for photo magic
functions it is first manually converted to black and white before creating a balloon, box,
cutter, extrusion, or morphing. (Figure 64).
Figure 64: Left: original photo. Center: black and white image converted by an algorithm. Right: black
and white image converted from the blue component of the original photo. An intensity threshold is
manually chosen to differentiate the sunflower from the background.
Run LuBan and go to “File → Create → Photo magic” to enter the photo magic mode
(Figure 65). Control parameters are laid out on the left panel and live display is rendered
on the right. A method can be selected from the drop down method list. To load a photo,
click the browse button next to “Select photo”.
3.1 Balloon
The balloon method turns a photo into a 3D balloon model (Figure 66). The method
is similar to the balloon lithophane presented in Section 2.19, except that it does not
43
3.2 Box Hello LuBan
involve mapping another photo onto the surface of the balloon. Hence, the balloon method
produces a single-surface, solid model whereas the balloon lithophane produces a double-
surface, hollow model. The settings of the two methods are similar.
Figure 66: Left: original photo. The rest are different views of the generated balloon model.
3.2 Box
The box method turns a photo into a 3D box model (Figure 67). A box has a base and
a lid. On the lid, an inner pattern of a photo can be included. The inner pattern is any
feature inside the outer boundary. An example is shown in the first column of Figure 68.
If a photo has disjointed features without an outer boundary, LuBan will automatically
generate a boundary and treats all disjoint features as the inner pattern (second column
of Figure 68).
The inner and outer size options determine the meaning of base size X, Y, Z and lid
size Z. If the inner option is selected, the sizes indicate the inner dimensions of the box;
otherwise, they indicate the outer dimension. If you hope to design a box to hold a specific
object, you should choose the inner size option to make sure the inner dimension is big
enough. If you hope to make a box that will be put on a certain place, e.g. a shelf, you
may want to use the outer size option to make sure that the box is not over sized.
44
3.2 Box Hello LuBan
Figure 68: First column, left: a heart shape without any inner pattern. Center: a heart shape with
an inner pattern. Right: the boundary in black and the inner pattern in red. Second column, left: no
boundary that contains all the edge features. Right: an automatically generated boundary in black and
the inner pattern in red.
The base size X and Y maintain the same aspect ratio as that of the 2D feature of a
photo, which means changing base size X (and hit the Enter key to update the display) will
automatically change base size Y, and vice versa. Base and lid size Z can be independently
set. There is no setting to directly specify the overall height of a box; nevertheless, the
height can be determined from the following settings: (1) inner or outer size, (2) base size
Z, (3) box thickness, (4) lid type, (5) lid size Z, and (6) lid indent. These settings also
determine the interior height of the box. The relationship is summarized in Table 1.
Exterior height Interior height
Lid type
Inner size Outer size Inner size Outer size
Basic or Twist Zb + Zl − Dl + 2T Zb + Zl − Dl Zb + Zl − Dl Zb + Zl − Dl − 2T
Flat Zb + 2T Zb + T Zb Zb − T
Inlay Zb — Zb − 2T —
Table 1: Determine the overall height of a box. Zb : base size Z. Zl : lid size Z. Dl : lid indent. T : box
thickness. When the outer size option is selected, the lid type cannot be inlay.
There are four lid types: basic, twist, flat, and inlay. The basic type generates an indent
on the base and lid so that they overlap each other by a distance specified in the lid indent
setting: Dl (Figure 69). The overlapping region produces friction between the two parts
and the friction force can be tuned by a tolerance setting (Section 3.2.7).
45
3.2 Box Hello LuBan
The twist type rotates the indent region by an angle of twist (Figure 70). In addition
to the friction force, the twisted shape also creates a locking mechanism between the base
and lid; however, when the lid indent is relatively small, do not use a relatively large angle
of twist because the generated shape may require support to print and limited precision
of a 3D printer may prevent the base and lid from fitting to each other.
Figure 70: Lid type: Twist. Left: a relatively large lid indent used with a relatively small twist angle
ensures a good match between the base and lid. Center: a relatively small lid indent used with a relatively
large twist angle may cause problems in fitting the base and lid together. Right: a large twist angle should
be used with a large lid indent.
In the flat type, small circular sinks (sockets) can be generated on the edge of the base
and lid. Place magnets in these sinks to firmly attach the lid to the base. (Figure 71).
On the control panel, you may configure the number of sinks, the sinks’ diameter and
depth, and the position of each sink. The sink index setting let you change the position
of the selected sink, which is indicated in red. The position goes from 0 to 1, indicating
a fraction of the perimeter of the box.
The inlay type makes the lid sink into the base. The wall enclosing the lid is half the
thickness of that of the base.
If a photo has an inner pattern, you have several options to handle it. You can ignore it,
extrude it, make an indent, make a hollow lid, or make a hollow box. The extrude and
46
3.2 Box Hello LuBan
Figure 71: Lid type: Flat. Circular sinks may be generated to host magnetic buttons.
indent options (Figure 73) let you set the depth of the pattern. In addition, the indent
option gives you three models: the base, the lid, and the inner pattern. If you try to print
them and then push the inner pattern into the lid, you will find it difficult because a 3D
printed object is usually a bit larger than its digital model due to a shell printed around
it. Hence, the printed inner pattern is very likely to be a bit larger than the indent on the
lid. (The tolerance setting to be discussed in Section 3.2.7 is not used in the generation
of the inner pattern.)
Figure 73: Inner pattern: extrude (left) and indent (center and right).
The best way to print an indent lid is to flip it so that the indent faces a printer’s bed.
Furthermore, it is recommended to set the pattern depth to one layer height. In slicing
47
3.2 Box Hello LuBan
software, align the flipped lid and inner pattern; then do the following.
1. Temporarily delete the lid in the working space. Generate Gcode of the inner pattern.
2. Restore the lid and delete the inner pattern. Set a Z hop value to the depth of the
inner pattern. Generate Gcode of the lid.
3. Print the inner pattern. After it is done, do not remove it from the bed.
4. Print the lid on top of the inner pattern. The Z hop setting is to raise the nozzle by
a small amount when it is moving to a different location so as to prevent the nozzle
from dragging across the already printed inner pattern.
When both prints are done, you will get a lid with the inner pattern printed on it
(Figure 74). Since they are two separate prints, you can use filament of different colors
for the lid and the inner pattern.
Figure 74: An inner pattern printed on the lid. Made by LuBan user, Morton Hatch.
The hollow lid option of the inner pattern generates a lid with a hollow pattern (left of
Figure 75). Note that some parts of the pattern may not be connected to the boundary
of the lid. The hollow box option makes the box hollow based on the inner pattern. The
outcome is affected by the X and Y size of the box and its thickness. Assuming that the X
and Y size is fixed, a large thickness would produce a low-resolution of the inner pattern
(center of Figure 75) and a small thickness would produce a high-resolution of the inner
pattern (right of Figure 75).
If the nested box option is set to yes, several nested boxes will be generated until the
size of the innermost box cannot be reduced further. At each level, a box’s size and lid
indent (applicable to the lid types: basic and twist) are shortened by the thickness and
the nested box clearance setting. When any of these values goes to zero or negative, the
generation of the nested box stops. The shape of an inner pattern is affected on the nested
boxes as the size becomes smaller and smaller. You may use “Object → Select” and move
the slider on the toolbar to highlight each part of the nested boxes.
48
3.2 Box Hello LuBan
Figure 75: Left: a hollow lid. Center: a hollow box with a relatively large thickness. Right: a hollow box
with a relatively small thickness.
An edge chamfer is a 45-degree slanted surface between a flat base and a vertical wall
(Figure 77). The chamfer not only makes an object better looking but also deals with a
practical issue in 3D printing. Without any chamfer, there will be some extra material
at an edge between the base and the wall due to upper layers compressing the base. The
extra material can make the edge look ugly and sometimes may even cut one’s finger.
A suitable edge chamfer can be a few layer heights and it does not require any support
during printing. It often noticeably improves the printing quality of the edge.
Figure 77: Left: no chamfer or edge chamfer is zero. Right: edge chamfer is 1 mm.
49
3.2 Box Hello LuBan
3.2.7 Tolerance
The tolerance is an important setting in LuBan. It can be applied to fine tune the tightness
between parts. In the box method, the tolerance is used to slightly adjust the size of the
base and lid so that they can fit nicely. Figure 78 shows that the gap between the base
and lid increases with the tolerance being more negative. (Here, the tolerance cannot be
set to a positive value.) As mentioned earlier, when an object is printed, it is likely to be
a bit larger than the digital model; hence, a base and a lid generated with zero tolerance
is unlikely to fit. The tolerance should be set to a negative value to reserve some space
for the slight expansion of the printed models. A suitable tolerance is related to many
factors such as printer hardware, slicing software, printing profile, filament, and a user’s
preference of tightness; therefore, there is no “best” value. A suitable value needs to be
found by trial and error with the assumption that the influencing factors are relatively
fixed. Since zero tolerance is unlikely to work, you may start your trials from -0.2 mm
tolerance. The good news is that once you find a suitable value, you can probably use it
in all LuBan functions that require a tolerance, assuming that the influencing factors will
not change significantly.
Figure 78: Left: tolerance is 0. Center: tolerance is -0.2 mm. Right: tolerance is -0.5 mm.
A box light (Figure 79) is useful in many situations and the model files can be prepared
easily with the box function.
50
3.2 Box Hello LuBan
The process is shown below with an example that has two letters: S and G, on a
template image (Figure 80). The letters were written in Microsoft Word, using font
Verdana Pro Black. The font property was set to condensed spacing so that S and G
overlap. Then, zoom in the two letters in Microsoft Word till they nearly occupy the
whole screen; do a screenshot, crop the letter region, and save it as an image. In general,
any black and white image is a template.
Figure 80: Left: a letter template image. Center: a box based on the inner size option. Right: a box
based on the outer size option.
Import the image in the box function. If the inner size option is selected, the inner
volume will follow the outline of the letter while the exterior of the box will be expanded
by the box thickness (center of Figure 80). If you do not prefer the expansion, select the
outer size option, which will produce an exterior exactly like the letter template (right of
Figure 80). In this case, the interior volume will be shrunk by the box thickness; since it
is only for housing some LED lights, it should be OK.
The remaining work is just to attach lights, wires, and batteries in the box; then close
the lid. It is done! Surprisingly simple, right? Please note that this approach only works
well when the box thickness is small, e.g. 1 to 3 mm; otherwise, light cannot penetrate
through the box.
If you wish to create a physically stronger box light, you need to increase the box
thickness and use an outline image of the letters. The outline image can be used to
generate a box with an inner pattern, which are the letters themselves. You can now
adjust the thickness to be as great as you want, keeping in mind that the indent on the
lid must be thin enough for light to penetrate.
First things first, let’s make an outline image from the template.
Run LuBan.
51
3.2 Box Hello LuBan
Tool → Threshold → Between. Enter “-1000 0”. It means that pixels with distance
value between -1000 and 0 are converted to white pixels and the rest are converted
to black pixels. In the distance map, the length of a pixel corresponds to 100;
hence, -1000 means background within 10-pixel length to the letters and 0 means
the boundary of the letters. This operation extracts a 10-pixel outline image of the
letters (right of Figure 81). You can certainly enter different values, such as “-200
0”, extracting a 2-pixel outline image.
Figure 81: Left: a distance map. Right: an outline image of the letters.
Lastly, import the image file into a new box. Make sure that the inner size option
is selected. The outline image has two polygons; the outer one is an expanded version
of the letters and the inner one is directly from the letters. They are very close to
each other; therefore, if using the outer size option, shrinkage of the outer polygon may
have unexpected effects on the inner one and cause LuBan to remove the inner pattern
completely.
Also make sure that the inner pattern option is set to indent and the pattern depth is
set to a value a little bit smaller than the thickness. For example, if the thickness is set
to 5 mm, the pattern depth can be set to 4 mm. When saving the box, you will get three
model files: the base, the lid, and the inner pattern. Print the base and lid; the box light
does not need the inner pattern to be printed (Figure 82).
Figure 82: Left: a box with an inner pattern. Right: only print the base and lid; do not print the inner
pattern.
As for the lid type, you can use any one, while the flat and inlay types are preferred
52
3.2 Box Hello LuBan
because they can be printed with little support. Figure 82 shows a flat lid with a few
magnet sinks. This is an added advantage of the flat lid type. When embedded with
magnetic buttons, the base and lid can be opened and closed easily.
You can also apply the box function to make a box lithophane (Figure 83). A template
and a photo for your lithophane are needed (Figure 84). The first step is to make a box
with an inlay lid. Select the outer size option so that the box is not expanded (left of
Figure 85). Save the model for later. Then, extract a new template image based on the
3D display of the lid, which will be replaced by a lid-shaped lithophane.
Figure 84: Left: a template image. Right: a photo for making a lithophane.
Figure 85: Left: a box made from the original template. Right: a new template image.
53
3.2 Box Hello LuBan
View → Viewing angle → Z. Bring the letters to face towards you. After one click,
the letters may turn their back toward you; click again and they will face toward you
(right of Figure 85).
Tool → Threshold → Manual. Select a threshold to differentiate the letters from the
background (left of Figure 86).
Tool → Data → Invert. Make the letters white and the background black (right of
Figure 86). This step is not needed if the letters are already in white.
Figure 86: Left: the new template after applying a threshold. Right: make the letters white and the
background dark.
Comparing the original (left of Figure 84) with the new template (right of Figure 86),
the letters are thinner in the new one because the inlay lid is applied and the letters are
shrunk by half of the box thickness. Generate an arbitrary-shaped lithophane based on
the new template and the photo (Section 2.21). Set the lithophane’s size in X the same
as that of the box; however, the thickness of box and the boundary of the new template
may cause the lid and the lithophane to mismatch in size.
In order to make their sizes exactly the same, check the size of the lid first. Open the
lid model and go to “Mesh → Statistics”. The bounding cube X and Y is the areal size of
the lid (Figure 87). Then, open the lithophane model and go to “Object → Transform”
(Figure 88). The size option should be selected as opposed to the scale option and the
flexible option should be selected as opposed to the fixed option. Set X and Z to the areal
54
3.3 Cutter Hello LuBan
size of the lid. (They are X and Z, not X and Y, due to different orientation of the two
models.) Click OK and “File → Export → STL” to save the resized lithophane model.
Finally, you can print the base of the box and the lithophane; install some lights, wires,
and batteries in the box to finish the box lithophane (Figure 89).
3.3 Cutter
The cutter method turns a photo into a 3D cookie cutter (Figure 90). The cutter can be
customized with or without an inner pattern, which is handled in the same way as in the
box method (Section 3.2 and Figure 68).
55
3.3 Cutter Hello LuBan
When a cutter cuts a dough, the resultant shape is in a flipped orientation. To produce
a dough in the exact same orientation of a photo, the photo should be flipped before
generating a cutter (Figure 91). The flip photo setting serves this purpose. If set to yes,
it mirrors the cutter with respect to the Y axis.
Figure 91: Left: original photo. Center: photo flipped. Right: photo not flipped.
You can also create a cookie cutter from text symbols or even icons. Use LuBan to prepare
the cutter text in your preferred font (Figure 92). If you wish to have multi-line or special
effect text, such as overlapping letters, use MS Word or similar software to prepare the
text; do a screenshot and save it as an image; then import the image to the cutter method
through the select photo button.
The inner size settings determine the interior dimension of a cutter when there is no inner
pattern (left of Figure 93). If there is an inner pattern, the inner size X and Y determine
the areal dimension of the inner pattern (right of Figure 93).
56
3.3 Cutter Hello LuBan
Figure 92: Different fonts. Left: Arial. Right: Times New Roman.
Figure 93: Inner size X, Y, and Z. Left: no inner pattern. Right: has an inner pattern.
The inner pattern setting offers three options (Figure 94) to deal with an inner pattern if
it exists: (1) ignore it and generate a cutter of only the outline, (2) integrate it into the
cutter, and (3) separate it from the outline cutter.
Figure 94: Left: no inner pattern. Center: an integrated inner pattern. Right: a separate inner pattern.
When the integrate or the separate option is selected, you may set the inner pattern’s
depth and its clearance from the boundary. Be prepared! Changes to the clearance setting
may produce some unexpected results. For example, in Figure 95 the inner pattern has
two letters: L and B. When the clearance is set to 1, an outline is generated internally
around each letter with an offset of 1; however, the two outlines do not intersect as the gap
between the letters are relatively big. In this case, LuBan generates a bounding convex
polygon as the mutual outline. When the clearance is set to 3, the individual outlines
intersect and produce an oddly shaped mutual outline. When the clearance is set to 7,
57
3.3 Cutter Hello LuBan
The blade, cutter, and base walls are indicated in Figure 96. The blade is designed to
start a cut. The cutter wall will then be pushed into the dough. The base is to stop the
cut.
Figure 96: No. 1 is the blade wall. No. 2 is the cutter wall. No. 3 is the base wall.
The blade wall should be thinner than the cutter wall since the blade is supposed to be
narrow and sharp. The height of the blade is hard-coded to 1.5 times of its thickness so
that it has enough strength. The height of the cutter wall is the inner size Z setting. The
base wall should be thicker than the cutter wall. The height of the base is determined by
the base thickness setting.
When the inner pattern is set to integrate or separate, some holes can be optionally
generated on the base so as to let out air when cutting a dough (Figure 97). The position
and size of the holes are automatically determined. If there is not enough space on the
base, no holes will be generated even when the base hole option is set to yes.
The general information of the edge chamfer has been described in Section 3.2.6. The
edge chamfer has a special use in a cutter with a separate inner pattern. It helps to
58
3.3 Cutter Hello LuBan
Figure 97: Base holes on an integrated cutter (left) and a separated cutter (right).
fix the relative position between the outline cutter and the inner pattern when pressing
the cutter into a dough (Figure 98). Without the edge chamfer, the two parts may slide
against each other.
The cutter method can imprint a 2D inner pattern on a dough; in other words, the pattern
is flat. If you wish to imprint a 3D pattern, you can apply the cutter method together
with the relief method under “Mesh → LuBan”. The basic idea is to generate an outline
cutter and a relief from a 3D model (Figure 99). The relief can be set to negative to
produce a positive dough in the shape of the model.
Figure 99: A cutter with a 3D inner pattern generated by the relief method.
59