Showing posts with label 3d modeling. Show all posts
Showing posts with label 3d modeling. Show all posts

Jan 8, 2017

Yet Another 3D Printed Phone Stand

I got tired of laying my phone down next to my computer - so I wanted a simple phone stand that would stand my phone upright or sideways so I could see it and use it. Of course there are likely cheap phone stands or 3D Models that would suit my purpose somewhere - but I had two reasons why I "needed" to make my own:

First, I wanted it to suit my needs and fit my phone exactly.

Second, I like to make stuff - so why pass up the opportunity to invent something new!?

Design Requirements


The basic requirement of this design was to firmly hold my phone upright without tipping over. But there were other things I had to consider in this design. Here's the full list:
  • Hold phone upright (portrait) without tipping and with firmness that let me tap the screen.
  • Hold phone in sideways (landscape) too. (hopeful on this one)
  • Have a slight angle so it is easy to see on my desk.
  • Nothing should block ANY of the screen.
  • Simple & Fast to print - no supports, flat bottom surface to grip print bed, minimal mass.
  • Able to hold phones approximately the size of my Nexus 6P with or without a case.
Things I decided not to worry about for this first design included a way to dock the phone on the charging cable or making the stand portable to fit in my pocket. As with any product, sometimes it's just as important to pick things you're NOT trying to solve as it is to pick those problems you ARE trying to solve.

The 3D Model


This one was not as simple as it looks. The requirements I had to be simple and low mass made it more of a challenge - otherwise, I could have simply used a big block (as I've seen in many other phone holders).

I started with a block. I imagined the shape I wanted to be more like a wedge, holding the phone on the front, then angled back to the bottom surface.

To get the right shape of the front which would hold the phone, I created a 3D Model of my phone - not to be printed, but to be used as a shape to SUBTRACT from the wedge block to leave behind a perfectly shaped area to hold my phone. I then subtracted a large chunk of the block from the angled front for the area where the phone screen would be seen, leaving about 5mm on each side, about 3mm thick, to hold the phone in place by the edges.

Now, as with any subtraction operation like this, the fit would be too tight if I just printed it as is - so I pushed out the insides of the phone holding area by 0.5mm on each side, and the back by 1mm.

Landscape works too!
To reduce the mass of the wedge, I wanted to cut out a large part of the back - so I made a copy of the whole wedge, and scaled it down to be a subtraction shape. I made it smaller by about 5-8 mm on each side and the part behind the phone, and then subtracted it from the back of the wedge - leaving the back of the wedge with no material at all.

The shape I got was pretty much what I imagined! I finished it up by softening all the edges with a "Filet" operation (in Autodesk 123D) and gave it a first print.

Making it more useful

Landscape is great for video watching

I measured the space for my phone with the case - so the space for the phone was actually bigger than the phone itself by a few mm on each side.

The first print actually worked well with the phone that had the case on it, as it was a tight enough fit to really hold the phone firmly. But when I removed the case from the phone, the fit was so loose, that the weight of the phone leaning against the back of the stand let the stand slide up the phone and pop off the top.

I needed to create some friction or pressure for phones without cases - I had no intention of making a new stand for every phone or for phones without cases.


I decided to try a flexible "bow" in the back - just a very thin (1mm) printed flat strap, which would be stuck into two small holes into the inside of the phone holding area - creating pressure against the back of the phone and holding in in place when there was no case on it.
This worked!

The Model is published HERE.

May 13, 2016

3D Printed Logo for Google Keep

My newest favorite Google app is Google Keep.

It's a quick scratch pad, list keeper, note-taker, image-grabber, doodle-maker, even voice-note-taker app. It's fast and it works on every device where I need it - my phone, my kid's iPhones, and the web - and it lets you share notes with other people.

Google Keep is perfect for that shared grocery list or those quick meeting notes, or that inspirational idea keeper...

But wait - this is not an app review - this post is about the Google Keep LOGO.

Design Goals


I was simply looking to represent yet another Google app logo in a form which could be used as a key-chain or backpack charm. I've done this, as you probably know, with a few other Google Apps, so it seemed fitting to now do Google Keep, since I use the app more than once a day.

The Google Keep logo is a light bulb on a small note pad looking base with one corner turned up. One of the goals of all these logo models is to keep them simple so they print easily and quickly. In the case of the Keep logo, I had a couple of options.

The base was easy, but my options for the light bulb seemed to be either to make it just a cut out into the base, or to make it stick out vertically from the base.

Design Process


The individual parts which make the bulb and base
I started with the easy part - the base. This was a variation on the Google Docs, Sheets and Slides base - that is, a rectangle (square in this case) with a turned up corner. I did the same thing as before, creating the square foundation at about 40mm square and 4mm high, then cut off one corner and rotated it about 135 degrees to appear to be turned up.

To make the bulb, I connected a round sphere to a cylinder. I then created a smaller cylinder at the bottom of the first to represent the bottom part of the electrical connection on a light bulb. I also cut a small gap about halfway down the larger cylinder to create the slight horizontal line that the logo has. I did this using a narrow, wide cylinder and then using the subtract tool to cut it out of the longer cylinder.

Now, I had to try two variations.

On the first, I simply subtracted the whole bulb shape from the base to leave a cut-out in the base in the shape of a light bulb.

On the second, I also cut out the light bulb shape from the base, but I made that cut-out slightly larger than the bulb and placed the original bulb centered in the middle of that cut-out. I then created a simple cylindrical connector to attach the bulb-base to the logo base - so the light bulb would be connected but still appear to be floating.

On that second variation - which looked quite good - I simply had to flatten the back side of the rounded bulb so that it would lay flat on the print bed along with the logo base. I only realized this after trying to print once and having a slightly artistic looking failed result ;)

