History/zh-cn

发展历史


FreeCAD的发展历史可以从2001年1月讲起. 那时Jürgen Riegel开始为Cas.CADE项目工作. 这个项目是一个商用软件开发框架，它包括一个几何建模内核（或者叫CAD内核）. 这个内核在2000年发布于一个开源协议之下，并更名为开放的小瀑布(缩写CAS.CADE的原意：为计算机辅助设计和工程服务的计算机辅助软件). 这就使得开发一个开源的3D CAD软件成为可能，因为非得自己从头开始编织CAD内核将会耗费巨大的工作量.

用Jürgen自己的话来说：

"''我在2001年1月开启的FreeCAD项目，当时称为GOM(图形对象建模者)，想法就是利用Qt、Python和Cas.CADE来实现. Cas.CADE是我在戴姆勒的项目上用到的一个商用CAD内核. Cas.CADE不久前开源了，所以貌似时机刚刚好，尝试进入当时还是空白的开源CAD领域. 我在一个叫做QSpect的项目里有两年经验，最终变成了它的主软件设计师. 这个项目使用OpenCascade，关于3D和CAD程序，我学到了很多. 我也收到Catia V5的影响，尤其是它非常特别的用户和程序界面. 2002年3月，在OpenCascade项目里，我注册了FreeCAD这个软件. 我不大懂名字的事情，没法想出比FreeCAD更好的名字了. 在2003年四月，我在QSpect项目里的同事Werner Meyer，他换到了一个叫Imetric的公司. 与Imetric的接触很有收获，因为他们正在为自己的3D传感器寻找一个新的3D软件平台. 2005年，Imetric把它大部分的Mesh模块捐赠给FreeCAD和开源社区，并将FreeCAD作为他们的传感器系统软件的基础. 从那时起，Werner Meyer是FreeCAD非常活跃的开发者. 2005年，经过一年的挣扎，我决定脱离OpenCascade的文档框架，改为由自己实现. 所以，最终，我们只用了OpenCascade的CAD内核，而没有采用其余框架. 2007年是另一个有趣的里程碑. 我们接上了QT4，然后，接上了LGPL. 那时我们做了很多工作，主要是Werner. ""

The project was announced to the general public on the 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."

Eventually, the project gained traction, and saw the addition of new key contributors in the community.

Yorik van Havre joined the project in 2008 and started work on the Draft Module. Before that point, there was no way to create 2D geometry through the GUI. This module was programmed entirely in Python rather than in C++, the core programming language used in FreeCAD. This proved that Python integration was a success and could be used to extend or customize FreeCAD's capabilities. In addition to his work on the Draft module, Yorik worked on expanding the FreeCAD documentation, and became FreeCAD's de facto "Art director", creating many icons for FreeCAD's GUI and 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.

Release history

 * Overview


 * Legend

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

Links

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