Fab Academy portfolio Sara Kutkova

Week 2: Computer-Aided Design

This week we started to look at 2D and 3D modelling. The aim was to try different modelling tools such as Fusion360 or FreeCAD.

It was interesting to hear that we should try to have the sketches fully constrained at the end of sketching/modelling. I was aware of the parametrisation feature in Fusion and used it a lot, but never noticed the degrees of freedom.

OpenSCAD

When I first heard about this software, I was intrigued because you use programming to model something in 3D. There is no need to have sketches since you can directly model the 3D object.

This is how the OpenSCAD looks like when you open the new project:

Figure 2: OpenSCAD blank project

I did some tutorials and made some stuff, but I’m not an expert. Everything I’ll write here is just my findings and perceptions. When I started using OpenSCAD, the most important commands were cube, translate and rotate. Cube (or cylinder, or something else that creates shape for you) will create the object on your current position, translate moves your position on the plane, and rotate will rotate the object you are about to create.

x = 2;
y = 4;
z = 8;
translate([x,y,z])
    rotate([90,0,0])
        cylinder(h=5,r=3,center=true);   

The code above would be a valid code that would make something in the OpenSCAD. The first three rows define x, y and z variables. Then there is translate command, that moves the position on the plane where the object will appear. Next command, nested in this translate command (to indicate that this happens after it), is rotate which rotates the object 90 degrees along the x-axis. The last command creates a cylinder with radius 3 and height 5.

Figure 3: First test program

Using these simple commands I followed a OpenSCAD tutorial and modelled a simple car.

Figure 4: Simple car (tutorial)

After doing this tutorial, I wanted a bit of challenge, so I decide to do my own model of train. First I did some brainstorming on how this train should look like:

Figure 5: What am I making?

And one with dimensions:

Figure 6: Dimensions of the train model

The commands I used to make the train were the same as above, plus two extra concepts:

Combining objects - you sometimes want more complex objects, and you can often achieve that using boolean operations - union, difference and intersection.

union() {
    sphere(r=10);
    translate([12,0,0])
        sphere(r=10);
}

Importing external models - you can import models from the MCAD library, which is a library of components commonly used in mechanical designs. I used a round box model from it, which looks like and behaves similar to the cube, but has an option for rounding the edges.

use <MCAD/boxes.scad>
roundedBox(size=[15,5,30],radius=1,sidesonly=false);
Figure 7: My train

As seen on the figure above, I heavily parametrised the whole code, so all the train dimension could be easily changed (took a long time though).

One thing that I struggled to figure out was that when there is a nested translation (like translate, union, cube, translation, cube) then the second translation is not from [0, 0, 0] but from where the first translation “ended”. It now makes sense when I’m thinking about it, but before I just somehow assumed that the translation is always from [0, 0, 0] just because that’s how it is if there are not nested.

Figure 8: My train zoomed in (so you can admire it from up close)

Now the modelling part is done. I rendered, sliced and printed my train, and it turned out really nice. I was proud and happy to print something that I modelled.

Figure 9: My train in Cura

The print looks nice, but there could be some adjustments. For example, I haven’t realised that because the wheels are connected to the main body of the train with tiny rods, it was difficult to get them of the printer bed in one piece. (I broke one of the bigger wheels in half when I squeezed it to get the train from the printer). The other thing that could be improved is that you can see the infill between lower part of the train body and the upper part of the train body (Figure 9). Perhaps I haven’t overlapped those two cubes enough in the OpenSCAD?

Figure 10: First self-designed project printed
   
Figure 11: There is still room for improvements

Overall I would say that in some cases, this is the perfect software to use. When I want to make something where the same part is used multiple times (module), or where some steps are repeated (using loops), this would be my software of choice. However, the coding takes time. If I want to make a simple train as the one above, I would probably make it in the Fusion 360 as that would probably take less time. On the other side, the software is also not robust (can’t handle very complicated design made out of thousands of lines of code), and therefore maybe can’t be used in industry.

SolveSpace

SolveSpage is a software that was introduced during the lecture. I haven’t used it before, but I wanted to try to use it.

I really like how the “degrees of freedom” was visible during the sketch phase - it makes me want to have the little green “OK” there :)

Regarding my model: there was a plant at home that would benefit from a bigger pot, so I decided to make one - it seems simple enough, but also a bit more complicated than just some boxes, so I can get to try more features of SolveSpace.

