Skip to content

3. Computer Aided design

This week, I explored 2D and 3D graphics tools to make a model for our final project. Modeling isn’t my strongest skill, so achieving the exact models was challenging for me. Nonetheless, I’m optimistic that with dedicated practice, my skills will surely improve.

2D graphics

Vector and Raster graphics

Vector artwork is a type of digital graphic that uses mathematical formulas to create lines and shapes. This type of graphic is resolution-independent, meaning it can be scaled up or down without losing any quality. This is because the mathematical formulas recalculate every time the image is resized, ensuring crisp, clear lines no matter the size. Programs like Adobe Illustrator, CorelDRAW, and Inkscape are capable of producing vector graphics. These programs allow designers to create complex and detailed images that can be resized without any loss of quality.

On the other hand, raster graphics, also known as bitmap graphics, are composed of a grid of individual pixels. In fact, raster means ‘grid’ in German. Each pixel is assigned a specific color, and together, they form a complete image. When you zoom in on a raster image, you can see the individual pixels that make up the image. Raster graphics are created using programs like Adobe Photoshop, GIMP, and Corel PaintShop Pro. These programs are excellent for creating detailed and realistic images, such as photographs, where subtle gradations of color are necessary. I’ve used Adobe Illustrator and Adobe Photoshop, but not at a professional level. Working with vector graphics comes naturally to me because, even without strong drawing skills, I can create illustrations using simple geometric shapes.

Since I was already familiar with the tools and interface of Adobe Illustrator, I chose to give the Inkscape program a try this time. I wanted to get to know it better and figure out which one is more user-friendly for me.

Inkscape

Initially, I sketched the appearance of the ship I aimed for, then I attempted to figure out the basic geometric shapes it should be composed of. The primary section of the ship will be shaped by adjusting the rectangle using the two highlighted tools in the picture(Create rectangles and node tool). It was also important for me to understand how the Fill and Stroke menu works and available options there.

Initially, I have to change the polygon into a path so that I can add points and adjust the part I want.

Here are the essential tools for dealing with nodes. Inkscape nodes

I used tools like Flip, Rotate, and layer alignment.

To achieve the final appearance of my ship, I used the Boolean Operations tools, specifically the Union and Difference options, along with the Group tool to bring together all the ship’s parts.

Boolean Operations

The second version of the ship looks relatively better to me than the first one. I concentrated more on the outcome rather than just using the basic tools.

I discovered Adobe Illustrator to be more user-friendly due to my prior experience with the program. However, for those unfamiliar with either software, Inkscape’s menu and tools are more accessible and beginner-friendly.

GIMP

As I mentioned, I was familiar with Adobe Photoshop, and I knew it’s mostly used for editing pictures. It has different filters, and you can adjust color brightness, contrast, and saturation to achieve the desired tone in your picture. I also checked out the GIMP program, its available filters, and basic tools through the following links.

I merged the image of the ship I designed and rendered using the SolidWorks program with a picture of the clean lake that I downloaded from this webpage Lake․ I added some filters and adjusted the brightness and contrast of the lake picture.

3D graphics

FreeCad

FreeCAD is an open-source parametric 3D modeler made primarily to design real-life objects of any size. Parametric modeling allows you to easily modify your design by going back into your model history and changing its parameters. FreeCAD is a multiplatform (Windows, Mac and Linux), highly customizable and extensible software. It reads and writes to many open file formats such as STEP, IGES, STL, SVG, DXF, OBJ, IFC, DAE and many others, making it possible to seamlessly integrate it into your workflow.

When I used FreeCad, the first step was to decide which Workbench to use because the tools vary depending on it. For example the FreeCAD Sketcher Workbench is used to create 2D sketches intended for use in other workbenches. 2D sketches are the starting point for many CAD models. To create the ship model in FreeCad, I started with the Sketcher Workbench and later used the Part and PartDesign workbenches as well. Let’s start with Sketcher Workbrench․ I drawed right part of sketch and after it used symmetry tool to create left side.

After that selected Part design workbench and used Pad tool. Then I drawed the second sketch.

After that I used Pad tool again for my second sketch. Here are 2 bodies of my design. And finally I merged them using Part Workbench Cut tool.

I also added Cube and Cylinder from part workbench for final result.

Here are some tools and it description from FreeCad documentation that I used during the design, and some of them have a wide range of applications.

Sketcher toolbar

FreeCad Sketcher workbench documentation

Part Design toolbar

FreeCad Part Design workbench documentation

Part toolbar

FreeCad Part workbench documentation

OpenSCAD

OpenSCAD is software for creating solid 3D CAD models. It is free software and available for Linux/UNIX, Windows and Mac OS X. Unlike most free software for creating 3D models (such as Blender) it does not focus on the artistic aspects of 3D modelling but instead on the CAD aspects. Thus it might be the application you are looking for when you are planning to create 3D models of machine parts but pretty sure is not what you are looking for when you are more interested in creating computer-animated movies.