The Model


This is the first time I created a logo model with two variations - but I like them both, so I'm posting both here.

The first is the cut-out light bulb.

The second is the floating light bulb.

Both models are HERE.

Hope you print lots of these for the Google Keep app users you know!



May 4, 2016

3D Printed Piggy Bank - a Journey in Problem Solving


This is a guest post from Bethany Jones, who currently teaches a 7th grade science elective called Engineering Design in Mason, Ohio. Bethany is the mother of two tiny humans and one very energetic dog. She is a tinkerer, lover of learning and recent 3D printing enthusiast.

“If at first you don’t succeed, call it version 1.0”
This has become my motto as I have leapt headfirst into the world of 3D printing with my 7th graders. One thing I have tried to share with my students is that it’s not all about the end product, but the journey you take along the way. There is often more learning that takes place through failing than if you get it right the first time around.  

Ever since our 3D printer arrived a month ago, I have been adamant that it not just be a toy, but an avenue for creation.  I am encouraging my students to try designing something on their own that has a purpose or that solves a problem. In an attempt to show them that I was in this crazy new adventure with them, (as well as wanting to test the print size limits of the printer) I decided to make a piggy bank.

I kid you not, about an hour into the print, a group of students are hovering over the printer watching in awe and one says, “how are you going to get the money out Mrs. Jones?” Face-palm. I had forgotten to put a hole in the bottom to get the money out! 

I told my kids that we’d just have to break it open. It ended up not mattering, as this version printed with a giant mystery hole in the back. But I quickly went back to the computer and edited my model to include a money-retrieval hole in the bottom. Great teachable moment about learning from your mistakes right? 

My students and I had fun analyzing the possible causes for the other print issues and we decided to try and make the walls thicker for more support and hopefully close the mysterious hole.

The second time around, I think something went awry with the printer as everything went well until the very end. The slot on the top printed crooked and the ears  were hanging on by a thread about halfway up. Since I couldn’t find any explanation for this, I printed the same model with no edits and it worked! Third time's the charm!


