Friday, February 8, 2019

Relief picture - Part 2

The Pink Layer

I could not find any rose-colored filament on line or at my local store. So I decided to try a method I had read about: coloring filament with a Sharpie pen. The idea is that you hold a pen against the filament before it goes into the print head. So I bought some light pink PLA filament and some black, brown, and gold pens.

I downloaded a pen-holding device from Thingiverse and printed it. The filament goes in the top, rubs on the pens, and comes out the bottom. Unfortunately it did not work with the design of my printer because the filament goes up and then down into the top of the housing. I stuck the holder to the housing, but it just put way too much stress on the filament and caused it to fail to feed. This would work with a printer where the filament feeds straight down, but I can't use it..

So I held the pen by hand on some test prints. I really didn't want a lot of color, I wanted it to be kind of blotchy like the watercolor aura. With the concentric top layer I used, and coloring several inches of filament, the color goes round and round and makes an agate-like layered pattern. And the heating / mixing of the ink came out kind of unexpectedly: black turned to purple. Brown came out kind of orange-brown. Gold glitter didn't seem to do much at all. (The irregular black line is one I drew later for another purpose.) This might be useful in some future project but it's not what I was going for.

I decided I could work with this by using very intermittent dots of brown ink which turned into a rather light halo. Small dots of ink smear out into lines, and if they are small enough then the lines kind of come and go irregularly as the head goes around. Here's a view of the final effect. Not quite the rose color I was hoping for, but somewhat random and far better than the intense pink PET-G.

The final print

I wanted to print it as large as my printer would allow, which worked out to about 8" x 6.5". But I had noticed before that certain large prints didn't stick well everywhere on the bed, due to uneven heating. This time I decided to produce a heat map. I laid a piece of paper on the bed, set it to 60 degrees Celsius, and used a a laser thermometer to measure different areas. (The paper may have blocked some of the heat.) I didn't record a temp at every location, but quite a few. In this diagram (Excel Conditional Formatting!) the bold numbers were measured and the italics are averages of the surrounding measurements. The black box is the official "hot zone" where printing happens.

So I made sure to use a fresh, complete coating of Magigoo. The wood background plate did fail to stick at the top and curled up a bit, but it's hardly noticeable. Other than that, the print went pretty well. It took about 7 hours, and all the filament changes went well.


Since the new pink is PLA instead of PET-G, it stuck better to the layers above and below. But the final black layer on top of the lettering was pretty narrow and didn't really extrude enough. So there were big gaps in the final lettering. There was no way to go back and reprint just that bit, but I realized a 3D pen might just do the trick. I know people use them to create solid objects in thin air, and 3D printing people use them to join multi-part prints together. I figured it would work to touch up the black on the letters.

I settled on the Mynt3D Professional pen and ordered one from Amazon. I practiced drawing a few objects and letters on glass and on an early sample of the wood PLA to get the hang of it before working on the final picture. The main issue is that you're "painting" with filament in real time, and it's only as accurate as your hand is steady. So with some practice and choosing the right extrusion speed it worked out OK, especially since this project was hand-drawn to begin with. In a more straight and smooth project, maybe not so much. I also used it to fill in a couple places where the Mermaid Tail had some gaps.

Final result

Here are three images of the final piece, lit from different angles so you can see how the light plays on the glitter in the parts with different top-level orientations.

And the final result, framed and ready to give to my grandkid.

Saturday, January 12, 2019

Relief picture - Part 1

My current project is to create a 3D representation of a watercolor drawing done by one of my grandkids, turning it into a "relief" piece.

This has been rather difficult, but I'm getting there. I'll describe some of the challenges and how I'm solving them.


A rose color is used as an amorphous background, which I am calling an "aura", with disconnected splotches. It also highlights the lettering. I have a pink PET-G which may work. It is translucent, so if I print varying numbers of layers the underlying colors should allow it to vary a bit.

A greenish-turquoise-bluish-teal color is used for a smaller aura and also to color the main subject. There are distinctly lighter and darker areas. I have a green PET-G but as you'll see below it is too bright. I found an interesting PLA color by Proto-Pasta called Mermaid's Tail, which includes mica flakes to make glitter.

It's on a tan or sepia or vellum background. I have a wood-infused PLA that should work nicely.

