PartDesign project

Here the project plan for the PartDesign as part of the Development roadmap.

Purpose and principles
This is a software development project aimed to implement a Part Design capabilities. Its about implementing some core features into the CAD modules of FreeCAD, Part, PartDesign and Assembly.

The development steps are planed here and tracked in the Issue tracking system to get a well formed change log: Issue tracker

Outcome
Aim of the project is to enable FreeCAD accomplish a design task like the one at the right.



This will be achived by using the Sketcher and the PartDesign to design special part and Part to load standard part as STEP (like the linear bearing). The Assembly puts it all together with constrains.

Also an important outcome is the Feature editing methodology. Which gives the user an intuitive approach to instantiating and editing Features. This is importand for all other Modules and Workbenches to be come, to comply to a consistent user interface!



Bore feature
Very good bore parameter definition from the NaroCad specification:

What other do

 * SolidWorks examples
 * There is a very good specification for Narocad what is very close to what I think we should do!

Multi model
A key feature to real world designs is the ability to split a design into handleable pieces. Its impossible to work on all aspects of a design at the same time or alone. That is true for the geometry and also for engineering tasks like FEM or CAM. There for FreeCAD need the ability to split models. That opens some possibilities:
 * Late loading - Only need resources like Graphics and main memory for the piece you work on.
 * Concurrent engineering - allows many people to work on the same design
 * Fine grained Version control - better control over various aspects of the design
 * and many more....

A multi model design could look like that: