Welcome to MakerHome

We've completed our yearlong print-a-day project! New projects will be posted at www.mathgrrl.com/hacktastic.

Sunday, October 12, 2014

New Hacktastic blog!

We're back from break after finishing the MakerHome 3D-print-a-day-for-a-year project, and picking up the pieces at a new blog. Join us over at Hacktastic:


Tuesday, August 26, 2014

Day 365!!! Last day of the print-every-day-for-a-year project!

I think the first thing that needs saying here is that a year is a very long time. There are a lot of days in a year. After about 60 or 70 days I remember thinking that we were probably halfway through this year-long blog thing and then being shocked at just how many days there are in a year. Damn.

But it is over, we have finished the year and so we get a TROPHY. Since our 3D-printing journey began with the desire to print knots, our trophy is a tiny 3D-printer (model from RichRap's very cleverly designed Advent Makerbot Replicator 2), which is printing an even tinier knot (model dating back all the way to the beginning of this journey, on Day 9):


Thingiverse link for the printer model: http://www.thingiverse.com/make:91229
Thingiverse link for the tiny knot model: http://www.thingiverse.com/thing:146468

Settings: We printed this tiny MakerBot Replicator 2 on a MakerBot Replicator 2! Layer height .3mm, yes raft, no supports, in 47 minutes. The tiny knot was printed on our other good 3D-printing friend the Afinia H-Series, using .2mm layer height, raft, and supports.

Technical notes, ending flavor: After this post we will definitely be taking a break from the blog for a little while. Next week I start my new job as Mathematician-in-Residence at MoMath, the National Museum of Mathematics, and I imagine that I'll be snowed under with crazy projects pretty quickly. But we still have some guest posts coming up, and more things to learn about, design, and print, so the blog will continue, just more slowly.

In the next few weeks we'll also build more content at our MakerGeek Etsy shop and our Geekhaus Shapeways shop, for those who want cool 3D-printed stuff but don't have a 3D-printer of their own.

THANK YOU to MakerBot, for making the excellent Replicator 2 printer.
THANK YOU to Afinia, for making the wonderful H-Series printer.
THANK YOU to Shapeways, for printing all the things that I couldn't!
THANK YOU to Tinkercad, for being free and easy for educators and students.
THANK YOU to OpenSCAD, for making parametric 3D-design free and accessible to all.

And finally, thanks to everyone who has been reading the blog! Say hi in the comments if you have a chance. If you happen to be in the Brooklyn/NYC area let me know so we can have beverages and talk 3D printing sometime...

Monday, August 25, 2014

Day 364 - Customizable Hinged Polyhedra

TWO DAYS LEFT. Just today and tomorrow, and we're done with our print-and-blog-about-one-thing-every-day-for-an-entire-freakin-year project!

As our final big project this year, we've put together one model for making hinged nets of all five Platonic solids: the Tetrahedron (Day 353), Hexahedron/Cube (Day 345), Octahedron (Day 359), Dodecahedron (Day 362), and Icosahedron (Day 363). In the Thingiverse Customizer link below you can choose which polyhedra you wish to print and then set length, thickness, border, and clearance/tolerance values however you like. Here's the set of five:


Here's what they look like unfolded:


Thingiverse link: http://www.thingiverse.com/thing:440961

Settings: These models print fully assembled with hinges intact. The clearances are optimized for a Replicator 2 with .3mm layer height, with no raft and no supports. You can use a raft if you have to, but you must use no supports at all or else the hinges might not work correctly.

Technical notes, K-12 education flavor: The original idea for these models came from Alexis Stevens at James Madison University, who was using paper polyhedral nets in her courses. These models are built to be sturdy and able to hold up to rough-and-tumble educational use. Students will be able to fold and unfold the plastic printed models as many times as they like without the models degrading as they would if they were made of folded paper. Thank you Alexis for this great idea!

Sunday, August 24, 2014

Day 363 - Customizable hinge/snap Icosahedron net

THREE DAYS LEFT.

Our final hinge/snap net is for the remaining Platonic solid, the lovely Icosahedron:


Thingiverse link: http://www.thingiverse.com/thing:440950

Settings: Printed on a MakerBot Replicator 2 with no raft and no support on an acrylic build plate, with .3mm layer height. When you load the model the MakerBot Desktop software will tell you that the model needs to be scaled down, but that is only because it needs to be rotated. Rotating by 30 degrees will make the net line up horizontally with the platform.

Technical notes, trickiness flavor: The Icosahedron is the trickiest of all the Platonic solids for hinged nets. The one we printed on Day 84 hardly held together; it would collapse at the slightest touch back into its flat configuration. What goes wrong is that the Icosahedron is nearly spherical and therefore its faces meet at very obtuse angles, which makes it difficult to keep the faces snapped together. For this reason we have lowered the clearance between the snaps significantly for today's icosahedron model, reducing it from .55 millimeters to .25 millimeters.

Saturday, August 23, 2014

Day 362 - Customizable hinge/snap Dodecahedron net

FOUR DAYS LEFT.

Today we printed our fourth Platonic solid hinge/snap model, of a dodecahedron. This is the same shape we printed back on Day 83 as part of our old Hinged Nets and Snap Tiles series but now the dimensions and tolerances of the model are customizable in OpenSCAD and at the Thingiverse Customizer link below.


Thingiverse link: http://www.thingiverse.com/thing:440853

Settings: Printed on a Replicator 2 with .3mm layer height and no raft, no supports.

Friday, August 22, 2014

Day 361 - Friday Fail: 72 Pencils edition

FIVE DAYS LEFT.

Today we printed a redesign of AuntDaisy's Geo Hart 72 Pencil Holder from Thingiverse. Instead of scaling that model we made two simple new models in Tinkercad. Each model is just a hexagon ring with holes in it, used to line up pencils to make George Hart's wonderful 72 Pencils sculpture. Here's what our 72 pencils looked like right before we removed the last two rings and a stray rubber band that was keeping in the front pencil:


And here's what the rings themselves look like. The blue rings are sized to fit snugly around the erasers of standard yellow Triconderoga pencils, and the red rings have large holes that are sized to fit around the body of the pencils at the pointy ends. I didn't need all eight of these; two of each were enough to keep half of the pencils in place so that I could line things up and slide in the other 36.


Tinkercad link: https://www.tinkercad.com/things/aTD0Zg8rDSj-pencil-sculpture-helpers
Thingiverse link: http://www.thingiverse.com/thing:440151

Technical notes, failure flavor: The sculpture seemed so, so sturdy that we somehow thought it would all stay together even after we removed the last helper rings. We saw online that other people use crazy glue to hold together parts of the model but that is OTHER PEOPLE. We thought we were soooo much better and would never have to do such a thing. Surely WE can do this without glue, everything is going so well, what could happen?


The pencils are now assembled into a much simpler sculpture that we proudly display in our lovely home:

Thursday, August 21, 2014

Day 360 - Shapeways print of the TRI bracelet

SIX DAYS LEFT.

The TRI bracelet (Day 320) is back from Shapeways! It's delicate but very beautiful and came out perfectly. You can bend it easily in your hand and it is soft on the wrist. It sort of feels like a strip of light, sanded tree bark. I wouldn't wear it to a bar fight or under a heavy jacket that I might take on and off a lot, but it is plenty sturdy for casual workday/eveningwear use.


Shapeways link - if you don't have a printer or want a light, delicate version of the bracelet, Shapeways will print and mail this to bracelet you for $10: https://www.shapeways.com/model/2293264/function-bracelet-tri-large.html?materialId=77

Thingiverse link - Customize to fit your own size and preferences, download for free, and print it yourself! http://www.thingiverse.com/thing:416336

Wednesday, August 20, 2014

Day 359 - Customizable hinge/snap Octahedron net

Today we modified the code of the hinge/snap Tetrahedron net from Day 353 to make an Octahedral net. Here are two copies, one unfolded and one folded:


Thingiverse link: http://www.thingiverse.com/thing:440141

Settings: Printed on a MakerBot Replicator 2 with .3mm layer height and no raft or supports, in 31 minutes.

Technical notes, why-are-we-doing-this flavor: The hinge/snap models we've been making this week are better than the ones we made for the Tetrahedron we made on Day 80, the Cube we made on Day 81, and the Octahedron we made on Day 82, for five reasons:

First of all, the snaps on the old models were not "ambidextrous"; some snaps had more tines than others, and we had to think carefully to make sure that we put the correct type of snaps on each face. In our new models every snap on every side is identical, and due to the orientability of the polyhedra these snaps automatically align together nicely.

Second, and by far the most importantly, the old hinge/snap models were made in Tinkercad while the new models were made in OpenSCAD. The reason this is important is that the OpenSCAD models are parametric; in the OpenSCAD code we can change the length, thickness, and tolerances simply by changing the appropriate numerical parameter and then re-compiling. In Tinkercad, changing tolerances meant re-doing each hinge and snap by hand. Even better, since these new models are designed in OpenSCAD we can upload them to the Thingiverse Customizer so that users can change parameters as they like without ever having to deal with the actual code.

Third, because of the way the OpenSCAD code for these models was written we will be able to use the code to create more exotic polyhedra than the Platonic solids, without too much extra work. For example we could construct nets for all of the semi-regular polyhedra, with different types of faces within the same model.

Fourth, because we stole some design code from our Print-in-Place Fidget Cube, these new models have much more reliable hinges with fewer non-manifold edges and fewer printing problems. The new hinges can also be printed smaller than the previous models' hinges.

The fifth reason is kind of weird, which is that the snaps and hinges on this model don't look similar. We constructed the old models so that the snaps and hinges looked as much like each other as possible, so that the folded-up object would look as regular and homogeneous as possible. But it turns out to be kind of difficult to unfold an assembled object if you can't easily tell which edges have the hinges and which have the snaps! For the new nets we purposely made the snaps and hinges easy to tell apart.

I'm glad to be finishing out the year with this re-do of our old hinge/snap models, because it really shows how much I've managed to learn this year, especially in OpenSCAD. There are so many things I didn't get a chance to learn, and I still know so little about everything, including OpenSCAD, but for this model at least I can see how I grew up a little bit over the course of the year. There are only six days left to our year of print-a-day. Six is the best number. Tomorrow we start counting down to the end...

Tuesday, August 19, 2014

Day 358 - iPhone stand binge

I can't believe it took me this long to get around to printing an iPhone stand. Phone cases and stands are the first thing that most of my students think of to print. But here I am, almost at the end of printing one thing a day for an entire freakin year, and it just now occurs to me that I need a stand for my iPhone. This is like when I learned to knit by struggling through a complicated Fair Isle Estonian sock pattern instead of starting with a scarf like everybody else. After a couple of years of knitting strange and complicated things I finally got around to knitting a scarf, and now almost everything I knit is some kind of scarf. I wonder if now that I've finally printed an iPhone stand I will print nothing but iPhone stands...

Or maybe I can just get it out of my system all at once. We printed five stands today:

Print One: desktoplathes' iPhone stand with 2 settings. Can't get simpler than this. Very nice! The two angled positions work particularly well if you have a case on your phone, since the lip of the angle grabs the front lip of the case. This results in a very sturdy stand, even though it is so small you could easily carry it around in your pocket.


Thingiverse link: http://www.thingiverse.com/make:91016

Settings: MakerBot Replicator 2 with raft but no supports, .3mm layer height, 22 minutes.

Print Two: SunnyJames' 6 Position iPhone stand. A lot like the one above but with an extra slot for when you want to stand your phone dead vertical. I can see that being useful for filming. The center slot is too small for our iPhone 4 with case, and too large for our iPhone 5 without case; but for the iPhone 4 with no case this is Goldilocks. The outside slots work with or without the case, with either iPhone model.


Thingiverse link: http://www.thingiverse.com/make:91017

Settings: MakerBot Replicator 2 with raft but no supports, .3mm layer height, 30 minutes.

Print Three: adampaterson's Phone Stand Concept - Dual Angle model. This one is really interesting, and it took me a while to figure out how to use it. It turns out to be perfect for that super-low-angle position where you want to keep your phone on your desk and be able to use the touch screen. Yes! This is the only stand we printed that has this unique and very useful super-low position.


Thingiverse link: http://www.thingiverse.com/make:91021

Settings: MakerBot Replicator 2 with raft but no supports, .3mm layer height, 27 minutes.

Print Four: JohnA's Kickstand for iPhone / iPad Touch. I love how tiny this is; you could even put this on your keychain if you wanted to. In fact, it has a hole that you could use to do just that! However I had trouble balancing my phone with this one, and sometimes I didn't get it quite right and the phone would fall over. Perhaps I need to print it at a slightly different scale to get it to fit correctly with my model of phone.


Thingiverse link: http://www.thingiverse.com/make:91022

Settings: MakerBot Replicator 2 with raft but no supports, .3mm layer height, 22 minutes.

Print Five: tkramm's iPhone 5 Stand. This one took about twice as long to print as the others, but it has a really sleek and professional design. I'm glad to have printed this one in black; it looks great with the phone. It's also very sturdy and gives access to the button on the front of the phone. There's only one angle option but it is a good one. Fits our iPhone 5 but not the iPhone 4.


Thingiverse link: http://www.thingiverse.com/make:91024

Settings: MakerBot Replicator 2 with raft but no supports, .3mm layer height, 57 minutes.

The verdict? Some are better for charging, some for watching videos, some for landscape, some for filming. And now I think we have enough iPhone stands for the whole family and I can stop printing them now.

Technical notes, time flavor: The five times listed above are from the MakerBot Desktop software's estimate; I used that measure in order to be consistent, because I didn't mark down the exact times for all of the items. In general the MakerWare estimated time is an over-estimate for the Replicator 2; for example, the fifth print actually took only 47 minutes, not 57. For the Replicator Mini the opposite is true: the MakerBot Desktop software tends to under-estimate the time needed for printing. In general we have the following:

Actual Rep2 time < Estimated Rep2 time < Estimated Mini time < Actual Mini time.

Technical notes, counting flavor: The other day someone joked to me that I didn't actually print something every day this year because sometimes there are guest posts. Well joke's on you Mr. Husband, today I printed five things. :)