With 3D printing filament, the color is pretty much constant. I printed some "swatches" to see how increasing numbers of layers would vary the color.

Pink PET-G over black came out quite reddish. Differing adhesion does give a nice variation to the color. We'll see how it works over wood.

I thought the same idea would work for the teal, but it's really opaque.

But the color swatches revealed a different property of the Mermaid's Tail filament. The apparent brightness (lightness) is affected by the orientation of the top layer. Horizontal reflects the most light. Vertical reflects the least, making it darker. Diagonal orientation gives an intermediate color. I wondered if I could use this property by ensuring that the top printed layer of each part of the main subject matched the desired shade.

Digitizing the watercolor

Working from a digital photo, I used Gimp to pull each color area out into its own image. Like many art programs, Gimp has a "magic wand" which enables you to select areas of a specific color or a range of colors. This took a while. I created images for the rose aura, the teal aura, face, hair, upper right arm, lower right arm, left arm, left hand, right hand, the black central part of the lettering, and the rose outline of the lettering. Also one for the black outlines around the main components.

The magic wand pulls in stray bits around the main subjects, and fails to fill in areas solidly. So I used paint tools in Gimp to clean up and fill in. This is perhaps the most tedious part of the process. There's a balance between enough detail and too much detail. I wanted enough to convey the random sense of the auras, and the hand-drawn feeling of the main subject. But too much detail makes a lot of work for Fusion 360, causing it to slow down.

Fusion 360 wants to import images as SVG (vector) files, but Gimp doesn't export SVG. So I used Inkscape to convert each file from a BMP (bitmap) to SVG. Then I imported each into a separate Sketch and extruded each into a Body. I used parametric modeling so I can vary the thickness of each component as I work on the overall relief.


When I thought the teal would be translucent, I had spent a lot of time trying to figure out how to vary the colors of the main subject by sloping them in a way that made sense with the relief of the main subject. The biggest problem was that lower right arm needed to vary its thickness in the wrong direction, opposite to the direction it should slope visually. Once I realized the orientation affected the light, I adjusted the thickness of each component so the top layer was oriented correctly. (I did this conceptually in Simplify3D software, not by actually printing it.) This looked to be tedious because of needing to keep track of cumulative thicknesses. Fortunately I found in Simplify3D a setting for "External Infill Angle Offsets". I can pick the exact angle of the top layer of each "process". Nice!

That's assuming the top layer orientation is "Rectilinear". There's also a setting for the top layer infill to be "Concentric", which should great for the auras, making their top surfaces more random in color and/or reflection.

This enabled me to vary the thickness of each component of the main subject without worrying about the exact number of layers. Each component (or group of them) could be a "process" in Simplify3D. So the face is lowest. Then the right upper arm and left arm are a bit thicker. Then the right lower arm. Then the hair. Then the hands.

I had hoped to round off the edges of the arms and hands to make it more realistic and organic. But the complex shape confused the Fillet function in Fusion 360, so I had to give up on that idea.

As I stacked up the image layers in Fusion 360 it became apparent that there were some gaps. So I expanded the black outlines into a solid layer (I called the "profile") above the auras and below the body parts. This ensures everything is solid and won't have any unsupported areas. 

Multiple layers

Simplify3D allows you to change parameters as you work your way up through the thickness of a print. Each group of parameters is called a "Process". I organized the information about the components and their thicknesses into an Excel spreadsheet. This let me see for example that the lines-profile and the black part of the lettering go together. The right upper arm and left arm belong together, both from the relief level and color aspect. It worked out to 9 Processes. I need to change filament colors between Processes 1 through 5, and then Processes 5 through 9 are all the teal filament but with different thicknesses and top layer orientations.

In earlier projects I have learned how best to pause a print to switch filaments. Simplify3D allows for "post processing" commands to alter the file it produces. I added commands to pause for the 4 filament changes, and figured out that all those commands need to be defined in the last process. Kind of weird, but it works. I looked at the GCode file to ensure that it was making the changes in all the right places.

Multiple filament types

The first layer will be wood PLA which prints at 210C, then the pink layer is PET-G at 245C, and then the rest are all PLA at 210C. In the first test print I had some problems with the pink over the wood, but I think that was more about retraction/extrusion than about adhesion. I think the pause for the filament switch needs to be tweaked a bit to ensure the new filament starts flowing fast enough.

Test prints