OpenSCAD is not an interactive modeller. Instead it is something like a 3D-compiler that reads in a script file that describes the object and renders the 3D model from this script file. This gives you (the designer) full control over the modelling process and enables you to easily change any step in the modelling process or make designs that are defined by configurable parameters.

When exploring the OpenSCAD program, I took a different approach. I downloaded existing work and tried making some changes, divided program into parts to understand the function of each part. Here is the link of the original file. OpenSCAD original file

In OpenSCAD, the cube() function is used to create a 3D rectangular prism (a cube) by specifying its dimensions. The basic syntax for the cube() function is:

cube([10, 10, 10]);

In OpenSCAD, the cylinder() function is used to create a 3D cylinder. The basic syntax for the cylinder() function is:

cylinder(h = height, r = radius, $fn = resolution);
cylinder (h = 20, r = 5, $fn = 50);

In OpenSCAD, the scale() function is used to scale or resize a 3D object along the x, y, and z axes. The basic syntax for the scale() function is:

scale([2, 1, 1])
    cube([10, 10, 10]);

This would create a scaled cube with dimensions 20x10x10.

In OpenSCAD, the translate function is used to move or translate objects in three-dimensional space. It takes a vector as an argument, which represents the displacement along the x, y, and z axes. The syntax is:

translate([10, 5, 3])
    cube([2, 2, 2]);

This code would translate a cube by 10 units along the x-axis, 5 units along the y-axis, and 3 units along the z-axis. In OpenSCAD, the union() function is used to combine multiple 3D objects into a single object by taking the union of their volumes. It creates a single object that encompasses the entire space occupied by the combined objects. The syntax is:

union() {
    cube([2, 2, 2]);
    translate([3, 0, 0])
        sphere(1);
}

In this example, the union() function combines a cube and a translated sphere into a single object.

OpenSCAD CheatSheet

SolidWorks

SolidWorks is a 3D parametric design software that is used to design all sorts of products such as automobiles, marine equipment, airplane parts, cell phones, cameras, furniture, electrical assemblies, glasses, lighting fixtures, toys, vacuum cleaners, or any other like product we can think of. Having prior experience with SolidWorks made it easier for me to navigate and use the tools compared to FreeCAD, as I was already familiar with the functionalities and interface.

At the first, I created the initial sketch for my project, applying constraints and specifying dimensions to define the geometry. Here’s a description and application of the main tools I utilized in my project. The Smart Dimension tool in SolidWorks simplifies the dimensioning process.

The chamfer tool creates a beveled feature on selected edges, faces, or a vertex.

Fillet/Round creates a rounded internal or external face on the part. You can fillet all edges of a face, selected sets of faces, selected edges, or edge loops.

Shell is a great tool for parts requiring a uniform thickness because it is as easy as Fillet or Chamfer but can create some complex uniform thickness parts. The Offset Surface tool creates a new surface body from an existing set of faces. The faces may be solid or surface faces.

With Untrim Surface, you can patch surface holes and external edges by extending an existing surface along its natural boundaries.You can also extend the natural boundaries of the surface by a given percentage, or connect the end points to fill the surface. Use the Untrim Surface tool with any imported surface or surfaces that you create.You can extend a surface by selecting an edge, multiple edges, or a face. In a multibody part, you can combine multiple bodies to create a single body. In SOLIDWORKS, we have the ability to generate a mirrored version of a part for the opposite hand using the mirror pattern tool.

Rendering

Rendering is the finalization process of a digital image or a 3D model using computer software. It lets users bring together the visuals, from the shadows and lighting effects to the textures, and generate the final result. Rendering is used for various digital projects, including video games, animated movies, and architectural designs.

Conclusion

In this week I have learned a lot about Computer-Aided Design (CAD) and how to use different software like Inkscape,GIMP, FreeCAD, and SolidWorks. Inkscape is great for making 2D designs because it has easy-to-use tools for editing graphics. It’s free to use and works on different types of computers, making it accessible for artists and designers.

GIMP is a versatile and free raster graphics editor that offers a wide range of tools for image editing and manipulation. While primarily used for 2D graphic design work, GIMP can be a valuable addition to a CAD toolkit for tasks such as texturing, photo editing, and creating visual content for presentations.

FreeCAD is a good tool for creating 3D models. It lets me easily change and improve my designs, which is helpful for trying out different ideas. The FreeCAD community has been very supportive, and I’ve learned a lot from their resources.

SolidWorks is a professional CAD software used in many industries. It has advanced features for designing and testing products, which has been useful for understanding complex design concepts.

In summary, using Inkscape, FreeCAD, and SolidWorks has been a valuable learning experience for me. These tools have allowed me to be creative, improve my design skills, and bring my ideas to life. I believe that the knowledge I’ve gained from working with these software will be beneficial for my future projects and goals in CAD.

Files