Monday, August 18, 2014

Day 357 - Printer challenge! 26 mm Level 3 Menger sponge

Today we had a visit from Rebecca Field, JMU mathematics professor, co-author, long-time friend, and fellow member of the Female mathematicians who have been known to have teal hair list. She is about to take over as head of the GSCI 104 3D Printing courses this fall in the JMU 3-SPACE classroom. In that classroom we have nearly a dozen Afinia H-Series 3D printers, currently running on ABS filament. Afinia now offers an option to print with PLA, and Dr. Field and the other directors of 3-SPACE are considering switching. PLA doesn't require a heated platform, and it has less problems with curling. We did some test prints with an Afinia using PLA and they looked really good. But as usual, the only question I really care about is: can we print a Menger sponge with it? The answer is yes, but not as well as in ABS. We also tested the MakerBot Replicator 2 and the MakerBot Mini, both in PLA. Here are the four results:


These are placed in order of quality from left to right; we'll detail each print below. The model we used was a base-repaired version of owens' game-changing, support-free Customizable Menger sponge model. It's only 26 millimeters on a side, which makes the holes extremely small on this model. I think this is about the limit of what a filament-type printer can handle, so it is a very challenging test.

Thingiverse link: http://www.thingiverse.com/thing:439910

Fourth place: The Afinia PLA print (the blue model on the left) came in last in our test. However, printing a Menger sponge, especially a very small Level 3 (!) Menger sponge, is one of the most difficult things we could have asked these printers to do. The small holes on this model are too small to even put a thin needle through! So while the Afinia PLA had some problems with the fine detail of this model - especially at the corners - it still did a pretty good job. For less crazy-detailed models the Afinia PLA did very nicely. But as you can see in the close-up, it had some problems with globbing up on the detailed bits:


