Whiffle Ball tutorial

Introduction
This tutorial was originally written by Roland Frank (†2017, r-frank), and it was rewritten and illustrated by vocx.

This tutorial is here to teach you how to use the Part Workbench.

The Part Workbench was the first workbench developed. It provides the basic geometrical elements that can be used as building blocks for other workbenches. The Part Workbench is meant to be used in a traditional constructive solid geometry (CSG) workflow. For a more modern workflow using sketches, pads, and features, use the PartDesign Workbench.

You will practice:
 * inserting primitives
 * changing parameters of those primitive objects
 * modifying their placement
 * doing boolean operations



Setup
1. Open FreeCAD, create a new empty document with, and switch to the Part Workbench.
 * 1.1. Press the button, or press  in the numerical pad of your keyboard, to change the view to isometric to visualize the 3D solids better.
 * 1.2. Press the button whenever you add objects in order to pan and zoom the 3D view so that all elements are seen in the view.
 * 1.3. Hold while you click to select multiple items. If you selected something wrong or want to de-select everything, just click on empty space in the 3D view.

Insert primitive cubes
2. Insert a primitive cube by clicking on.
 * 2.1. Select in the tree view.
 * 2.2. Change the dimensions in the tab of the property editor.
 * 2.3. Change to.
 * 2.4. Change to.
 * 2.5. Change to.

3. In the tab of the property editor, click on the  value so the ellipsis button  appears on the right.
 * 3.1. Press on the ellipsis to launch the Placement dialog.
 * 3.2. Change the values.
 * 3.3. Change to.
 * 3.4. Change to.
 * 3.5. Change to.
 * 3.6. Press the button to close the dialog.

4. Repeat the process, inserting a second, smaller cube by clicking on.
 * 4.1. The second cube will be created with the same name, but with an additional number to distinguish the object.
 * 4.2. Select in the tree view, and change the dimensions and placement like with the previous object.
 * 4.3. Change to.
 * 4.4. Change to.
 * 4.5. Change to.
 * 4.6. Open the Placement dialog.
 * 4.7. Change to.
 * 4.8. Change to.
 * 4.9. Change to.
 * 4.10. Press the button to close the dialog.

Change visual properties
5. The previous operations create a smaller cube inside a bigger cube. To visualize this, we can modify the properties in the property editor.
 * 5.1. Select, the smaller cube, in the tree view, and change the color. In the tab, click on the  value to open the  dialog, then choose a green color; also change the value of  to.
 * 5.2. Select, the larger cube, in the tree view. In the tab, change the value of  to.



Insert primitive cylinders
6. Insert a primitive cylinder by clicking on.
 * 6.1. Select in the tree view.
 * 6.2. Change the dimensions in the tab of the property editor.
 * 6.3. Change to.
 * 6.4. Change to.
 * 6.5. Open the Placement dialog.
 * 6.6. Change to.
 * 6.7. Press the button to close the dialog.

7. Repeat the process, inserting a second cylinder by clicking on.
 * 7.1. The second cylinder will be created with the same name, but with an additional number to distinguish the object.
 * 7.2. Select in the tree view, and change the dimensions and placement like with the previous object.
 * 7.3. Change to.
 * 7.4. Change to.
 * 7.5. Open the Placement dialog.
 * 7.6. Change to.
 * 7.7. Change the to ;  to, and  to.
 * 7.8. Press the button to close the dialog.

8. Insert another cylinder. This time create a duplicate so that the radius and height don't have to be changed, only its placement.
 * 8.1. Select in the tree view, and go to the menu . This will create.
 * 8.2. Open the Placement dialog.
 * 8.3. Change to.
 * 8.4. Change the to ;  to, and  to.
 * 8.5. Press the button to close the dialog.

Change visual properties
9. The previous operations create three cylinders that intersect with each other, and also intersect the cubes. To visualize this better we can modify the properties in the property editor.
 * 9.1. Select, the smaller cube, in the tree view, and change the transparency. In the tab, change the value of  to.
 * 9.2. Select, in the tab, click on the  value to open the  dialog, then choose a red color.
 * 9.3. Select, in the tab, click on the  value to open the  dialog, then choose a blue color.
 * 9.4. Select, in the tab, click on the  value to open the  dialog, then choose a pink color.
 * 9.5. Select the three cylinders, in the tab also change the value of  to.



