History/ro

Istorie


Istoricul FreeCAD a început în ianuarie 2001, când Jürgen Riegel a început să lucreze la proiectul Cas.CADE, un cadru de dezvoltare software comercial care include un geometric modeling kernel (or CAD kernel), care în 2000 a fost lansat sub licență open source și redenumit ca Open Cascade. Acest lucru a făcut posibilă realizarea unui program open-source 3D CAD, având în vedere faptul că programarea unui nucleu CAD de la zero, ar fi necesitat o cantitate imensă de muncă.

Cuvintele lui Jürgen's au fost:

"Proiectul freecad a fost inițiat de mine în ianuarie 2001, ca asa numita GOM (Graphical Object Modeler), cu ideea de a folosi Qt, Python și Cas.CADE, un comercial CAD-Kernel din acel timp am folosit în proiectele Daimler. Cas.CADE a plecat cu o sursă deschisă cu puțin timp înainte, așa că timpul părea corect să încerc o mișcare în spatiul gol al CAD open source. Am avut o experiență de doi ani cu OpenCascade într-un proiect numit QSpect în care, la final, eram principalul designer de software. Am învățat multe despre programarea 3D și CAD. De asemenea, am fost influențată de Catia V5 și interfața foarte specială de utilizare și de programare ... În 17 martie 2002, în cadrul proiectului OpenCascade, am înregistrat software-ul ca FreeCAD. Nu m-am gândit la un nume mai bun, sunt foarte neinspirat cu numele ... În aprilie 2003, Werner Meyer, unul dintre colegiile din proiectul QSpect, a trecut la o companie numită Imetric. Contactul cu Imetric a avut un rezultat foarte promițător, deoarece a căutat o nouă platformă software 3D pentru senzorii 3D. În 2005, Imetric a donat cea mai mare parte a modulelor sale de plasă la FreeCAD și comunitatea Open Source, iar de atunci aceștia au folosit FreeCAD ca bază pentru software-ul sistemului de senzori. Din acel moment, Werner Meyer este un dezvoltator foarte activ al FreeCAD. În 2005, după un an de luptă, am decis să rup cadrul documentului OpenCascade și să îl înlocuiesc cu o implementare proprie. Deci, în final, folosim doar kernel-ul CAD al OpenCascade și nu restul cadrului său. 2007 a fost o altă piatră de hotar interesantă. Am trecut la QT4 și, prin urmare, la LGPL. În acel moment am făcut multă treabă, mai ales Werner.."

Proiectul a fost anunțat publicului larg pe OpenCascade Forum in 2003. Again, in Jürgen's words:

"Hi together, my name is Juergen Riegel and today I want announce an OpenCasCade project, FreeCAD. It is an Open Source CAx RAD based on OpenCasCade, QT and Python. It features some key concepts like Macro Recording, Workbenches, ability to run as a server and as a dynamically loadable applications' extension, and it is designed to be platform independent… Although it is in an early stage and not usable for users nor developers—the first user release is planned for the end of 2003—, I would like to get some feedback on the direction and design of FreeCAD. The GUI is nearly finished and now we, my co-developer Werner Mayer and me, have started adding the first CAD functions. FreeCAD can be seen as a general purpose mechanical CAD system, but its first audience, I think, will be CAx developers which need groundwork for own development."

Werner Mayer
According to his own words he is in the project right from the first day the project was announced and oss. Before this day the project was a private project (play ground?) of Jürgen. See forum post from Werner in German: https://forum.freecadweb.org/viewtopic.php?f=13&t=40235&start=10#p342330

În cele din urmă, proiectul a câștigat aderență și a văzut noi contribuabili-cheie în comunitate care i s-au alăturat.


 * Linux beginning

"A fun fact is that he wanted to have an open-source CAD software mainly for Linux because at that time there existed actually nothing for this platform. However, from the beginning on we exclusively developed on Windows for the next 1.5 years. Then a Czech guy made a contribution to make the code of the core build on Linux: https://github.com/berndhahnebach/All_FreeCAD/commit/9fd2e27c95ba3dc84778d92e2564cd094793ce2f#diff-480477e89f9b6ddafb30c4383dcdd705"

"Half a year later I continued the Linux build: https://github.com/berndhahnebach/All_FreeCAD/commit/35b962d7d751dd80f7c7781df60f93bc9a3da992"

Q: Could you share how that first 1.5 years went? Were you meeting in person or online?

