Cats. What can I say that hasn't already been said.
But this is about a process to turn a picture of my cat into a lithophane. The difficulty: the shape should match the outline of the cat.
To go about this I needed 4 tools: image editing software, an image to lithophane converter, Inkscape, and a STL editor.
The first step was to isolate my cat in the picture:
This was probably the most time consuming aspect, carefully tracing her outline and removing the background. For this I used paint.net but you can use whatever you are familiar with. The result:
After isolating her I also made a 2nd image, which will be used later for creating the outline. This image is simply the area where the background was but filled black, the inverse of above. You can see I smoothed the edges a bit too:
The next step is to use a lithophane generator to create the STL. My favorite is: http://3dp.rocks/lithophane/ . You will want to use a flat model, turn off the border, and set base/stand depth to 0. Save the model to your documents.
Now you will use Inkscape to open up the outline image and trace the outline into a SVG. I won't be covering this process, but you can find a tutorial here: https://inkscape.org/doc/tutorials/tracing/tutorial-tracing.html
I highly recommend that you adjust the smooth corners and optimize. You don't want jagged edges here, as it will be the outline of your model. Make sure to save the file type as SVG, I have had the most luck with this.
The final step is to use your newly generated SVG file to cut out the unwanted parts of the lithophane STL. I'm sure there are a few editors that can do this, but surprisingly the most effective I have found is OpenScad. You will be doing a boolean operation. You do not want to do an Intersection operation, as it would need to calculate those thousands of points to see if they intersect! Instead, you want to do a difference. Create a rather large box that is much larger than the STL. Extrude cut the outline from that box, then use the box to remove the unwanted portions of the Lithophane.difference() { import("hazel.stl", convexity=3); difference() { translate([-100,-100,-10]) cube([200,200,20]); translate([0,0,-12]) linear_extrude(height = 40, center = false, convexity = 10) scale(v = [.075, .075, .075]) translate([-81,-77,0]) import(file = "hazel.svg"); } }
Comments
Post a Comment