Fuse and cut
10. In the tree view, select (the inner, smaller cube), and the tree cylinders, then press. This will create a object.

11. Then perform a boolean cut of the (larger cube) and the new  object.
 * 11.1. In the tree view select first, and then.
 * 11.2. Then press . This will create a object.
 * the order in which you select the objects is important for the cut operation. The base object is selected first, and the subtracting object comes at the end.
 * 11.3. If the colors look strange, select the new object, go to the  tab, click on the  value to open the  dialog, then choose a gray color; also change the value of  to.



Insert primitive cubes to cut the corners of the partial solid
Now we'll create more cubes that will be used as cutting tools to trim the corners of the previously obtained object.

12. Click on.
 * 12.1. Select in the tree view, and change the dimensions and placement.
 * 12.2. Change to.
 * 12.3. Change to.
 * 12.4. Change to.
 * 12.5. Open the Placement dialog.
 * 12.6. Change to.
 * 12.7. Change to.
 * 12.8. Change to.
 * 12.9. Press.

13. Click on.
 * 13.1. Select in the tree view, and change the dimensions and placement.
 * 13.2. Change to.
 * 13.3. Change to.
 * 13.4. Change to.
 * 13.5. Open the Placement dialog.
 * 13.6. Change to.
 * 13.7. Change to.
 * 13.8. Change to.
 * 13.9. Press.

We'll duplicate the previous two objects again to use once more as cutting objects.

14. Select only in the tree view, and go to. This will create.

15. Select only in the tree view, and go to. This will create.

16. To visualize this better we can modify the properties in the property editor.
 * 16.1. Select the object, in the  tab, click on the  value to open the  dialog, then choose a blue color.
 * 16.2. Select all new cubes,, , , and , in the tab, change the value of  to.



Cutting the corners 1
17. In the tree view select and.
 * 17.1. Open the Placement dialog.
 * 17.2. Tick the option ; notice that all values are reset to zeroes.
 * 17.3. Change the to ;  to, and  to , then click on . This will apply a rotation around the X-axis, and will reset the  field to zero.
 * 17.4. Change the again, now  to, and  to , then click on . This will apply a rotation around the local Z-axis, and will reset the  field to zero.
 * 17.5. Click on to close the dialog.

18. In the tree view de-select the objects; then select first, the bigger cube, and then, the smaller cube.
 * 18.1. Then press . This will create . This is a hollowed body which intersects the initial only at certain corners.

19. To visualize this better we can modify the properties in the property editor.
 * 19.1. Select and, in the  tab, then change the value of  to , or press  in the keyboard.
 * 19.2. Select, click on the value to open the  dialog, then choose a red color; also change the value of  to.



Cutting the corners 2
20. In the tree view select, in the tab, change the value of  to , or press  in the keyboard.

21. In the tree view select and, in the  tab, change the value of  to , or press  in the keyboard.
 * 21.1. Open the Placement dialog.
 * 21.2. Tick the option ; notice that all values are reset to zeroes.
 * 21.3. Change the to ;  to, and  to , then click on . This will apply a rotation around the X-axis, and will reset the  field to zero.
 * 21.4. Change the again, now  to, and  to , then click on . This will apply a rotation around the local Z-axis, and will reset the  field to zero.
 * 21.5. Click on to close the dialog.

22. In the tree view de-select the objects; then select first, the bigger cube, and then, the smaller cube.
 * 22.1. Then press . This will create . This is a hollowed body which intersects the initial only at certain corners.

23. To visualize this better we can modify the properties in the property editor.
 * 23.1. Select, click on the value to open the  dialog, then choose a pink color; also change the value of  to.



Finishing the model
24. Make sure all objects are visible. In the tree view select all objects, in the tab, change the value of  to, or press  in the keyboard.



25. In the tree view de-select the objects; then select first, and then.
 * 25.1. Then press . This will create.



26. In the tree view de-select the objects; then select first, and then.
 * 26.1. Then press . This will create . This is the final object.
 * 26.2. Select, click on the value to open the  dialog, then choose a green color; also change the value of  to.



27. Real objects don't have perfectly sharp edges or corners, so applying a fillet to the edges can be done to refine the model.
 * 27.1. In the tree view, select then press.
 * 27.2. In the task panel go to, choose , and then press . As  choose , then set  to.
 * 24.3. Press . This will create a object.
 * 27.4. In the tab, change the value of  to.