"Well, at that time we were colleagues (until 2005) so we could discuss things face to face. After that time we still had some personal meetings but discussed most things by email or phone."

"As third core developer Yorik joined around end of 2007 but it took another 3 or 4 years until the community and number of contributors started to grow significantly."

Q: Did you divide the tasks or work on competing implementations.

"Yes. Jürgen was designing and implementing most of the application and document logic and I was doing the basics of the GUI."

"However, this wasn't a gradual process but we have experimented with many things at the beginning. For example, in the initial version we used OCC's document framework OCAF and its viewer but after a year or two we got into a dead end because documentation about OCC was very poor and we couldn't get it to work to extend OCAF with our own feature types. So, we decided to only use OCC's modeling capacities but develop our own application/document framework."

Q: At the time did you think FreeCAD would be where it is today?

"We didn't know but we hoped. Of course we couldn't anticipate how exactly FreeCAD will look today. The most important design decisions were to make it available on all major platforms and make the whole SW as accessible as possible, i.e. to impose all important functions to Python so that (power) users are able to extend FreeCAD with own functions. This way we hoped to get a broad audience."

(See forum post from Werner Re: FreeCAD History)

Yorik van Havre s-a alăturat proiectului în 2008 și a început să lucreze la Draft Module. Înainte de acest punct, nu a existat nici o modalitate de a crea geometria 2D prin GUI. Acest modul a fost programat în întregime în Python, mai degrabă decât în ​​C ++, limbajul de programare folosit în FreeCAD. Acest lucru a demonstrat că integrarea Python a fost un succes și ar putea fi utilizată pentru extinderea sau personalizarea capabilităților FreeCAD. În plus față de lucrarea sa privind modulul Draft, Yorik a lucrat la extinderea documentației FreeCAD și a devenit "directorul de artă" de facto al FreeCAD, creând numeroase pictograme pentru GUI-ul FreeCAD și defining its style.

Version 0.7 of FreeCAD released in April 2009 was the first to include the Draft module. The Part module provided a simple CSG workflow with creation of primitive shapes and boolean operations accessible through the Part menu. Extrusion of 2D profiles and filleting was also possible.

Version 0.8 released in July 2009 saw some more work in the Draft module, including a new Dimension tool. The Part module benefited from a new toolbar along with new tools, Revolve and Section.

By the end of 2009, FreeCAD was accepted as a Debian package in the Debian repositories. FreeCAD was added to the Ubuntu 10.04 repositories in 2010.

Version 0.10 released on July 2010 introduced the Sketcher Workbench, based on Sketchsolve, a constraint-based solver to create 2D geometry. The first version was limited to creation of rectangles and lines.

In early 2011, taking the opportunity given by the Launchpad online platform, the FreeCAD Maintainers team was created to provide fresh stable releases along with daily build packages of FreeCAD to users of the Ubuntu operating system.

Version 0.11 released in May 2011 introduced the new Part Design workbench which included tools such as Pad, Pocket, Fillet and Chamfer. The Draft workbench received enhancements and new tools, like BSpline. The Robot workbench featured more GUI tools.

Version 0.12 released in January 2012 featured a more complete Sketcher workbench. It included a totally rewritten solver, FreeGCS. It was the result of months of work by the main FreeCAD developers along with newcomers logari81 (who programmed the solver) and mrlukeparry. More tools were added to the PartDesign workbench.

Enlargement of core developer team
The team of core developers is extended from the three old hands Jürgen, Werner and Yorik to Abdullah, Bernd, sliptonic and WandererFan on 3rd of April in 2019. See coredeveloper https://github.com/orgs/FreeCAD/teams/core-developers/members

Interesting Posts on the forum

 * about PartDesignNext and other design decisions: https://forum.freecadweb.org/viewtopic.php?f=8&t=34923&start=130#p297074
 * about forum history: https://forum.freecadweb.org/viewtopic.php?f=8&t=7448&start=200#p287106

Istoricul edițiilor

 * Overview


 * Legendă/explicații

An overview about the commit history can be found in the following Forum post: https://forum.freecadweb.org/viewtopic.php?f=8&t=23695#p184940
 * Commit history

Legături

 * SourceForge Files section
 * SourceForge Old Files section
 * Who is behind FreeCad? topic on the FreeCAD forum
 * Announcing FreeCAD Project on the OpenCascade forum