I am loving the iterative process of designing, printing, redesigning and reprinting until I get something right. It is a wonderful lesson that my students are learning as well. I am finding that in a world where they may have been afraid to fail before, they are energized by the possibility that they can analyze the problem and attempt to fix it! Beyond making something cool to look at, it is something to be proud of when you can create something on your computer screen and make it come to life as a tangible object to enjoy and share with others.



*Addendum: Fast forward one day past writing this post and the poor perfect piggy version 3.0 took a flying leap off my desk and met his demise as a clean break ripped through his body, splitting him in twine. I almost cried real tears in front of my students. But looking on the bright side, as one must do to remain sane, we can now analyze broken piggy from the inside out.


Apr 29, 2016

Replacing a Broken GoPro Drone part with 3D Printing

One of the most exciting things about 3D Printing is when you can use it to replace or fix something that breaks. Last time this happened, it was a clock which fell off the wall (no , I didn't knock it off the wall). This time, it was a small GoPro camera part.

Is it strange that I felt lucky when I had something break that gave me this opportunity again? Yes, it's strange. But at least I didn't break it intentionally ;)

The Problem (the broken thing)


I have an older model Drone (DJI Phantom 2) which has an older GoPro Hero 3+ connected to it using a Zenmuse gimbal on the underside of the aircraft. The GoPro is held to the gimbal with a hard plastic strap. That hard plastic strap broke.

As you can see in the image, the break was right at the part where the screw receptacle fits. As soon as I saw this, I knew that I could likely re-use the screw receptacles and fit them into a new 3D Printed plastic strap.

The Solution


I measured the inside spacing of the plastic strap and the thickness of the plastic in both dimensions. It was pretty simple to design a solution here.

