Power users hub/de



Diese Seite ist ein guter Startpunkt, um tief in FreeCAD einzusteigen. Hier kann man lernen, wie man FreeCAD für besondere Anforderungen anpasst.

Diese Seiten befinden sich im Aufbau. Falls du die Informationen, nach denen du suchst, nicht findest, oder aber irgendwo nützliche Informationen gefunden hast, die nicht verlinkt sind, hinterlasse doch bitte einen Kommentar im Forum oder füge das Material selbst hinzu!.

Einer der spannendsten Features von FreeCAD ist, dass man es in großem Umfang skripten oder erweitern kann, ohne dass es nötig ist etwas zu kompilieren oder den Quellcode zu modifizieren. Dazu wird die sehr einfache aber mächtige Programmiersprache Python eingesetzt. Mit einfachen Python Skripten hat man vollen Zugriff auf fast alle Teile von FreeCAD. Zum Beispiel kann man:
 * Geometrien erzeugen und modifizieren: Benötigst du eine besondere Art von Objekt, das nicht im Standardumfang von FreeCAD enthalten ist? Man kann sehr einfach einen neuen Objekttyp zu FreeCAD hinzufügen, entweder durch Anpassung eines bereits vorhandenen Typs, oder durch komplette Neuentwicklung.
 * Erstelle eigene Werkzeuge und Kommandos: FreeCAD hat bereits viele Funktionen, aber es gibt noch nicht so viele bequem nutzbare Werkzeuge und Kommandos für den Benutzer. Aber es ist nicht schwer, eigene Werkzeuge zu entwickeln.
 * Verändere die Benutzeroberfläche': Die Beutzeroberfläche von FreeCAD ist in vielerlei Hinsicht noch recht rudimentär, aber es sind alle Voraussetzungen dafür geschaffen, sie an bestimmte Anforderungen anzupassen. Man kann zum Beispiel eigene Werkzeugleisten für eigene Werkzeuge erstellen und vieles mehr.
 * Verändere die Anzeige der Szene: FreeCAD hat spezielle Prozesse für den Aufbau und Berechnung der Geometrie, und für die Anzeige derselben. Man hat volle Kontrolle über die Art und Weise, wie Inhalte auf dem Bildschirm dargestellt werden und kann diese Darstellung verändern, mit ihr interagieren oder beliebiges Verhalten und Widgets hinzufügen wie Informationen, Verschiebegriffe, Anker oder temporäre Entitäten.

FreeCAD anpassen

 * Interface Customization: Starting with the beginning: Toolbars and shortcuts
 * Working with Macros: Easily record often repeated tasks or Python code
 * Macros recipes
 * Customize Toolbars
 * Installing more workbenches
 * Plugin Loader
 * Addons installer.FCMacro

General

 * Introduction to Python - See also other Python tutorials at the bottom of this page
 * FreeCAD scripting tutorial - A general look at python scripting in FreeCAD
 * FreeCAD Scripting Basics: Well, the basics...
 * Gui Command : Adding custom commands to the GUI
 * Using mixed Units in FreeCAD

Modules
The functionality of FreeCAD is separated in Modules which deal with special data types and applications. FreeCAD has built-in modules and Extension Modules (plug-ins). Once plugin modules are installed, they become availible to you as easily as the built-in modules. The modules described below are the default modules, includeed in every FreeCAD installation.


 * The Builtin modules are the principal FreeCAD modules. They contain tools for manipulating general FreeCAD configurations, documents and their contents.
 * Workbench creation shows you how to create your own workbench

Working with Meshes

 * Mesh Scripting: How to interact with the Mesh Module

Working with Parts

 * The Part Module: How Open CASCADE Technology tools and structure is used in FreeCAD
 * Topological data scripting: How to interact with the Part Module
 * PythonOCC: How to unleash the whole Open CASCADE power
 * Mesh to Part: Converting between object types

Accessing the Coin scenegraph

 * The Coin/Inventor scenegraph: How the FreeCAD scene representation works
 * Pivy: How to access and modify the scenegraph

Controlling the Qt interface

 * PySide: How to access the interface, and modify its contents
 * Using the FreeCAD GUI in another Qt application with PyQt

Working with parametric objects

 * Scripted objects: How to make 100% Python-scripted objects in FreeCAD
 * Drawing Module: Automating the 3D-to-2D process

Examples

 * Code snippets : A collection of pieces of FreeCAD Python code, to serve as ingredients in your scripts...
 * Line drawing function: How to build a simple tool to draw lines
 * Dialog creation: How to construct dialogs with Qt designer, and use them in FreeCAD
 * Embedding FreeCAD: How to import FreeCAD as a Python module in other applications
 * The Draft Module adds basic 2d drawing functions to freecad. It is written entirely in Python, so it can be a good example if you want to write your own modules.
 * FreeCAD vector math library : A couple of handy functions to manipulate FreeCAD vectors. This library is also included in the Draft module.

API Functions
The complete API documentation of FreeCAD is located at http://www.freecadweb.org/api/. It contains both C++ and Python APIs, and is not totally well formatted yet, which can be confusing when looking for python-only code. An easier to browse version can be found here. Note that it can be incomplete, since it is updated manually. For more accurate information, browse the modules directly from FreeCAD's Python console.

Related: Exposing C++ to Python

Advanced modification

 * Start up and Configuration: Startup and command line options
 * Install on Windows: Using the windows installer
 * Compiling FreeCAD on Windows and Compiling FreeCAD on Linux
 * Branding: Simple modifications you can do to the source code to change some aspects of FreeCAD
 * Extra python modules : Extend the FreeCAD python interpreter with these powerful modules!

Python tutorials
These are good generic tutorials, not specific to FreeCAD, that might interest you if you are totally new to python.

Python
 * Official python tutorial - A very complete tutorial for discovering python
 * Non-programmer tutorial for python - an excellent wikibook
 * Python for newbies - one big tutorial covering all the basics

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.