ToolShapes are a core part of the Path Tools system. ToolShapes are the templates from which ToolBits are created. They represent the physical shape of a tool. A ToolShape does not completely describe the bit - for that some additional parameters are needed which will be added when an actual bit is parameterized from the template.
ToolShapes are just FreeCAD documents with a single Body created from the Part Design workbench.
Creating new ToolShapes is an advanced topic. The most commonly needed shapes already exist and are provided with the FreeCAD installation:
These can be found in the /Mod/Path/Tools/Shape/ subdirectory where FreeCAD was installed.
- Create a new FreeCAD document - Open the PartDesign workbench, create a body and give the body a label you want to show up in the bit selection. - Create a sketch in the XZ plane and draw half the profile of the bit.
- Put the top center of the bit on the origin (0,0)
- For any constraint serving as a parameter for the tool (like overall Length) create a named constraint
- The name is the label of the input field - Names are split at CamelCase boundaries into words in the edit dialog - Use a ; in the name to add help text which will show up as the entry fields tool tip - If the tool is used by legacy ops it should at least have one constraint called Diameter - Use construction lines for constraints that are not directly accessible, like Diameter and Angle
- Any unnamed constraint will not be editable for a specific tool - Once the sketch is fully constrained, close the sketch - Rotate the sketch around the z-axis - Save the document as a new file in the Shape directory
Tool Thumbnail Images
Toolbits will have a small icon image of the tool in the tree if the image is saved with thumbnails active.
- Before saving the document make sure you have Save Thumbnail selected, and Add program logo deselected in FreeCAD's preferences. - Also make sure to switch to Front View and Fit content to screen - Whatever you see when saving the document will end up being the visual representation of the template