First I created a rectangle block to represent the outer measurement (which was the inner measurement plus times the plastic strap thickness (times two for the width measurement since there are two sides to account for on that dimension but only one on the height). Then I created a similar block for the inside measurement to be used to SUBTRACT from the first block. That gave me the basic shape of the strap.

For the ends where the screw receptacles would go, I created a small 7mm x 7mm x 7mm block and then tweaked one edge to make a slightly angled side as you can see in the image. This was an almost exact replica of the original strap design. I duplicated that block for the other side.
I combined those parts so that I had one part for the whole strap.

Then I subtracted holes into the ends of the blocks where the screw receptacles would go. This was the only area where the model needed some precision - so it took a couple of tests to get it right. These holes were 2.1mm radius (4.2mm diameter) and 5.5mm deep.

The Model


Having the metal screw receptacles from the original part made this really easy. If I didn't have those, I might have just left a tiny hole in the plastic ends and hope the screws would hold on to the plastic, but I'm not confident that would work for very long.

If you plan on printing this part, be sure to get a hold of screw receptacles, or modify the model to have a different connection design.

You can find the GoPro Hero 3+ Gimbal Strap on my Thingiverse page.

Mar 26, 2016

BlocksCAD 103: Making the fitted Box Top

This is the third in a 3-part series introducing BlocksCAD - a 3D modeling tool which uses block coding to create objects. If you haven't yet read the first two, check them out first.
Part 1 - BlocksCAD 101 - Making 3D Models with Code Blocks
Part 2 - BlocksCAD 102 - Coding a #3D Box that Grows

In this part 3, you'll see how using parameters to make a box, makes it simple to make a fitted box top. With this method, a simple change in ONE value in your code will change the dimensions of the box AND the top!

Design Goals


No matter how you create your 3D Models, you should always think first about your design goals. For this box plus matching box top project, we want the box top to be flush with the outside of the box, and we want it to have a protrusion on the inside to let it sit perfectly in place over the opening of the hollow box. In essence, we want a rectangle top, with a smaller rectangle protruding from the bottom which matches the inner dimensions of the hollow top of the box.

Using Values To Create Objects


In Part 2, we created a box of a specific size using a variable we called "block-size". We also declared that we wanted the thickness of the walls of that hollow box to be determined using the variable we called "wall-thick". Now that we're looking to make a fitted top for that box, those dimensions will come in handy.

Start With Basic Shapes


Let's think about our box top as two rectangles - one which is the same width and length as outside of the box itself, one one smaller rectangle sitting on top of the first, centered, which matches the smaller dimensions of the hollow part of the box. We're printing this box top upside down, which is why the smaller rectangle is on top.

The thickness of the box top (the height when printing - also known as the z-axis value) can match the thickness of the walls of the box - so that will use the "wall-thick" variable value. The thickness (depth) of the protruding, smaller rectangle can also use that thickness value. Simple! So the first rectangle is created using the following CUBE block.


The smaller rectangle is slightly trickier. It's size is basically meant to be the same size as the INNER dimensions of the hollow box, so that would be calculated as the outer dimension, minus the thickness of the walls. Since there is a wall on each side of the x dimension and y dimension, that means we have to subtract TWO TIMES the wall thickness from the block size to get the inner dimension of the smaller rectangle. Let's create a new variable to calculate that size and call it "sm-block". That variable, and the subsequent creation of the smaller block is shown below:


Making The Top Fit Better


If you've ever printed 3D objects that are meant to fit together, you know that a 10mm part will NOT fit into a 10mm hole. There is always the need for additional gap between parts to make them fit. The value of this "coding objects" method is that we can code that gap - and adjust it for different materials or different printers. On my Polar3D printer, I know that I usually need about 0.35mm gap on either side for a loose fit - which is about 0.7mm total on each dimension (I made it 0.75mm).

Now in the X and Y dimensions of that smaller rectangle, I subtract the value of "gap-mm" to allow for the proper fit. If I find the fit to be too tight, I simply increase that value to give a bigger gap.

Put The Shapes Together

Now that we have the two basic shapes, we can put them together to construct the box top.
The most powerful code blocks in BlocksCAD are in the "SET OPS" group (Set Operations). For this object, we need to combine the two distinct rectangles using the "UNION" block. This is a pretty common operation, which combines two shapes into one.
Notice that before combining the second shape (the smaller rectangle) with the first, we need to shift it up a bit so that it sits on top of the first shape. That's where the "TRANSLATE" code block comes in. We shift the position on the Z-Axis by the thickness of the first rectangle.


The code shown above s the complete code block which makes the Box Top - but notice that it relies on the variables from the prior examples where we made the box itself. Specifically, the block-size and wall-thick variables.

The finished product in two sizes - 10mm and 30mm
Hopefully this three-part series gave you a sense not only of how to use BlocksCAD, but the value of using it. It's super fun to play around with BlcoksCAD, but more importantly, it's useful.

NOTE: this is the third in a 3-part series on making models with BlocksCAD code.
Part-1 - Making 3D Models with Code Blocks (aka Intro to BlocksCAD)
Part 2 - BlocksCAD 102 - Coding a #3D Box that Grows

Mar 16, 2016

BlocksCAD 102: Coding a 3D Box That Grows

Using code to create 3D Models give you the benefit of customization - the ability to take a set of parameters (values) which influence how the model looks. In the introductory BlocksCAD lesson, we learned how to define a variable and then use the value stored in that variable to change some aspect of the 3D Model. In that case we changed a single dimension of a basic rectangle model. [note: this is the 2nd in a 3 part lesson - if you missed it, go back to the prior lesson first]

In this lesson, we'll use that same technique to do something more useful. We'll write a program which creates a hollow box in any size, and later we'll give it a fitted top to match.

Some Programming basics - Inputs and Outputs


Almost all programs take some sort of "inputs" - also known as "parameters" - and then use those inputs to influence the results of the program - the "outputs".

For example - when you use Google Search, the inputs are the search terms you enter. The outputs are the search results.

When you write your own program, you get to decide what the inputs and outputs are. In BlocksCAD, the output is a 3D Model - so you decide what inputs should be accepted to influence that 3D Model that is created.

When creating a 3D model of a hollow box with a fitted top, what aspects of that box might you want to influence, and make those your inputs? Think about it a bit... I'll wait.

The Box Which Adjusts To Fit Anything


The aspects of the box I would like to control with my program are the size of the box and the thickness of the walls of the box. This way, whether I want a box to hold a guitar pick, or a box to hold a furry bunny - I can use the same program to generate the model - by just giving it different inputs to control the size! (and no, I would not recommend storing a furry bunny in a 3D printed box).

To achieve this, we will build a program using the coding blocks which use variables that can easily be changed to adjust all the aspects of the model which are dependent on them.

Writing the Code to Make The Box

First - let's plan out how to make a hollow box. The way this is often done in 3D Modeling is to create a cube which is the size of the outer dimensions of the box you want - and then create a smaller cube which can be "subtracted" from the inside of that first cube to hollow it out.
Great - and EASY!

We first decide what our Variables are. We pretty much already actually did that above - so let's just call them: box-size and thickness.  Then we'll use those in modeling the cubes we need.

> From the "VARIABLEs" category, drag over a "SET ITEM TO" block and create a "new variable" (in the drop down next to "Item") - and call the first one "block-size" - then do another variable called "thickness".

> From the MATH category, drag over a "0" number block and drop it into the "SET block-size TO" block - and change the value to 30 (we're starting with a 30mm box). Do the same with "thickness", but change that value to "2" (we're starting with 2mm wall thickness).

> Drag a "CUBE" block over.

> From the VARIABLES area, drag over the "block-size" block - which gives the VALUE of that block-size variable - and put it in the "X" component of the CUBE block. Then do the same again for "Y" and "Z". All of the 3 dimensions will be the same - 30mm.

At this point, you can test this program by just clicking the RENDER button. You should see a 30mm x 30mm x 30mm block appear in the rendered model window!

Making the Box Hollow


There are a set of very important coding blocks in a category called "SET OPS" (Set Operations) which let you do things like merge two shapes, or take the difference between two shapes. The "DIFFERENCE" block is the one we'll need here to hollow out the box - taking the difference between our original box and a slightly smaller box. If you're familiar with TinkerCAD, you know this as the "Hole" method. In Autodesk 123D Design, it is the "Combine" / "Subtract" feature.

First - let's make the smaller box. The measurement of this smaller box will basically be the size of the larger box (block-size) minus two times the thickness of the walls (once for each side). So the 30mm original box, needs a smaller box which is 30 - (2 x 2) or 26mm on the X and Y dimension - and 30 - 2 on the Z (height) dimension, so that the top of the box actually is open (we don't after all want a hollow box with no openings - we want the top to be open!)

Let's do the coding blocks now - using a new variable, some math and some transformations...

> from the VARIABLES category, create a new variable called sm-block.
This is the finished correct code for the Hollow Box.

> from the MATH catogory, take a math block which does ADDITION - then use the dropdown arrow to change that to SUBTRACTION. Take another of those same blocks again and make the second one MULTIPLICATION.

> Put the values in the blocks as shown to become the equation we described above (block-size - (2 x thickness)) and put that into the SET sm-block TO block.

> From the 3D Shapes category, take a CUBE block and set all the dimensions to the value of the "sm-block" variable.

OOPS! the smaller box was not centered
> From the SET OPS category, take a DIFFERENCE block and drag your original CUBE into the top slot, and the smaller cube into the bottom slot.

Now hit RENDER to test! OOPS! The two boxes clearly were not aligned! So the result of the subtraction did not turn out as planned.  To fix that, we'll move the smaller box to center it on the larger box - moving it by one wall thickness measurement on the x, y and z axis.

> from the TRANSFORM category, grab a TRANSLATE (move) block and set all the paarmeters to the value of the "thickness" variable.
> Put the smaller CUBE block inside that TRANSLATE block.
> Move the TRANSLATE block into the second slot of the DIFFERENCE block.

NOW test again... and BAM! You should see your hollow box.


This is Where The Magic Happens