Third place: Next in quality was the MakerBot Mini. The main problem with this model was threading between all of the holes in the model. And there are a lot of holes! The extruder for the Mini seems to have a problem when bridging over empty space; little bits get extruded as the nozzle passes through the space, which makes little spiderwebs across all the gaps. The Mini did a much better job than the Afinia on the corners, but the threading in the small holes is impossible to remove. We cleaned up the threads from the larger holes before the picture was taken.


Second place: The Afinia H-Series with ABS was very, very nice. The corners aren't as sharp as on the MakerBots, but the detail came out very nicely, with very clean holes all the way through. And you can't beat the opaque, soft look of the ABS. And the amazing yellow color! A very nice and reliable print; I've printed literally hundreds of these on the Afinias and they work very well.


First place: The winner is of course my best friend the MakerBot Replicator 2. I LOVE YOU REPLICATOR 2 PLEASE DO NOT BE DISCONTINUED. Sigh. The picture below is a bit shiny and does not do justice to the incredible sharpness and detail of this model; the top face is most representative. The Replicator 2 prints this model as if it was as easy as printing a solid cube, no worries. I have a print of a Level 3 Menger sponge from the JMU Engineering Department (thank you John Wild!) made on a fancy refrigerator-sized Dimension Elite printer, and the Replicator 2 print is just as good. In fact, it's better, since the dissolvable support material from the Dimension Elite doesn't quite get out of the smallest tunnels, while the Replicator model has fully open tunnels because of the way that it printed on its corner; nothing was ever printed in the tunnels, so nothing needs to come out. Super clean tiny holes all the way through and edges so sharp it almost hurts to hold on to the model. Fantastic!

Sunday, August 17, 2014

Day 356 - Sunday guest: Fred Hohman and knot fibrations, part 2

Today we continue Fred Hohman's guest post from Day 355, in which he will print the knot fibrations he constructed yesterday...

Now that I have code that can generate trefoil knots and fibrations of any thickness, it’s time to start printing various versions of the models. The goal is to be able to print the trefoil knot separate from the pages to create a 3D puzzle. At the end of this post I’ll share some of my successful experiments in doing just that.

1. Printing the trefoil knot with one page with a gap.
Here I made a model of the trefoil knot with one page, but removed the points where the page meets the knot. In other words, there is a gap running along the knot where the page meets the surface of the knot. When printed, the page should be free to wiggle a little bit. Here is the object in Mathematica:


After exporting to STL and printing, this is the result:


Thingiverse link: http://www.thingiverse.com/thing:331530

2. Printing the trefoil knot with three pages with a gap.
This is a trefoil knot with three pages, all of which have gaps where the pages meet the knot. This knot is closely related to the previous model; however, two more pages have been added, all of which are equiangular (think of the Mercedes Benz logo). The print time on this can be a bit longer (an afternoon), and the clean-up of supports can get annoying. However, this model looks fantastic in person. Here it is in Mathematica:


And now printed:


Thingiverse link: http://www.thingiverse.com/thing:337185