Figure 12: Sketch of a pot I want to make

This is how the SolveSpace looks like when you open a new project:

Figure 13: SolveSpace blank project

At first (coming from a Fusion360 background) I made a really nice and detailed sketch where I wanted to extrude only some part of it. However, it turns out that this is not possible and probably also a bad practice in SolveSpace. I was a bit frustrated and didn’t understand how it works, and was looking for a hacks how to extrude specific surface.

Figure 14: First (failed) sketch

However, what I needed was to change my perspective. SolveSpace is not Fusion 360, and it works differently. After I adjusted to it, and understood that I need to sketch what I want to be extruded (at that time, then sketch something again), the whole process started to make sense and I progressed quickly.

Figure 15: What I am doing

I made the cylindrical shape by revolving the sketch around the z-axis. Then the new sketch plane was selected using a point on that plane and selected the “New group in new workplane” button.

Figure 16: Final product - the pot
   
Figure 17: Bottom part of the pot

The final product turned quite nicely. It took around 4.5 hours to print, but that’s because the sides of the pot were quite thick - four full rotation per one layer. If I were to print another pot, I would make it a bit thinner, which would then take less time to print.

Figure 18: Printed pot
   
Figure 19: Printed pot from angle
Figure 20: Almost invisible
   
Figure 21: Surprise, it’s inside!

From my perspective, the advantage of SolveSpace is that it is perhaps less complicated than Fusion 360, and I found the interface more intuitive. The negative side is that SolveSpace is of course less powerful, and also I am still not totally sold on how the sketching and extruding works.

2D Raster Software - Krita

I explored the Krita raster software. I had a .png that I wanted to edit so it would not include a cigarette and it would include a logo of an organization I am part of. This organisation wanted to make patches, and bought the design from an artist called Grace Witherell. You can buy the original stickers on her Etsy here.

Figure 22: Before and after the edits

At the beginning I had some trouble figuring out the shortcuts (for example the zoom is control and “+”, changing the pen size is shift and mouse scroll to left and right), but then I was surprised how easy it was to make the changes fast.

Figure 23: Krita

As this was a raster software, you could see the individual pixels when you zoomed in.

Figure 24: Close up of the blurred edges

I used a pen to pick up the original color, and then draw over the parts I wanted to hide. I also imported ESN logo, and included a text with current year. We then sent this design to a patch making house company.

Figure 25: Final patch

I will not include a high quality files here, as they belong to the original artist.

2D Vector software - Cuttle

I went on a holiday to Lisbon, and I really like the stained-glass windows they had. The colors were beautiful, and it made the whole space to have a different feel.

Figure 26: The Cathedral of Lisbon

I wanted to make my own little sun catcher, perhaps out of colored seethrough vinyl, which I can then cut on the vinylcutter. Then during the nice sunny days (rare in Helsinki), I can be reminded of my time in Lisbon.

I will design this sun catcher in Cuttle software. I first used the very nice tutorial they had, where I got familiar with the commands and capabilities of the software.

Figure 27: Cuttle tutorial

Then I got to design the sun catcher! I first did a little sketch how I want it to look like.

Figure 28: The idea

Then I however found the advanced shapes option. I really liked the star shape, it reminded me of a little sun, so I used that as a middle.

Figure 29: Advanced shapes

However, there was no parallelogram shape, or a way to change a rectangle to one. I tried to make it from lines, but it was too imprecise. Finally, I decided to connect two triangles to make one. First I connected them, then used the modify option to remove overlaps, and as a last step I did boolean union which resulted in a nice parallelogram.

Figure 30: Connecting triangles
   
Figure 31: Boolean union to make them one shape

At the beginning I made some mistakes, and the triangles turned out to be off (Figure 32).

Figure 32: Misaligned triangles

After I had the parallelogram shape, I used the rotational repeat to make many copies of it. I ended up using 8 copies instead of 6 from the sketch because I think it looks better. I then added the triangles, also did the rotational repeat with them and added an outline stroke.

Figure 33: Final sun catcher

The .svg file from Cuttle is at the end of this page in the Files section.

The only unfortunate thing about Cuttle is that at the free version, you can only have 5 projects.

Files

OpenSCAD train file - [Download]

Train .stl file - [Download]

SolveSpace pot file - [Download]

Pot .stl file - [Download]

Sun catcher .svg file - [Download]