Now - let's change the size of the box - while keeping the thickness of the walls at 2mm.
Pay attention or you'll miss it....
>  Change the value in the "Set block-size to" block to 50mm
>  Click the RENDER button.

You should now see a larger box! Play around - this helps to test your code and, assuming it works, gives you some satisfaction! Change the value of "thickness" (to 4 or 6) and click render. Those are some thick walls! Good thing you aren't stuck with that :)

In the next lesson, we'll make the Box Top - something that uses mostly the dimensions of the box but with a slight adjustment to allow for a perfect fitting top.


NOTE: this is the second in a 3-part series on making models with BlocksCAD code.
Part-1 - Making 3D Models with Code Blocks (aka Intro to BlocksCAD)

Mar 15, 2016

BlocksCAD 101 - Making 3D Models with Code Blocks

Most people say there are two ways to create digital 3D Models - 1) manually, using CAD (Computer Aided Design) and 3D Modeling software/apps - and 2) by scanning real-world objects with a camera or other scanning equipment to automatically interpret them into 3D Models.

But there's a third way to create 3D Models - you can CODE them.

Coding to create 3D Models


You can write a program which gives the computer commands which creates 3D objects. If you're a programmer, you can try something called OpenSCAD - which is basically a programming language which defines 3D objects. If you're not yet a programmer, and want to (or are willing to) learn some programming basics that pretty much anyone can learn, you can try BlocksCAD.

Overview of BlocksCAD


BlocksCAD is a block programming tool - similar to those used to teach coding to kids - which has commands and tools to create 3D Objects and is super easy to learn for kids or adults. It is available on the web, through your browser, so no programs to download and it is very friendly for Chromebooks.

BlocksCAD was developed by the Massachusetts-based Einsteins Workshop - a learning organization for kids. It combines aspects of doing simple programming (aka coding) with aspects of simple 3D Modeling. The results of BlocksCAD code are 3D Models which can be downloaded in .STL format for 3D Printing or for use in other programs which import .STL files (almost all do).

BlocksCAD interface - 3 main parts

Get Started in BlocksCAD