3. Printing the trefoil knot and one page separately.
Here I printed the standard trefoil knot but edited the domain so that the knot itself is bigger. I also made a groove in the knot that follows where one page meets the surface, with hopes that if I could print a page separately, then I could snap the page into the knot. Next, I took one page and split it into two pieces with the plane z=0. With a little force, I was able to get both pieces in the knot. A good first start, but not ideal for consistent “puzzle-building”.


Current and future work.
This puzzle-building problem illustrates a simple idea, but can prove to be very complicated in practice. Many people have assembled large objects by printing smaller components; however, due to the complex geometry of the shape we are dealing with, slicing the knot in a particular way such that the pieces can be reassembled without blocking any other piece is an interesting and challenging problem for any 3D printing enthusiast.

My latest attempt has been to have Mathematica generate all twelve pages of Pi/6 thickness, cut each page into two pieces using the plane z=0, and import each piece individually into Blender, a free, open-source 3D modeling and animation software. In Blender, I added small holes in the bottom and top of each piece of a page. Once the hole was made, I printed the pieces of the pages and glued in small magnets to hold two pieces of the same page together (not all pages are same; in fact, every page is different from one another). I successfully printed a trefoil knot and 3 pages (6 pieces), all with magnets, to make a 7-piece 3D puzzle. Here is the process in Blender:
And here are the prints:




This coming year I will work to refine the process of adding holes; I may cut the pages at different angles too. Once a puzzle has been made and printed that is easy to piece together, contains multiple pieces, and is of appropriate size, I plan on posting the puzzle in its entirety on my Thingiverse profile—so be on the lookout!

