- 1 安装
- 2 聚焦疑难杂症
- 2.1 FreeCAD根本无法启动
- 2.2 FreeCAD可正常开启，但是部分图标无法显示，一些图标显示为黑色的'X'
- 2.3 我的FreeCAD存在一些显示问题，3D视图表现的不太正常，在我移动或旋转视图的时候会出现一些错误的内容
- 2.4 FreeCAD开启即崩溃
- 2.5 FreeCAD开启即卡住
- 2.6 在创建一个新文档或打开一个文件时，FreeCAD崩溃
- 2.7 点击Edit → Alignment后FreeCAD崩溃
- 2.8 我在Mac OSX上运行FreeCAD时出了问题
- 2.9 我无法改变FreeCAD属性面板中各种数值
- 2.10 FreeCAD本身运行得好好的，但是突然就打不开了
- 3 使用FreeCAD
- 4 处理零件的几何形状
- 5 为FreeCAD贡献自己的力量
- 6 许可证、版权与复用
在一些老旧的Windows XP系统中，您可以会收到类似的错误消息：The application can't start, because the side-by-side configuration is wrong. The reinstallation of the application may solve the problem（因为相关配置错误，本应用程序无法启动。重新安装或许会解决此问题）. 本问题的原因在于：此系统上的CRT运行库缺失，或版本过旧，而FreeCAD在链接时使用的是新版库。在这种情况下，您需要去微软官网下载并安装Microsoft Visual C++ Redistributable Package（Microsoft Visual C++可再发行组件包）。可参考论坛信息。
- 在终端窗口中输入glxinfo，检查输出内容中的Direct Rendering（直接渲染）项为"yes"，且OpenGL vendor/renderer/version（生产商、渲染器、版本）对应于机器中的显卡。
And as a general tip to get some more information about crashes with FreeCAD you can start it with the program parameter --write-log. This will create the file FreeCAD.log in $HOME/.FreeCAD on Linux and Mac OS X or %APPDATA%/FreeCAD on Windows systems.
In some rare cases you may have a graphic driver installed that doesn't fit to your graphic card. We had a case where the user's laptop had an Intel on-board graphic but some ATI drivers were installed.  After removing the files and re-installing the correct driver FreeCAD started to work.
There can be two paths to this problem: either some library is simply missing, therefore FreeCAD will refuse to start, or the library is there, but it is an older version than the one FreeCAD expects, so a crash will occur when FreeCAD attempts to use a missing feature from that library. A common example is when you have Qt3 and Qt4 installed on your system, FreeCAD might detect Qt4 but if your Qt installation is not properly configured, some pieces of Qt3 might still be used, provoking crashes.
Please review the installing procedure, make sure you installed all the required libraries (on most linux systems this is done automatically), and check what is the minimum version number for each of the components.
If everything seems correct, describe the problem on the forum or submit a bug. If you are on a linux system, it is easy to do a debug backtrace, which provides very useful information about the crash to the developers:
- in a terminal, type: gdb freecad (assuming package gdb is installed)
- inside gdb, type run
- after the crash, type bt to get the backtrace, that you can include in your bug report.
If FreeCAD crashes when it creates a new 3D view, try launching FreeCAD from a terminal. If a message error appears when the crash occurs, mentioning, and a component name beginning with "So" ( , , etc.), the chances are very high, especially if you are on Linux, that FreeCAD is trying to use two different versions of the Coin library, which causes the crash. To verify if that is indeed the problem, try the following:
- Locate the FreeCAD executable (usually in /usr/lib/FreeCAD/bin)
- Run the command ldd FreeCAD from a terminal
- Note down the version of the libCoin.so library that FreeCAD is using (for example libCoin.so.60)
- Locate the libSoQt.so library (usually in /usr/lib)
- run ldd libSoQt.so and check if it links to the same Coin version as FreeCAD
If there is any difference, either FreeCAD or SoQt must be recompiled (better to recompile the one that uses the oldest Coin version). The normal behavior is to try to contact the people responsible for packaging either SoQt or FreeCAD and kindly ask them to consider recompiling. If you want to undertake that step for yourself, and it is not possible to recompile SoQt because it breaks other applications on your system, you can force FreeCAD to compile with the required Coin version with ./configure --with-coin=DIR. But you have to make sure that the correct development package of this Coin version is installed.
点击Edit → Alignment后FreeCAD崩溃
A segmentation fault happens at IV_SEPARATOR_MAX_CACHES=0 and restart FreeCAD.. This means that the implementation of VBO in the graphic driver is bad. In order to avoid caching OpenGL calls you can try to set the environment variable
You most likely have bad windows regional settings set-up. Please check if you have the same symbol for decimal separator and digit grouping symbol in your regional settings. If you do, adapt your system settings to use different characters for the digit grouping symbol and decimal separator. Note that it is not mandatory to have dot as decimal separator. It is mandatory to use different symbols in these two settings.
This can also happen if you had an older version of FreeCAD installed, and you upgraded to a newer version. In that process, the configuration files of FreeCAD might have been corrupted for some reason, and now FreeCAD cannot read them anymore, and fails to start. The solution is simply to delete these configuration files, so FreeCAD will recreate them on first run.
- On Windows: Open the file explorer, and write %APPDATA%/FreeCAD as the file path. Once there, delete the files user.cfg and system.cfg
- On Linux: Navigate to /home/USERNAME/.FreeCAD and delete the files user.cfg and system.cfg
- On Mac: Navigate to /Users/USERNAME/Library/Preferences/FreeCAD and delete the files user.cfg and system.cfg
FreeCAD should now start again normally with all its settings reset.
There is a Macro findConfigFiles available to help in locating your configuration files. It can be installed using the Addon Manager in the Tools menu. Tools → Addon Manager → Macros → findConfigFiles. The macro will find your config file folder, copy it to the clipboard, and (attempt to) open that location with your default file browser. It makes no changes to your files or settings.
FreeCAD has several different navigation modes available, that can be set in the preferences settings dialog or changed by right-clicking in the 3D view. For full details about the modes, see the Mouse Model page. For the default mode ("CAD Navigation"), the commands are as follows,
|Select||Pan||Zoom|| Rotate view
| Rotate view|
|Press the left mouse button over an object you want to select.
Holding downallows the selection of multiple objects.
|Hold the middle mouse button, then move the pointer.||Use the mouse wheel to zoom in and out.
Clicking the middle mouse button re-centers the view on the location of the cursor.
|Hold the middle mouse button, then press and hold the left mouse button, then move the pointer.
The cursor location when the middle mouse button is pressed determines the center of rotation. Rotation works like spinning a ball which rotates around its center. If the buttons are released before you stop the mouse motion, the view continues spinning, if this is enabled.
A double click with the middle mouse button sets a new center of rotation.
|Hold the middle mouse button, then press and hold the right mouse button, then move the pointer.
With this method the middle mouse button may be released after the right mouse button is held pressed.
Users who use the mouse with their right hand may find this method easier than the first method.
|Pan mode: hold the introduced in version 0.17key, press the right mouse button once, then move the pointer.||Zoom mode: hold the introduced in version 0.17and keys, press the right mouse button once, then move the pointer.||Rotate mode: hold the introduced in version 0.17key, press the right mouse button once, then move the pointer.|
Head to the Getting started page for a quick description of the tools you can use. There is also a new Tutorials section containing a few resources. The User hub section contains more detailed information about the different workbenches of FreeCAD. Note that since FreeCAD is relatively new, its user interface is still very bare and doesn't feature many tools. But much more advanced functionality is already available to you from python scripting.
请参阅FreeCAD Howto Import Export页面。问题的答案可能在那里能找到。
The theory is simple: Lines (or wires), when extruded, form faces. Faces, when extruded, form solids. If you extrude something and the result is not a solid, then the something was not a face. If you have lines and you want to extrude a solid from them, you must first select lines that form a closed perimeter (select several objects by pressing Upgrade tool), then make a face from that wire (Upgrade tool again). There you are, if all went well you can now extrude it to a solid.), join them into a wire (
Now, there can be many little twists that make you obtain the wrong result. The best way to make sure is to check what's inside the object you are extruding. Objects contents can be easily explored with python. Assuming for example you have an object called "Wire", you could type this into the python console:
obj = FreeCAD.ActiveDocument.Wire shp = obj.Shape print shp.Faces print shp.Wires if shp.Wires: for w in shp.Wires: print w.isClosed()
The above code retrieves the shape from an object, shows the faces and wires your object has (if any), and, if there are wires, prints if those wires are closed. If you don't have any face, you won't get a solid. If there is no closed wire, it won't become a face. If you are interested, there is more info about what you can check with python on the part scripting page. If you cannot join several lines into a wire, the most probable cause is that their endpoints don't meet, there must be small gaps between (some of) them. There, I'm afraid, my experience tells me the quickest way would be to redraw a wire on top of them.
The Open CASCADE geometric modeling kernel used in FreeCAD for Part geometry, although probably the best open-source geometry kernel available, has its flaws and limitations. Indeed the boolean operations (fusion, subtraction, intersection) are not its best features, and often give strange results. This is a current limitation we have no way to solve at once, so your best path is to try obtaining the desired result by modeling another way. For example, problems with primitives such as cylinder can often be solved by using an extruded circle instead. Coplanar surfaces between parts can cause trouble, as well as surface tangency. As a general rule, if a shape doesn't work, try remodeling it a different way. In 99% of the cases at the end you will manage to obtain the result you want.
When I export (or view) my model, the holes are filled in
Don't use+ (Select All) to export everything from the hierarchy tree. If the model is of one single item, try selecting only the newest item (usually the last one) in the hierarchy tree.
As we create a model in the PartDesign Workbench, each feature takes the shape of the last one and adds or removes something, creating linear dependencies from feature to feature as the model is created. Hence a "Cut" feature is not only the cut hole itself, but the whole part with the cut. This is why the user usually should only have the newest item (feature) in the model tree visible, because otherwise the phases of the model overlay each other, and holes are filled in by the earlier model features.
To toggle visibility of an object on or off, select it in the hierarchy tree and presson your keyboard. Usually everything but the last item in the hierarchy tree should be greyed out and therefore not visible in the 3D view.
There are a lot of different ways to help, even if you are not a programmer. Here are a couple of things you can do:
- Give some feedback to the FreeCAD developers: It is always useful to know what people think, what they found good, what they miss, etc. Drop a note on the forum giving your opinion or make a request on our issue tracker!
- Help with writing documentation: The documentation we have here on this site is sometimes very limited. If you discovered something that is not well documented, add your knowledge there!
- Help others newcomers: Hang around the forum, and help new people to solve basic questions, like how do I install, how do I add a cube, etc.
- Translate the documentation into your own language
- Translate FreeCAD into your own language
- Write Tutorials, or record video tutorials: Tutorials are a very easy way for newcomers to learn a new software. If you did some nice stuff, why not show other people how to do it?
- Contribute with assets and examples: We are still missing good example files in FreeCAD. If you created something good, share it with us!
- Submit bugs: It is very important to have all possible bugs fixed. If you find one, report it as clearly as possible, so we can understand exactly what's happening.
- Try to do some python coding: You never programmed before but you want to try? Python is easy. Read our introduction to Python, but beware, you might get addicted quickly!
- See the Help FreeCAD page for more details on how to contribute.
请参考Work on the documentation页面的相关段落，那里有描述相关细节。
FreeCAD是否参与了Google Summer of Code?
请参考Translate the documentation页面的有关段落来了解翻译此wiki文档的更多细节。