The BlocksCAD interface consists of 3 main parts:
1 - Library of available blocks
2 - YOUR blocks (that's your code)
3 - 3D Model Viewer

The process of creation is quite simple:

> Find the blocks you need from the Library of available blocks. Each category on the left side expands out to reveal all the blocks available in that category.

Sample flow - choosing the SPHERE block, and rendering it.
> Drag the block you need into your code area. Later you'll see how they snap together to form groups of commands - for now start simple.

> Adjust the values used in the blocks as needed. Each block has it's own options relevant to that command - for example - the Sphere block asks for the radius of the sphere.

> Click "Render" in the 3D Model Viewer to see the results!

Creating your first Coded 3D Model


Let's keep this really simple to start. Let's create a rectangle. Pay attention - this is so quick you might miss it....
> Click on the "3D Shapes" category on the left side.

> Grab the "CUBE" block and drag it to the main screen area (in the center).
> Click "RENDER" on the viewer window.

> DONE. You just coded your first 3D Model!

Notice that the CUBE block has 3 values and one option. The X, Y and Z values define the size of each of those dimensions. You can click on those and change them. Click RENDER after each change to see what they do. The "Not Centered" option could have been changed to "Centered" to put the model in the middle of all axis.

Using a Variable to Modify Your Shape


Now let's use a "variable" - a placeholder which has a value - to help define the dimensions of your shape. In this case, we'll define the X-Dimension of your cube (actually, rectangle).

> Go to the "VARIABLE" category
> Drag the "Set Item To" block into your blocks space and connect it to the top of the CUBE block. It should snap into place.
> Let's name the variable better to make it something more relevant. Use the dropdown on "Item" in the block to select "New Variable" and name it "xSize". This will represent the value in millimeters of the X-dimension of the cube.
> Go to the "MATH" category and drag the "0" value block (the tiny blue one on the top) into the empty space in that "Set xSize To" block.
> Change the value in the "0" block to "5" for now.
> In the VARIABLE category again, drag out the "xSize" block - which represents now the value stored in the variable you named "xSize".
> Drop that "xSize" value block into the cube block where the "X" value is shown (there's a "10" there now). Dropping this block will push the other block out of there. you can click that "10" block once and then hit the "delete" key on your keyboard to delete it.

You now have a simple way to model a cube with any X dimension simply by changing the value of the xSize variable. Not super useful yet - but later you will see why using variable gives you power to easily make adjustable models for customization without re-drawing models.

Advantages of Coding 3D Models


The hollow box example you will learn in the next post
The idea behind coding 3D Models is to give an automated way to create custom objects. While plenty of 3D Models are actually artistic and benefit from human creativity, some models are simply functional and can be more quickly created using rules and precise measurements. That's where coding helps.

Let's take scaling for example (making a model larger or smaller)...
Most 3D Modeling apps and even Slicer apps make it easy to scale a 3D model to get larger or smaller sizes. But, sometimes, simple scaling can not achieve the desired outcome. For example, if you have a simple, square, hollow, open-top box which is 20mm square with walls which are 2mm thick. If you want a 40mm box, you can easily scale the model to 200% before printing. But then the walls of the new box will be twice as thick - 4mm instead of 2mm. That is not likely what you wanted. Most modeling apps even let you constrain the scaling to X, Y or Z axis - but in this example, there is no way to avoid the change to the wall thickness.

With Coding, I could easily separate the thickness of the walls of this box to be it's own setting (it's own VARIABLE!). This, in fact is the exact example which we will review in the next post - so stick around! In the next lesson, we'll learn how to make a 3D Hollow Box that Grows!

NOTE: this is the first in a 4-part series on making models with BlocksCAD code.
Part-1 - Making 3D Models with Code Blocks (aka Intro to BlocksCAD)
Part 2 - BlocksCAD 102 - Coding a #3D Box that Grows







Mar 4, 2016

3D Printed 4-Leaf Clover Bookmark for St. Patricks day

After the Valentines Day Heart paperclip, the Football paperclip, the "We Hate Paper" paperclip and the Creeper Clip - I was sure the paperclip... errr... BOOKMARK phenomenon was over. But then. This.

So, first of all - they're not 3D Printed paperclips. They're 3D Printed bookmarks. 

That is so much less offensive, since everyone knows We Hate Paper. Second, Saint Patrick's Day had to be celebrated with something 3D Printed - so what better, easier way to do that than with a Bookmark? (you thought I was going to say paperclip)

Design Goals


Let's face it. I had one goal here. Simple, Fast and Cute. Oh - I mean I had 3 goals here.

Design Summary


Saint Patrick's Day has a few iconic symbols, but I think the 4-leaf clover is the only non-controversial one (I mean, I don't really even know what a Leprechaun is, and I refuse to drink green beer). So - starting with the Heart-shaped paperclip (Bookmark!), I simply transformed it using very similar dimensions.


Design Challenge


There was one very tricky part to this design. While each leaf of the clover leaf looks like a simple heart, it definitely has a distinct inward curve down the center of each leaf. It was quite hard to achieve that in a clover shape. When I used the basic heart from the Valentines Heart model, it just didn't look like a clover leaf. So I tried something else...


I basically took an elongated and flattened oval-shaped sphere (is there a name for an oval-shaped sphere?) and then cookie-cut a half heart shape out of it to make each half of each leaf of the clover. Then put those pairs together for each leaf. Then duplicated that to make four leaves. The stem was simply a curved spline extruded and rounded - and the outer clip part is a cylinder with the middle cut out.

The Model


You can get the Clover Bookmark here (don't you dare use it as a paperclip!)... and I strongly recommend printing a few hundred of these and giving them to your friends before they celebrate Saint Patrick's day!

If your friends don't like Bookmarks, you can always give them Free Donuts.