I would like to thank Dr. Laura Taalman for the opportunity to write about my research so far, and Dr. David Gay at the University of Georgia for his guidance and access to a MakerBot Replicator 2.

Saturday, August 16, 2014

Day 355 - Saturday guest: Fred Hohman and knot fibrations, part 1

One thing about living in New York City is that you get a lot of guests. Lots of people come to the city and hotels are too expensive even to consider! We've had seven different people visit us since we moved here just a couple of months ago. Blog-wise it's the same story: now that the print-a-day year is wrapping up we have a lot of guests. Welcome all!

Today's guest poster is Fred Hohman (fredhohman on Thingiverse), an undergraduate mathematics student at the University of Georgia, student of David Gay as well as my good friend Jason Cantarella. Fred is the designer of the beautiful "trefoil trumpet" we printed on Day 311, and in the next two posts he'll be walking us through the math and the Mathematica of a sort of "3D puzzle" based on this trefoil. 

Hello MakerHome and MakerHome readers!

I am Fred Hohman, a rising senior Mathematics and Physics student at the University of Georgia. I have been working under Dr. David Gay in the Department of Mathematics at the University of Georgia since the beginning of the year, and I will be continuing my work until my graduation in May 2015.

Earlier in the summer I had the wonderful opportunity to meet Dr. Laura Taalman (mathgrrl) after her talk at MoMath on “Making Mathematics Real: Knot Theory, Experimental Mathematics, and 3D Printing.“ After chatting about math and 3D printing she asked me say some words about my undergraduate research at UGA. You may have seen already Dr. Taalman’s earlier post “Day 311 — Trumpet Trefoil,” in which she introduced my trefoil knot. If you have ever seen a standard trefoil knot you’ll notice that the trefoil that was depicted is a bit different.

The goal of this project is to create a 3D puzzle of the trefoil knot and its fibrations via 3D printing.

Let’s start with some theory.

Theory and Stereographic Projection.
Consider the following function from C^2 to C (we can think of this as a function from R^4 to R^2 - see the Wikipedia entries for real n-space and complex n-space for more information): this function sends a coordinate pair (u, v), where u and v are complex numbers, to the quantity (u+i*v)^2-(u-i*v)^3, where i = sqrt(-1). This particular function’s zero-set, a set of points {(u,v), …} such that (u+i*v)^2=(u-i*v)^3, generates a trefoil knot through infinity. By considering inverse images of certain subsets of C we will generate a trefoil knot given our function’s zero-set; however, this inverse image is a subset of C^2. To obtain our knot and understand its subsets better, we need a method to realize our object in R^3.

As a preliminary example, consider a sphere in R^3 sitting on a plane (think of a ball sitting on a table). From the top of the sphere (think North Pole), draw a line segment downward through the sphere and ending at the table. Notice that this line segment intersects both the sphere and table once. We can do this same line drawing method over and over to obtain a one-to-one correlation from the sphere to the plane, i.e., every point (well, minus the exact top of the sphere!) on the sphere can be mapped to the plane. This is called stereographic projection, and Henry Segerman (henryseg on Thingiverse) has created a fantastic 3D printed model illustrating this method:


If we have a point light source (smartphone camera flash) and place it at the top of this model, light rays will act as the line segments in the above example. If held at the correct height, we should see the Cartesian grid on the table. I always keep this model in my backpack to demonstrate to people stereographic projection—I recommend printing it out!

So stereographic projection is a function from the unit sphere in R^3 onto R^2, but recall that our function is defined in R^4. For us to embed our object in R^3, we use a generalized version of stereographic projection to go from the unit sphere in R^4 to R^3. With this tool, we can compose the inverse stereographic projection function with our function defined above. So our new function now goes from R^3 -> C.

If we take inverse images of subsets of C, we now have a function that goes from C -> C^2 = R^4 -> R^3, i.e., our single, final function takes in certain subsets of C and outputs subsets of R^3—exactly what we want!