Because the final product will be big, I've tried some small samples.

This first one was 1/4 scale in X and Y, but regular scale in Z (relief) to test out the multiple filaments. There were some problems with the pink not adhering to the wood. The infill was too sparse at 10%, so the upper layers fell through. Because it was at 1/4 scale, the filament could not keep up with some of the fine features and they got gloppy. I'm hoping that when printed at full size those details will work.

The pink and teal auras were thicker than I intended, so I changed them down to one 0.2mm layer. I'm hoping that will make the pink less intense.

For the next test I set the infill to 15% so the upper layers will not have to "bridge". I tweaked some other settings in the infill area. It also seemed that the filament did not start flowing right away after a change, leaving gaps, so I changed the post-change retract from 0.5mm to 0.2mm.

I printed the next test in just one color, at 100% scale, to see if the larger features print better. I went back to Fusion 360 to select a central rectangle instead of printing the whole picture. Here's a shot from an angle to show the relief.

Next I printed the central rectangle with the multiple filaments. Again the PET-G did not stick to the PLA, and vice versa. That caused the black to fail on the lettering, and other problems. So I guess I'll shop for a rose-colored PLA.

The concentric fill in the thin aura layers looks good - the lower pink and teal areas are blotchy like watercolors.

The "canyons" between the body parts, and the black background at the bottom of them, gives good definition.

The varying top layers on the body parts do make them appear lighter and darker, though that does not come through so well in a photo. They shimmer as you move around.

I also remembered that I didn't copy over many of the disconnected blotches of the rose aura, so I'll need to go back to the images and merge them in.

Saturday, December 1, 2018

Elephant cutlery drainer

Between the product design, the 3D modeling, and the printing, I learn one or more new topics with every project. I worked on this one for more than a month. New tools and techniques included:

  • Initial drawings on iPad with Apple Pencil and Autodesk SketchBook
  • iPad connected to Mac as graphics tablet with Duet
  • Fusion 360's Spline curves
  • Fusion 360's Shell command
  • Fusion 360's Loft command options
  • Fusion 360's Sculpt mode
  • Printing big

Concept & Design

I was looking for a bigger project to print. Most of my projects have been just a few inches in size. But printing large solid objects can take a long time, and as a hobbyist there are limits on the time I can spend babysitting large prints. So I was thinking about large hollow products when I encountered this elephant-shaped cutlery drainer on Thingiverse. It's a useful product, if a bit silly. Water from the draining items shoots from the elephant's trunk into your sink. But I didn't really like the angular appearance of the "low-polygon" method.

I spent a few hours among Asian elephants on a safari in Sri Lanka this year, and elephants have been on my mind. So I decided to try a more realistic, but still stylized, version of the elephant drainer.

Design considerations included:

  1. A large top opening to handle a realistic number of cutlery items
  2. Possibly a divided interior so items would not lay over too much
  3. Low center of gravity and/or wide stance so top-heavy objects would not tip it over
  4. On a real elephant, the trunk starts high on the face and goes downward. In this drainer, the water is going to come from the bottom tips of the objects. The water can't flow up to enter the trunk, so the body and face design needs to give the illusion of a trunk while letting the water enter the bottom of the trunk.
I did not know how I would possibly sculpt the thing from scratch, and most objects I've designed have been basically geometrical, so I envisioned virtually "carving" the body and head from a solid core by cutting it from the side, top, and front using profiles. 

Concept art

I've been playing with Autodesk's SketchBook and Apple Pencil, so I used it to draw multiple profiles. For the top and front profiles I used its mirror function to get a symmetrical profile. I knew that in Fusion 360 I would probably design one side and then mirror the solid object, so I didn't really *need* full drawings, but drawing both sides of the profiles helped make sure it was going to be attractive and what I envisioned.
Side view

Top view. Note that the legs stick out a bit from the body.

Head front view

Rear view

Version 1 - Carved from Three Profiles

I imported the drawings into Fusion 360 and used Spline curves to reproduce them as sketches to use to cut virtual blocks in three directions to form the body, head and trunk. I tried the "duet" application to draw on my iPad as a connected tablet, but ultimately it was easier to use the mouse on the big screen.

I learned to use the Shell feature to hollow out the combined shapes. I added a 5-degree sloped floor and ensured a hole was drilled through the trunk.

