FreeCAD
Hint: FreeCAD is open source Computer Aided Design (CAD) software that OSE uses on a regular basis to produce 3D designs, fabrication drawings, exploded part diagrams, and other assets indispensable to the design of physical objects
Basics
- A FLOSS CAD software
- It is currently (as of 2020) OSE's official CAD software
- It is also a part of OSE Linux v1.0 (using FreeCAD 0.16) in OSE's custom Linux distribution
Most Recent Versions
- "The latest bug fix release 0.18. 4 (16146) "
See 3/7/16 update on OSE FreeCAD Workbenches -
FreeCAD Downloads
Hint: The OSE Linux distribution is a complete distribution which includes all development software for OSE, and FreeCAD is a staple of that stack
See http://www.freecadweb.org/wiki/Download to choose the correct build for your Operating System.
FreeCAD 0.16 AppImage
- The AppImage is available to download on the FreeCAD GitHub page for the 0.16 release.
- Alternatively, click the below link to download the AppImage directly from the FreeCAD repo:
FreeCAD 0.16 Appimage Notes
Hi Marcin, I just tested my workbench with an Appimage. https://github.com/FreeCAD/FreeCAD/releases/download/0.18.4/FreeCAD_0.18-16146-Linux-Conda_Py3Qt5_glibc2.12-x86_64.AppImage and the recent version https://github.com/rkrenzler/ose-piping-workbench. The workbench works. I assume that PyQt5 could be a reason for the problem. When I started to develop ose-piping-workbench I used the old Version of PyQT then I ported the workbench to the new version. Maybe this is the reason why it worked before but it does not work anymore. Best regards, Ruslan
Learning FreeCAD
Hint: The official OSE tutorials Page on this wiki is OSE FreeCAD Tutorials
OSE-Developed Workbenches
Other Workbenches
Original Specification
- See FreeCAD Specification
- FreeCAD is based on the Open Cascade Technology CAD kernel
FreeCAD Review
OSE FreeCAD Needs
See FreeCAD Scripts for the list of top 10 instructionals that are needed.
Action Plan
- Recruit software developer to analyze FreeCAD and build with/upon their work. Short-term Objective: Get Assembly Module Working.
- Document FreeCAD source code in github repository.
- Document FreeCAD's code structure. (some preliminary work available at https://github.com/qingfengxia/FreeCAD_Mod_Dev_Guide)
Process for Developing FreeCAD Instructionals
FreeCAD Architecture Tutorials
Arch Workbench
How to design this structure in FreeCAD is here - [1] -
Drawing Building Panels
Overview
More Basics of FreeCAD from Yorik
3D Printing Tutorial for FreeCAD
Architecture in FreeCAD
Producing Build Instructionals with FreeCAD
Import from Proprietary Formats
- AutoCAD dwg - import appears to be available - [2]
FreeCAD Instructionals
OSE FreeCAD Documentation
I (Mark Norton) have created a very simply, introductory guide to FreeCAD. It only covers the very basics at this point, but we can expand on it as needed. - User:Mjn
This document covers the following topics:
- Views
- Workshops
- Sizing a Primitive Part
- Positioning a Part
- Making a Cut
- Combining Parts
- Rotating a Part
- Extrusion
See also, FreeCAD Documentation and Tutorials [3].
OSE FreeCAD Requirements
For OSE to use FreeCAD for all of its design needs, these are the functions required. Do these exist? Please comment.
- Freehand drawing of shapes and extrusion (like Sketchup).
- Adding parameters to all of the shapes, so they can be modified.
- Modifying all parameters in 3D parametrically (typing in lengths)
- Modifying all parameters in 3D with the mouse (such as dragging corners, edges, and faces)
Response from FreeCAD developer ickby: "This is not possible and will not be in the future. This kind of behavior needs quite advanced back-end functionality which is not provided by our geometric modeling kernel"
- Adding parameters in 3D parametrically (boolean operations)?
- Adding parameters in 3D by drawing them and extruding (mouse-based boolean operations)
- Adding parameters to shapes in 3D parametrically (such as drawing in new objects parametrically)?
- Adding parameters to shapes in 3D manually (such as drawing in new objects with a mounse)?
- For multiple objects, moving them with the mouse to arrange, mate, align them.
Response from FreeCAD developer ickby: "That is not yet possible. The assembly workbench is in a very early design phase and still needs quite some time. That is true for basic functionality and integration into freecad workflows."
- Grouping and ungrouping objects into assemblies?
Response from FreeCAD developer ickby: "not yet but will be possible with upcoming assembly workbench"
- Maintaining parametric nature of grouped objects?
Response from FreeCAD developer ickby: "not yet, but will be possible with the upcoming assembly workbench"
Now for interoperability with other CAD packages:
- Importing multiple new objects into a drawing - one at a time?
Response from FreeCAD developer ickby: 'currently you can only import whole files, not individual objects from a file'
- Importing multiple objects into a model - all at one time?
- Importing new objects while passing the parametric values into FreeCAD, such as with a STEP file?
Tutorials
2015
Obijuan - good set of 34 lessons, but in Spanish.
Bram De Vries, 2012
Tutorials 1-8:
Path WorkBench
Created by sliptonic (FreeCAD Path Workbench developer)
Assembly Workbench
Tutorial: http://freecad-tutorial.blogspot.com/2013/09/how-to-test-assembly-module.html
Example
Contributors and Users
From Kostas:
- Jürgen Riegel is the project founder, working for Daimler Chrysler, his free time is probably limited https://sourceforge.net/apps/mediawiki/free-cad/index.php?title=User:Jriegel Update: Jurgen has not been active on the project for many years now. Kunda (talk) 13:46, 4 August 2018 (UTC)
- Werner Mayer is the most active developer in terms of commits, he is just awesome, I don't know what he does professionally but if some funding can get him to increase the time of his participation, this would definitely be a great investment of financial resources.
- Yorik is our architect: http://yorik.uncreated.net and he is already dedicating a lot of hours in the development of FreeCAD, since he is a free lancer he is probably quite flexible with time, so maybe he could implement special feature requests for FreeCAD even on a paid basis. FYI Yorik van Havre has a Patreon account.
- j-dowset, joined FreeCAD recently and has done a great work on improving blueprints creation in FreeCAD. A very appropriate task for him would be to implement a correct dimensioning system for blueprints. I believe he has the capabilities to implement any kind of feature with relatively short running in time and high quality. Update: User is dormant Kunda (talk) 13:46, 4 August 2018 (UTC)
*mrlukeparry is quite experienced with Qt and Coin3D so he can do a lot of GUI work. Being a student his free time is probably also limited except school vacations. Update: he left and returned but hasn't been active at all in the code or community Kunda (talk) 13:46, 4 August 2018 (UTC)
- Ickby has worked on a prototype for applying assembly constraints between parts. A special task for him would be to accelerate the implementation of the Assembly module after jriegel has finished with the basic framework/structure/design. Update: Ickby has not been very low key for some time. He participates in the forums but has not contributed to the code in a long time, at least not publically. This may change. Kunda (talk) 13:46, 4 August 2018 (UTC)
- tanderson69 is very good in OpenCascade, so he can work on difficult tasks that have to do with the CAD geometry kernel. Update: Participates on the forum and very sporadically on the code. I believe he is involved in another project.
- Daniel Falck is the person to contact for CAM integration.
- Kostas - sketcher module.
- Yorik van Havre, Daniel Falck, and Brad Collette - Path Workbench
- Ian Rees - crowdfunded individual working on Drawing Workbench
- gCAD3D appears to be viable for CAD/CAM - [4]
- Przemo Firszt, Bernd Hahnebach - CAE workbench
- Sebastian Hoogen - OpenSCAD workbench
- FEA, macros - psicofil, Lucio Gomez - [5]
- Cad1919 - Extreme User - is doing some of the most high level work in FreeCAD - cad1919 on YouTube - [6]
- 61quick - 3D printing complete toolchain within FreeCAD - [7]
- Lars G. - IGES files to house cross sections in architecture - [8]
- Kwasny - macro example of how to create an Icon in the workbench that allows you to draw a piston ring by clicking on the icon. This way, the macro (a set of commands) was actually turned into a tool - [9]
- Dan's Open Source Design Tools, with motto to be free from black-box CAx toolchains - [10]
Uses of FreeCAD
There are various cases of real-life usage of FreeCAD in commercial, research and educational contexts. Add as necessary:
Main Needs
- Documentation [11]
- Packagers for Releases and Development version (Windows, Linux and MacOSX) + AppImages
- Packagers for 3rd party libraries: OpenCascade, VTK, Netgen, Eigen3, Calculix
- Helping to create a buildbot framework for testing and releases
- 'Doxygen'ating the source code
- Participating in the FreeCAD Forums
- Bug testing tickets on the FreeCAD Bugtracker
- Creating FreeCAD-community-approved tutorials
FreeCAD Development
FreeCAD Bugtracker/Issue Queue
Support FreeCAD
- Yorik van Havre has a Patreon account. The more people donate the more possible for him to spend time on FreeCAD.
- Kurt Kremitzki (AKA @kkremitzki) is a dev ops guy + engineer. He has been part of FreeCAD Google Summer of Code 2 years in a row. Hes has a Patreon account.
- @realthunder is building Assembly3 (an expermental attempt at the next generation FreeCAD assembly workbench) and has contributed a lot to the Path Workbench. He has a donation link on his GH repo.
- @sliptonic is a Path workbench core-dev. He has been improving and advocating Path for some years now. He has a Flattr account.
- Login to Github and 'Star' the FreeCAD repo.
Latest FreeCAD Feature Announcements
- Feature Announcements thread in the FreeCAD forums.
Latest FreeCAD Pull Requests
- Pull requests are no longer announced via the forum, instead visit their GitHub repository pull request section
Multilingual FreeCAD forums
Links
- FreeCAD 101
- FreeCAD Architecture Workbench
- FreeCAD Survival Guide from Lasersaur.
- Original FreeCAD Specification by Juergen Riegel
- FreeCAD Architecture Design
- Open Source Design Tools - [12]
- FreeCAD Video Scripts
- Old SourceForge FreeCAD Website
- FreeCAD Workbench Python Programming
- Open Cascade Technology
- FreeCAD_16_vs_Latest