Mathematica, Plotting, and Resolution.
To generate 3D computer models of the trefoil knots, I chose to use Mathematica. RegionPlot3D, a built-in Mathematica function, plots regions in 3D space using inequalities. In order to use RegionPlot3D, the user must specify the domain of values to plot over in the x, y, and z directions, as well as a mathematical inequality. As an example we can generate a sphere of radius 1 by the following code:



Mathematica will plot all points (x, y, z) such that each point falls within the considered domain and obeys the given inequalities—but we can take this further. We can use multiple inequalities using boolean operators such as AND and OR. As an example, let’s consider the same sphere defined above, but restrict the region so that only points above the plane z=0 are plotted.



Of course we could restrict the z range so that z goes from (0, 1), but it is nice to be able to manipulate a model without changing the overall plotted region. When models become more complicated this method allows us to control individual components without altering other pieces.

Before we start creating trefoil knots, there is one last Mathematica option that needs to be discussed: PlotPoints. Notice how choppy and non-circular the bottom of our hemisphere looks in the image above—PlotPoints will fix this. The PlotPoints function can be thought of as the resolution of a 3D model. A higher PlotPoints value tells Mathematica to use more points to represent the plotted region. However, as we increase PlotPoints, we also increase computation time. Say we used a PlotPoints of 50 and the model was under-represented. We could double our resolution and set PlotPoints to 100, but remember we are in 3D space, so by doubling the number of points in all directions (x, y, and z) we increase our computation by 2*2*2*=8. In other words, doubling a model’s resolution increases computation time by a factor of 8. So let’s plot that same hemisphere with a PlotPoints of 100 and see what the bottom looks like.



Much better! Now that we have an understanding of RegionPlot3D and PlotPoints, it’s time to create some trefoil knots.

The main Mathematica function I wrote, inTinftube, defines the trefoil knot (the composition of our trefoil knot function with inverse stereographic projection explained above) by inputting points (x, y, z) and “knot thickness” and returning a single number. Inside the function it tests points using inequalities such that if the outputted number is less than 0, Mathematica includes the point in the plot, and if the number is greater than 0, Mathematica does not include the point in the plot. We also need to define a boundary condition, otherwise our model would stretch to infinity! So we can include more inequalities that points must satisfy such that our boundary is a cylinder of radius 3, height 6, and is centered at the origin. With these parameters selected, the results below depict our “standard” trefoil knot. This knot is the inverse image of a small disk around 0 in C to give the knot thickness—a visual description of this will be shown in the next section.




Thingiverse link: http://www.thingiverse.com/thing:243260

Open Book Decomposition, Fibrations, and Pages.
Now that we have our “standard/reference trefoil knot,” it is time to start adding fibrations. To do this, unravel the above trefoil so that it is a straight strand. Consider that cord the spine of a book. Now add in one page to the book; the page will connect to the spine along one edge. Now twist the cord back into the trefoil knot configuration—what does the page, i.e., knot fibration, look like? This idea is called an Open Book Decomposition.

We can visualize this by adding extra regions to the model in C before we apply our single function. To do this, I wrote another Mathematica function, inTinfpage, that takes in points and outputs a number; however, this time the function also requires an angle. This angle will define a ray in the plane starting at the origin that is rotated an angle in the mathematically positive direction. As before, we can have Mathematica plot points if the outputted number is below zero, but we want a page of some physical thickness (in order to 3D print). For most of my successful prints I have been using a page thickness of pi/6. So we can now include another “ray-function” and input an angle that is pi/6 larger than before and have Mathematica plot things that are greater than 0. We have now included another region in the plane. This process is much easier to see in the image below.


The circle is the radius of the trefoil knot, and the region in the first quadrant is our fiber with thickness. That’s the new region we want to include when using stereographic projection. Remember the picture above is the subset of C that we are taking inverse images of. We can now apply our same code to generate the following model.



Why stop at one extra region? We can add as many as we would like, and at pi/6 thickness, we should be able to fit 12 extra regions in our trefoil knot (since pi/6*12=2*pi). Some other examples are below, with the region in C shown on the left, and its inverse image (after applying stereographic projection) shown on the right.



We can now start to see the consequences of projecting our 4D function into R^3, which is why our knots are visually unlike typical trefoil knots.

In the next post we'll 3D print the models we have created...