I used the Loft feature to join elliptical shapes to form the front and back legs.

I created the whole thing small, so I could print samples relatively quickly. (This elephant is apparently not afraid of mice.)

Ultimately I did not like the result. It was too angular - you can see how the body has places where two different curves join. And there's an artificial-looking "web" under the trunk.

The other problem was that the Shell command has trouble with shapes that have too many complex curves joining. It ultimately failed with my model. So I started over.

Version 2 - Combined Sculpted and Math

I spent some time learning about Fusion 360's Sculpt mode, which works by modifying 3D forms, rather than extruding them from sketches and cutting things. I started with two spheres and pushed and pulled them into more organic shapes for the body and head.

I combined them with mathematical shapes for the legs and trunk.

I also lowered the body closer to the ground to reduce the amount of support material that would be needed.

I didn't like this result either. The short legs and trunk made it look more like a pig than an elephant. So back to the drawing board.

Version 3 - Combined Sculpted Shapes

I thought about making realistic legs to convey the elephant-ness, but bent so the belly would still be on the ground. I found a variety of artwork and sculpture depicting elephants kneeling, and then produced this sketch based on them.

Back in the Sculpt mode, I learned to stretch and bend cylinders: with a single bend for the back leg, and with two bends in the front leg so the foot would be flat on the ground. The legs intentionally crowd the face.

Another cylinder was the basis for the trunk. It's wider at the top and stands out a bit from the face.

I pushed some little dents into the top of the trunk to make it wrinkly-flexible looking. (I got this idea from how they put finger grips in a knife handle in an Fusion 360 instructional video.) You can see that in this shot of the full-size final product being printed.

Here you can also see the support material around the belly, under the legs, and under part of the trunk.

For the eye I went back to how a real elephant looks. I had taken this extraordinary shot of a wild elephant in Sri Lanka.

I traced over the eye in Fusion 360 and turned it into a reverse extrude, essentially a cutout. The shell is thin enough, and the cut deep enough, that it's actually open in places and lets light shine through.

Here's the finished small-size half-body test print. Printing a half-body sample is a great way to see how it's really going to work internally, how things are going to fill in, etc. You can see how I filled in the bottom of the body and trunk with a 5-degree slope for water to flow out.

The Final Print

During the design I had worked with convenient measurements, knowing I could scale it up to maximum size in the slice-print software. I placed it diagonally on the print bed to get the maximum length from legs to trunk. I scaled it up by 210%, resulting in almost 10" total length. The shell started out 0.2 cm thick, so after scaling it is 0.42 cm thick, which is just about right. There's a tradeoff: too thin would not be stiff enough, too thick will increase the print time. This was by far the biggest thing I've ever printed. It took nearly 18 hours!

I chose PET-G filament because it's food-safe, and found a really nice silver-gray.

Unfortunately I forgot one thing: my print bed doesn't heat evenly, plus I think I didn't put enough hairspray at the the very back. So the left rear foot failed to adhere perfectly and curled up. I didn't see it until it was all done, or I might have started over. (Support material is still attached in this shot.) With a little grinding of the irregular parts, it came out OK, it's just kind of lifted in the air.

I also forgot to add a tail!

Here's how it looks in use, with the trunk out over the sink:

I had thought ahead and added slots on the sides to allow for a removable divider, printed separately. This allows objects to stand up straighter.

The divider doesn't go all the way to the bottom, so it doesn't obstruct the drainage.

All in all, I'm quite pleased with how it came out, being my first sculpted project and my first really big print. This is about as big as my Robo3D R1+ can go. Lots of people saw it at our house at Thanksgiving and a couple people asked for copies for Christmas... but at 18 hours per part that may not happen. It's definitely an iterative process. Fortunately printing small-size models saves time and plastic.

I published the design files on Thingiverse here. In the first two weeks over 400 people have downloaded it, but no one has posted a print yet.

Saturday, June 30, 2018

Dungeons & Dragons dice in wood

One of my girls asked if I could make her a set of Dungeons & Dragons dice. Not knowing anything about them, I sent her shopping on Thingiverse and she settled on this set designed by JakeVav. I printed it in Hatchbox Wood PLA hybrid so I could make it look antique-y.

