Power users hub/zh-cn: Difference between revisions
Johnquicker (talk | contribs) (Created page with "这些是通用教程,都很棒。它们不是特殊为FreeCAD制作的,如果你完全没接触过Python,它们可能对你有益处。") |
Johnquicker (talk | contribs) (Created page with "'''Python''' * [https://docs.python.org/2.7/tutorial/index.html 官方Python2.7教程] - 发现Python之旅的完全指南。 * [http://en.wikibooks.org/wiki/Non-Programmer%27...") |
||
Line 85: | Line 85: | ||
'''Python''' |
'''Python''' |
||
* [https://docs.python.org/2.7/tutorial/index.html |
* [https://docs.python.org/2.7/tutorial/index.html 官方Python2.7教程] - 发现Python之旅的完全指南。 |
||
* [http://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python |
* [http://en.wikibooks.org/wiki/Non-Programmer%27s_Tutorial_for_Python 非程序员的Python教程] - 超赞的维基书。 |
||
* [http://npt.cc.rsu.ru/user/wanderer/ODP/Python_for_Newbies.htm Python |
* [http://npt.cc.rsu.ru/user/wanderer/ODP/Python_for_Newbies.htm 为新手写的Python] - 一本大型指南,涵盖了方方面面的基础内容。 |
||
'''PySide''' - How to create and manage FreeCAD's Qt UI interface from python |
'''PySide''' - How to create and manage FreeCAD's Qt UI interface from python |
Revision as of 04:28, 5 October 2018
如果你想深入理解FreeCAD,这里就是你该来的地方。你能学到如何为你的需求定制FreeCAD。
这些页面还远没有成熟。如果你没找到你要找的信息,或者你在别的地方发现了有用的信息,而我们没有链接在这里,那为什么不自己添加进来?同时,请在论坛留下你的意见。
FreeCAD最秒的好处之一,就是它给你的灵活性。你不需要作任何编译,不需要接触源代码,就可以写脚本,就可以作扩展,可触范围极广。所有的脚本都用Python完成。它是一门强大而简洁的编程语言。有了简洁的Python脚本,你有权触及FreeCAD的任何部分。比如说,你可以:
- 创建和修改几何体:有没有这种情况?你需要的特殊对象,没有出现在FreeCAD的默认安装包里?你可以轻松创建一个新对象类型,既可以写脚本,也可以调配一个已有的类型。
- 创建定制的工具和命令:目前,FreeCAD已经有了很广泛的功能,但是给终端用户的工具和命令还不是很多。不过,你已经可以很容易地创建自己的工具包了。
- 修改界面:FreeCAD的用户界面还处于十分基础的阶段。但是如果你要有所扩展,工具都给你准备好了。比如说,你可以创建一个工具条,把你的工具都放进去;你也可以创建一个特殊面板,用来与你的工具互动,诸如此类。
- 修改场景表现:建立和计算几何体,在屏幕上显示那个几何体,这件事在FreeCAD里有不同的流程来处理。场景元素显示在屏幕上的方式,你对此有完全控制权。所以,你可以修改那个表现,与它交互,或者加入各种各样的定制行为和屏幕组件。举几个例子,信息、拖拽、锚定或者暂时实体。
定制FreeCAD
在FreeCAD里写脚本
通则
- 介绍Python - 在页面底端还有其他Python教程。
- FreeCAD脚本教程 - 概略看一下在FreeCAD中用Python写脚本。
- FreeCAD脚本基础 - 好吧,基本的东西……
- Gui命令 - 向GUI添加定制的命令。
- 在FreeCAD里使用混合单位。
模块
在FreeCAD中,功能性的东西被划分到各个模块,处理特定的数据类型和应用。FreeCAD有内建模块和扩展模块(插件)。插件模块一旦安装,它们就和内建模块一样方便触达。下面讲的是默认模块,FreeCAD的每一个安装包都包含了。
网格类工作
零件类工作
- 零件模块:开源CASCADE技术的工具和体系如何用在FreeCAD中。
- 拓扑数据脚本:怎样与零件模块交互。
- PythonOCC:怎样释放开源CASCADE的全部能量。
- 网格到零件:转换对象类型。
触达Coin的场景图
- Coin/Inventor的场景图:FreeCAD的场景表现如何运作。
- Pivy:如何触达和变更场景图。
控制Qt接口
- PySide:如何触达接口,并修改它的内容。
- 在另一个Qt应用里,通过PyQt,来使用FreeCAD的GUI。
参数对象类工作
例子
- 代码片段:搜集了一些FreeCAD的Python代码段,作为你的脚本的配料……
- 画线函数:如何建造一个简单工具,来画线。
- 创建对话:如何用Qt设计器来建造对话框,把它们用在FreeCAD里。
- 嵌入式FreeCAD:在其他应用里,如何载入FreeCAD,作为一个Python模块。
- 绘图模块为FreeCAD加入了2D绘图函数。它整个都是用Python写的,所以如果你想写自己的模块,它就是个好例子。
- FreeCAD向量数学程序库:几个很顺手的函数,来操控FreeCAD的向量。这个函数库也包含在绘图模块里面了。
API函数
FreeCAD完整的API文档放在http://www.freecadweb.org/api/中。它既有C++也有Python的API,还没有完全格式化好。当你想找只含Python的代码,就会发现那里有点乱。更便于浏览的版本在这里。注意,它可能并不完整,因为它得用人工更新。要找更精确信息的话,直接在FreeCAD的Python控制台里浏览相应模块吧。
高级修改
- 启动和配置:启动和命令行选项。
- 在Windows上安装:使用Windows安装器。
- 在Windows上编译FreeCAD,在Unix上编译FreeCAD
- 品牌化:简单变更FreeCAD的源代码,改变FreeCAD的一些方面。
- 额外的Python模块:用这些强大的模块,来扩展FreeCAD的Python解释器。
Python教程
这些是通用教程,都很棒。它们不是特殊为FreeCAD制作的,如果你完全没接触过Python,它们可能对你有益处。
Python
- 官方Python2.7教程 - 发现Python之旅的完全指南。
- 非程序员的Python教程 - 超赞的维基书。
- 为新手写的Python - 一本大型指南,涵盖了方方面面的基础内容。
PySide - How to create and manage FreeCAD's Qt UI interface from python
- PySide tutorial : A platform-agnostic tutorial showing the usage of PySide with examples
- PySide/PyQt tutorial : A easy to read tutorial that covers PySide and PyQt with examples
- PySide documentation : from the Qt Project (the people who wrote it all)
- Using QtCreator in PySide : also from the Qt Project
- PySide reference : endless detail on the minutiae of PySide and Qt, a reliable reference source
- PySide code snippets : a searchable database of PySide code snippets
The following two references are PyQt specific (not PySide) but may offer some information of use:
- Basic PyQt tutorial : A simple and short linux-based tutorial that will explain how to work with PyQt and Qt Designer
- Programming Qt applications in python : A more in-depth tutorial covering all the process of working with qt and python.
Pivy - How to interact with FreeCAD's 3D scenes
- Basic Pivy tutorial : A very simple tutorial from the official Pivy site
- Introducing Pivy into studierstube : A document that is not really a tutorial, but that illustrates well how Pivy works
Community projects
On the Community portal, you can find other FreeCAD-based projects run by the FreeCAD users community. If you are starting a new FreeCAD project, be sure to list it there! We also have a page with things you can do if you would like to Help FreeCAD.