Friday, August 15, 2014

Day 354 - Forty-one Pentagonal Icositetrahedra

Today (August 15) I had the great pleasure and honor of attending the final convocation for the 2014 NYU GSTEM program. At this event, 41 young women who are rising high school seniors presented the work they did this summer interning at various science, technology, engineering, and mathematics departments. The presentations were incredible and if I hadn't known they were high school students I would have thought they were just finishing college and on their way to graduate school. Today the future looked very, very bright. Like, genius bright. We made them each a Pentagonal Icositetrahedron (see Day 197).


Thingiverse link: http://www.thingiverse.com/make:90906

Settings: Printed at 50% scale on a MakerBot Replicator 2 with .2mm layer height and raft but no support (hooray!).  Print time was about 21 minutes a piece and they printed eight-up without problems.

Here are some of the are future geniuses looking at the 3D-objects we brought to the convocation:


Thursday, August 14, 2014

Day 353 - Customizable hinge/snap Tetrahedron net

Today we modified Day 344's Cube net design to make a Tetrahedron net:


Here it is mostly folded up. This net is so small that it only folds well in one direction; in the other direction the edges of the faces keep the hinges from swinging open enough for the model to close all the way. The cube net, and all other larger nets, fold well both ways.


Thingiverse link: http://www.thingiverse.com/thing:440001

Settings: We optimized this design for printing on a Replicator 2 with .3mm layer height and no raft, no supports. If your printer is different then you may need different clearances in your model. You can use the Thingiverse link to open the model in Customizer and set your own side length, border width, hinge clearance, and snap tolerance.

Technical notes, platform/raft edition: These hinge/snap net models print best without a raft. You can print them with a raft, but it will take 50% as long and then another 25% longer for you to peel off the raft bits. (Note that although you can print these with rafts if for some reason you want/have to, you cannot print these models with supports or the hinges will not work correctly.) If you're printing on an acrylic build plate with PLA, like the standard plate that comes with the MakerBot Replicator 2, then you have an excellent build surface for printing without a raft. If you're printing with a glass platform on the Replicator, or with some other printers, then you may not be able to print without a raft. For me at least, PLA never sticks to the glass, and I need glass+tape+raft to make prints work on the glass build plate (see Day 214). In any case, make sure your build platform is very level before you try printing a large hinge/net model, or the outer pieces will be deformed and hinges and snaps may fail.

Technical notes, OpenSCAD edition: Using the same hingesnappoly_maker, and attach modules as on Day 344, we assembled the tetrahedron as follows:

// center triangle
union(){
poly_maker(sides=3);
attach(type=2,side=1,sides=3);
attach(type=2,side=2,sides=3);
attach(type=1,side=3,sides=3);
}

// next triangle
translate([ (length/tan(180/3)+jump)*cos(180/3),
(length/tan(180/3)+jump)*sin(180/3),
0]) 
rotate(180/3,[0,0,1])
union(){
poly_maker(sides=3);
attach(type=2,side=2,sides=3);
attach(type=1,side=3,sides=3);
}

// next next triangle
translate([ 0,
2*(length/tan(180/3)+jump)*sin(180/3),
0]) 
rotate(2*180/3,[0,0,1])
union(){
poly_maker(sides=3);
attach(type=1,side=2,sides=3);
attach(type=2,side=3,sides=3);
}

// next next next triangle
translate([ (length/tan(180/3)+jump)*cos(180/3),
3*(length/tan(180/3)+jump)*sin(180/3),
0]) 
rotate(3*180/3,[0,0,1])
union(){
poly_maker(sides=3);
attach(type=2,side=1,sides=3);
attach(type=2,side=2,sides=3);
}

Wednesday, August 13, 2014

Day 352 - Center of mass demonstration

Today we printed designbynumbers' Center of mass manipulatives for calculus classes from Thingiverse. It worked very well and balanced wonderfully!


Thingiverse link: http://www.thingiverse.com/make:90962

Settings: Printed on a MakerBot Replicator 2 with .2mm layer height. We changed the infill to "linear" instead of "hexagonal" because the hexagon-filled one seemed not to balance quite right. With linear infill the balance was spot-on.