No, I didn't print them all at once, this is a reunion photo. I tried to print them in groups of 2 or 3 to save setup and print time, but I found that as the extruder jumped from one die to another the filament sagged out of the nozzle and left a little "worm" on the next die. Although I experimented with retraction, coast and wipe settings, the wood filament is just more prone to this side effect. So I reprinted the last few as singletons and they came out much cleaner.

After some cleanup I treated them all with wood stain (submerged for several hours) and added a couple very thin coats of Varathane. They came out pretty darn wood-like, especially the triangular one with some color variation that looks like grain.

Here's the whole set ready to give away.
There were a few problems. Lettering can fail to come out clearly if it is too small. And there were a few "slumps" especially in the overhanging faces (I did not use any support structures).

The 10 face was down to the bed, so the 90 was an overhang. You can see the edge between 90 and 40 came out kind of ragged. But in a project like this that is supposed to look ancient and magical and mysterious, I figured a little irregularity gives it character.

Same here, the 1 was on the bed and so the 7 was an overhang.

In many cases I had to clean the letters out with a very tiny Dremel bit.

Another issue is that the faces on the bed come out glassy-smooth. I sanded them in a single direction to give them some "grain" for the stain to penetrate. The 10 and the 1 above came out pretty well. I should have sanded his 1-2-4 face more deeply - it came out more smooth and yellow than all the rest.

At first I tried to use some GP3D wood filament I have on hand that is a bit lighter in color. But I could not get it to stick to the bed, even though I was using the wonderful Magigoo coating. I was trying to print one of the smaller dice, and it was just not enough surface area to stick to the glass. I gave up on that pretty quickly and switched to the Hatchbox. This is the second project in which I've given up on the GP3D - see my trophy base project. I don't think I'll try it again.

Evil thought: (only after it was all done)  I've been using Simplify3D software for the last 7 months. One of its features is the ability to print different levels of a model with different settings. I printed this with 20% infill. But it would be very easy to print the lower layers with a much denser infill, which would essentially make them "loaded" dice. The bottom face would be much much heavier, making it slightly more likely to land on the bottom, and making the opposite face more likely to come up. So... if you're playing D&D or any other dice game with 3D-printed dice, watch out!

Friday, June 22, 2018

Multicolored folding robot

I saw this video by 3D Printing Nerd and figured I'd give it a try because I'm interested in clever techniques. A single-extruder 3D printer like mine can only print in layers upward (with a few exceptions) and so color changes are limited to horizontal layers. Picture a layer cake with chocolate on the bottom and white on top and frosting in between. I've done a few projects with multiple colors or different filaments, like this trophy base.

These folks at Fab 365 have designed robot models which are opened up into boxes, the sides joined by living hinges. After printing it all flattened out you fold the body into a box, which wraps the colored layers onto all four sides.

By carefully choosing the layers at which to change colors you can highlight parts on each side of the body with contrasts that make them "pop". I chose to do four colors in seven layers.

Other parts that stick up like the arms and legs and head also get the multiple colors, and they end up mostly vertical.

The shoulder parts, the frame on the front, and the jet pack mount on the back are all the same height, so they all get the orange color. The little green controls on the front are just a few layers thick and contrast well with the white background.

The feet and the fingers are about the same height, so they both came out blue. So did the top of the head, unintentionally I don't know if the model was actually designed with multilayer in mind... I think not because some of the arm and leg segments are not horizontal, so the colors cut across them at an angle.

This is all previewed in the slicer software to see exactly where the different features start, and each different colored layer is given its own segment. I needed to pause the print at the start of each layer. I found some G-code on line which was supposed to do that for me: pause the print, raise the head and move it to the side so no plastic will drip on the model while I change filament. It actually didn't work except after the first layer, so I had to manually pause it for each change. Later I found out how I had implemented it in the wrong place - better luck next time.  So I'm pretty amazed that I was able to get a good result in just one try! Now that I know how this works I could use it in my own designs.

The result is quite a patchwork of color. It's Robbie the Robot from the movie "Forbidden Planet"!

The living hinges were a little weak, and the "tab A into slot B" design that was supposed to hold it together were not sized right. So I used Super Glue and it all came out fine.

As a bonus, the design includes movable arms and legs. The shoulders actually each include two nested ball-and-socket joints, so the arms can raise and lower, and also rotate, giving them an impressive range of motion. (But on my print, one joint fused and can only rotate.)  I'll remember this joint idea for some of my own designs.