I begin this page as an attempt to gather end-user wishes on specific tools they would like to find in FreeCAD. Several cad users already chatted with me about cad tools, about what they use most, what they would like to see in FreeCAD, what they couldn't live without, etc... Although FreeCAD is not meant to specifically become a replacement for any other famous CAD software (especially the one that begins with Auto and ends with CAD), I think this can become a good reference to know about end-users expectations, and maybe to prioritize things over others in development.
If you are a CAD user and would like to add stuff here, feel free to edit, we would be glad to have your opinion here.
Line: Draws a line- see Draft Line.
- Construction Line: Draws a line at any angle infinitely - should be easy if possible in coin. To be investigated
Polyline: Line with as many points as you like until command is ended- see Draft_Wire.
- Polygon: dependant on no. of sides
Rectangle- see Draft Rectangle. Arc- see Draft Arc. Circle- see Draft Circle.
- Hatch: Be able to fill an area with technical-style pattern (oblique lines, etc...) - Under investigation
- Make and insert Blocks: That is in FreeCAD two things:
be able to group elements in one object (compound?)- see Draft Upgrade - and be able to instantiate those objects (several documents objects share same shape?)
- Text - see Draft Text. To be extended to more complex stuff...
- Display Order: That is showing coplanar objects in desired order. Not sure this is possible, though... Maybe, in a 3D world, we should rethink the way we draw 2D objects, and consider those "overlapping" objects differently (= draw them differently). To be discussed...
Erase- see Std Delete. Copy- see Draft Move. Copy with base point- see Draft Move.
- Multiple copy: Copy an object several times from same base point
- Paste as Block
Offset- see Draft Offset. Move- see Draft Move. Rotate- see Draft Rotate
- Array: interesting, could be merged with copy tool...
Trim- see Draft Trimex, but could be extended Extend- see Draft Trimex, but could be extended
Fillet (with angle input)- implemented in Fold module Explode: Explodes blocks/lines- see Draft Downgrade. Dimension- see Draft Dimension
- Angle Dimension - planned in Draft module
- Arc Length - planned in Draft module
- Diameter - see Draft Dimension
Radius- see Draft Dimension Continue Dimension: continues a running dimension - planned in Draft module Views: Top, Bottom, Right, Left- see Std View Menu. View: Isometric views- see Std OrthographicCamera. Model Space and Paper space- see the Drawing Module - Model space = Where the model is drawn, Paper space = tabs with different setups that can be plotted. (tab can be drawn in and has viewports made by closed polylines or shapes that view into the model space.) you need to be able to click in and out of model space so you can set up the paper with boders and title boxes. The view needs to be scaled as needed ie. 1:50 or 1:100 - planned in Drawing module Drawing units: All drawing units should be mm - this is a quite special topic, there are many things to be considered. To be discussed further.
- Thread - PartDesign workbench. Feature Hole: correct functionality of bore depth according to ISO 6410–1 standard
- Thread - normative correct simplified presentation of cross section in Techdraw according to ISO 6410–1 standard
Fillet - PartDesign workbench: elimination of rounding problems
- Primitives: Cubes, spheres etc. - present but no toolbar button
- Convert Part objects into meshes - present but no toolbar button
- Flip mesh normals - present but no toolbar button
- Close holes in meshes - present but no toolbar button
- Remove faces of meshes - present but no toolbar button
- Boolean operations: Union, subtract and intersect meshes - present but no toolbar button
- Mesh conversion to Part shapes
Boolean operations Extrude flat shapes Fillet edges of shapes
- Custom properties for all objects: so scripts and exporting to other software can carry additional information
Python objects: 100% python-scripted objects - see Scripted objects.