Power users hub/de: Difference between revisions
(Updating to match new version of source page) |
No edit summary |
||
(11 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
__NOTOC__ |
__NOTOC__ |
||
Dies ist der richtige Ort, wenn du ein erfahrener Benutzer bist und mehr über die Anpassung und Erweiterung von FreeCAD erfahren möchtest. |
|||
<div class="mw-translate-fuzzy"> |
|||
Dies ist der richtige Ort, wenn Du einen tieferen Einblick in FreeCAD haben möchtest. Hier lernst Du, wie Du FreeCAD an Deine Bedürfnisse anpassen kannst. |
|||
</div> |
|||
FreeCAD ist durch [[Python/de|Python]] Code erweiterbar, der direkt in der [[Python_console/de|Python Konsole]] ausgeführt wird oder der beim Start aus Modulen geladen wird. Das bedeutet, dass du FreeCAD modifizieren kannst, ohne das Programm neu kompilieren zu müssen. Zum Beispiel kannst du: |
|||
<div class="mw-translate-fuzzy"> |
|||
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 [http://en.wikipedia.org/wiki/Python_(programming_language) 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. |
|||
⚫ | *''' |
||
</div> |
|||
* '''Geometrie erstellen und modifizieren''': Du kannst einen neuen Objekttyp erstellen, entweder von Grund auf neu oder durch Anpassung eines bestehenden Typs. |
|||
<div class="mw-translate-fuzzy"> |
|||
* '''Benutzerdefinierte Werkzeuge und Befehle erstellen''': Du kannst deinen eigenen Satz von Werkzeugen hinzufügen, die deinen Code ausführen. |
|||
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 [http://forum.freecadweb.org/ Forum] oder [[Help_FreeCAD| füge das Material selbst hinzu!]]. |
|||
* '''Ändern der Oberfläche''': Erstelle Werkzeugleisten, um deine Werkzeuge zu platzieren, erstelle spezielle Fenster, Bedienfelder oder Oberflächen für die Interaktion mit deinen Werkzeugen. |
|||
</div> |
|||
⚫ | *'''Modifizieren der Szenegraphendarstellung''': FreeCAD hat separate Prozesse für den Aufbau der Geometrie und die Anzeige dieser Geometrie auf dem Bildschirm. Du hast vollen Zugriff auf die Art und Weise, wie der Szeneninhalt auf dem Bildschirm angezeigt wird, daher kannst du diese Darstellung modifizieren, mit ihr interagieren oder ihr benutzerdefiniertes Verhalten hinzufügen. Du kannst auch benutzerdefinierte Bildschirmsteurelementes wie Informationen, Bremser, Anker oder kurzzeitige Einheiten hinzufügen. |
||
Wenn du Inhalte zu diesen Seiten beitragen möchtest, beantrage ein Wiki Zugang mit Berabeiterberechtigungen [https://forum.freecadweb.org/viewtopic.php?f=21&t=6830 im Forum], und lies die [[WikiPages/de|WikiSeiten]] für die allgemeinen Richtlinien, die du befolgen solltest. Für weitere Möglichkeiten, zum Projekt beizutragen, siehe die [[Help FreeCAD/de|FreeCAD Hilfe]] Seite. |
|||
== FreeCAD anpassen == |
|||
== Anpassen von FreeCAD == |
|||
<div class="mw-translate-fuzzy"> |
|||
* [[Interface Customization/de|Anpassung der Benutzeroberfläche]]: Beginnend mit dem Anfang: Werkzeugleisten und Tastaturkürzel |
* [[Interface Customization/de|Anpassung der Benutzeroberfläche]]: Beginnend mit dem Anfang: Werkzeugleisten und Tastaturkürzel |
||
* [[Macros/de|Makros]]: Einfache Aufzeichnung häufig wiederkehrender Aufgaben oder von Python Code |
* [[Macros/de|Arbeiten mit Makros]]: Einfache Aufzeichnung häufig wiederkehrender Aufgaben oder von Python Code |
||
* [[Macros_recipes/de|Makro Rezepte]] |
* [[Macros_recipes/de|Makro Rezepte]] |
||
* [[Customize_Toolbars/de|Anpassung der Werkzeugleisten]] |
* [[Customize_Toolbars/de|Anpassung der Werkzeugleisten]] |
||
* [[Installing_more_workbenches/de|Weitere Arbeitsbereiche installieren]] |
* [[Installing_more_workbenches/de|Weitere Arbeitsbereiche installieren]] |
||
* [http://forum.freecadweb.org/viewtopic.php?t=10556 Plugin Loader] |
|||
* [https://github.com/FreeCAD/FreeCAD-addons Addons installer.FCMacro] |
|||
</div> |
|||
== |
== Skripten in FreeCAD == |
||
===Allgemein=== |
===Allgemein=== |
||
Line 49: | Line 40: | ||
====Arbeiten mit Netzen==== |
====Arbeiten mit Netzen==== |
||
* [[Mesh Scripting/de| |
* [[Mesh Scripting/de|Polygonnetz Skripten]]: Wie man mit dem [[Mesh Module/de|Polygonnetz Arbeitsbereich]] interagiert |
||
====Arbeiten mit Teilen==== |
====Arbeiten mit Teilen==== |
||
* [[Part Module/de|Arbeitsbereich Part]]: Wie [http://en.wikipedia.org/wiki/Open_CASCADE Open CASCADE Technologie] Werkzeuge und Strukturen in FreeCAD verwendet werden. |
* [[Part Module/de|Arbeitsbereich Part]]: Wie [http://en.wikipedia.org/wiki/Open_CASCADE Open CASCADE Technologie] Werkzeuge und Strukturen in FreeCAD verwendet werden. |
||
* [[Topological data scripting/de|Topologisches |
* [[Topological data scripting/de|Topologisches Datenskripten]]: Wie man mit dem Teil Arbeitsbereich umgeht |
||
* [[PythonOCC/de|PythonOCC]]: Wie man die gesamte Open CASCADE Leistung entfesselt |
* [[PythonOCC/de|PythonOCC]]: Wie man die gesamte Open CASCADE Leistung entfesselt |
||
* [[Mesh to Part/de| |
* [[Mesh to Part/de|Polygonnetz zu Teil]]: Konvertierung zwischen Objekttypen |
||
====Der Zugriff auf die Coin Szenengraph==== |
====Der Zugriff auf die Coin Szenengraph==== |
||
Line 67: | Line 58: | ||
===Arbeiten mit parametrischen Objekten=== |
===Arbeiten mit parametrischen Objekten=== |
||
⚫ | |||
<div class="mw-translate-fuzzy"> |
|||
⚫ | |||
** [[Scripted_objects_with_attachment/de|Geskriptete Objekte mit Anhang]]: wie man geskriptete Objekte an andere Objekte anhängen kann. |
** [[Scripted_objects_with_attachment/de|Geskriptete Objekte mit Anhang]]: wie man geskriptete Objekte an andere Objekte anhängen kann. |
||
** [[Scripted_objects_migration/de|Geskriptete Objekte |
** [[Scripted_objects_migration/de|Geskriptete Objekte, die Attribute speichern]]: wie man Attribute der Proxy Klasse mit {{incode|__getstate__}} und {{incode|__setstate__}} speichert und wiederherstellt. |
||
** [[Scripted_objects_migration/de|Geskriptete Objekte migrieren]]: wie man alte geskriptete Objekte in eine neue Klasse überführt. |
|||
* [[Drawing Module/de|Arbeitsbereich Zeichnen]]: Automatisieren des 3D-zu-2D Prozesses |
|||
</div> |
|||
===Beispiele=== |
===Beispiele=== |
||
* [[Code snippets/de|Code Schnipsel]] : Eine Sammlung von Teilen des FreeCAD Python |
* [[Code snippets/de|Code Schnipsel]] : Eine Sammlung von Teilen des FreeCAD Python Codes, die als Bestandteile in deinen Skripten dienen... |
||
* [[Line drawing function/de|Linienzeichnungsfunktion]]: Wie man ein einfaches Werkzeug zum Zeichnen von Linien baut |
* [[Line drawing function/de|Linienzeichnungsfunktion]]: Wie man ein einfaches Werkzeug zum Zeichnen von Linien baut |
||
* [[Dialog creation/de|Dialogerstellung]]: Wie man Dialoge mit dem Qt Designer erstellt und in FreeCAD verwendet. |
* [[Dialog creation/de|Dialogerstellung]]: Wie man Dialoge mit dem Qt Designer erstellt und in FreeCAD verwendet. |
||
* [[Embedding FreeCAD/de|FreeCAD einbinden]]: |
* [[Embedding FreeCAD/de|FreeCAD einbinden]]: Wie man FreeCAD als Python Modul in andere Anwendungen importiert |
||
* |
* Der [[Draft Module/de|Arbeitsbereich Entwurf]] fügt FreeCAD grundlegende 2D Zeichenfunktionen hinzu. Es ist vollständig in Python geschrieben, so dass es ein gutes Beispiel sein kann, wenn man eigene Module schreiben will. |
||
* [[FreeCAD vector math library/de|FreeCAD Vektor Mathematische Bibliothek]] : Einige praktische Funktionen zur Manipulation von FreeCAD |
* [[FreeCAD vector math library/de|FreeCAD Vektor Mathematische Bibliothek]] : Einige praktische Funktionen zur Manipulation von FreeCAD Vektoren. Diese Bibliothek ist auch im Draft Modul enthalten. |
||
== API Funktionen == |
== API Funktionen == |
||
Line 86: | Line 75: | ||
Die vollständige API-Dokumentation von FreeCAD findest Du unter http://www.freecadweb.org/api/ . Es enthält sowohl C++ als auch Python-APIs und ist noch nicht vollständig gut formatiert, was bei der Suche nach nur Python Code verwirrend sein kann. Eine einfacher zu durchsuchende Version findest Du [[[:Category:API|here]]]. Beachte, dass es unvollständig sein kann, da es manuell aktualisiert wird. Für genauere Informationen durchsuche die Module direkt von der Python-Konsole von FreeCAD aus. |
Die vollständige API-Dokumentation von FreeCAD findest Du unter http://www.freecadweb.org/api/ . Es enthält sowohl C++ als auch Python-APIs und ist noch nicht vollständig gut formatiert, was bei der Suche nach nur Python Code verwirrend sein kann. Eine einfacher zu durchsuchende Version findest Du [[[:Category:API|here]]]. Beachte, dass es unvollständig sein kann, da es manuell aktualisiert wird. Für genauere Informationen durchsuche die Module direkt von der Python-Konsole von FreeCAD aus. |
||
Verwandt: [[Exposing_C%2B%2B_to_Python/de|C++ |
Verwandt: [[Exposing_C%2B%2B_to_Python/de|Aussetzen von C++ in Python |
||
]] |
|||
== Erweiterte Modifikation == |
== Erweiterte Modifikation == |
||
Line 125: | Line 115: | ||
Auf dem [[FreeCAD Community Portal|Gemeinschaftsportal]], findet man weitere FreeCAD basierte Projekte, die von der FreeCAD Anwendergemeinschaft ausgeführt werden. Wenn man ein neues FreeCAD Projekt startet, sollte es dort aufgelistet werden! Wir haben auch eine Seite mit Dingen, die Du, wenn Du möchtest tun kannst [[Help FreeCAD/de|Hilf FreeCAD]]. |
Auf dem [[FreeCAD Community Portal|Gemeinschaftsportal]], findet man weitere FreeCAD basierte Projekte, die von der FreeCAD Anwendergemeinschaft ausgeführt werden. Wenn man ein neues FreeCAD Projekt startet, sollte es dort aufgelistet werden! Wir haben auch eine Seite mit Dingen, die Du, wenn Du möchtest tun kannst [[Help FreeCAD/de|Hilf FreeCAD]]. |
||
* [[Scientific_literature| |
* [[Scientific_literature/de|Wissenschaftliche Literatur]]: Artikel, die sich auf das FreeCAD System beziehen oder es auf unterschiedliche Weise nutzen. |
||
{{Powerdocnavi{{#translation:}}}} |
{{Powerdocnavi{{#translation:}}}} |
Revision as of 09:26, 4 August 2020
Dies ist der richtige Ort, wenn du ein erfahrener Benutzer bist und mehr über die Anpassung und Erweiterung von FreeCAD erfahren möchtest.
FreeCAD ist durch Python Code erweiterbar, der direkt in der Python Konsole ausgeführt wird oder der beim Start aus Modulen geladen wird. Das bedeutet, dass du FreeCAD modifizieren kannst, ohne das Programm neu kompilieren zu müssen. Zum Beispiel kannst du:
- Geometrie erstellen und modifizieren: Du kannst einen neuen Objekttyp erstellen, entweder von Grund auf neu oder durch Anpassung eines bestehenden Typs.
- Benutzerdefinierte Werkzeuge und Befehle erstellen: Du kannst deinen eigenen Satz von Werkzeugen hinzufügen, die deinen Code ausführen.
- Ändern der Oberfläche: Erstelle Werkzeugleisten, um deine Werkzeuge zu platzieren, erstelle spezielle Fenster, Bedienfelder oder Oberflächen für die Interaktion mit deinen Werkzeugen.
- Modifizieren der Szenegraphendarstellung: FreeCAD hat separate Prozesse für den Aufbau der Geometrie und die Anzeige dieser Geometrie auf dem Bildschirm. Du hast vollen Zugriff auf die Art und Weise, wie der Szeneninhalt auf dem Bildschirm angezeigt wird, daher kannst du diese Darstellung modifizieren, mit ihr interagieren oder ihr benutzerdefiniertes Verhalten hinzufügen. Du kannst auch benutzerdefinierte Bildschirmsteurelementes wie Informationen, Bremser, Anker oder kurzzeitige Einheiten hinzufügen.
Wenn du Inhalte zu diesen Seiten beitragen möchtest, beantrage ein Wiki Zugang mit Berabeiterberechtigungen im Forum, und lies die WikiSeiten für die allgemeinen Richtlinien, die du befolgen solltest. Für weitere Möglichkeiten, zum Projekt beizutragen, siehe die FreeCAD Hilfe Seite.
Anpassen von FreeCAD
- Anpassung der Benutzeroberfläche: Beginnend mit dem Anfang: Werkzeugleisten und Tastaturkürzel
- Arbeiten mit Makros: Einfache Aufzeichnung häufig wiederkehrender Aufgaben oder von Python Code
- Makro Rezepte
- Anpassung der Werkzeugleisten
- Weitere Arbeitsbereiche installieren
Skripten in FreeCAD
Allgemein
- Einführung in Python - Siehe auch andere Python Tutorien am Ende dieser Seite.
- Python Skriptsprache Tutorien - Ein allgemeiner Blick auf Python Scriptsprache in FreeCAD
- FreeCAD Grundlagen Scriptsprache: Nun, die Grundlagen...
- Gui Befehl: Hinzufügen von benutzerdefinierten Befehlen zur GUI
- Verwendung von gemischten Einheiten in FreeCAD
Module
Die Funktionalität von FreeCAD ist in Module unterteilt, die sich mit speziellen Datentypen und Anwendungen befassen. FreeCAD hat eingebaute Module und Erweiterungsmodule (Plug-Ins). Sobald Plugin-Module installiert sind, stehen sie Ihnen genauso einfach zur Verfügung wie die eingebauten Module. Die nachfolgend beschriebenen Module sind die Standardmodule, die in jeder FreeCAD-Installation enthalten sind.
- Die Einbaumodule sind die wichtigsten FreeCAD Module. Sie enthalten Werkzeuge zur Manipulation allgemeiner FreeCAD Konfigurationen, Dokumente und deren Inhalte.
- Arbeitsbereich Erstellung zeigt Dir, wie Du Deine eigene Arbeitsbereich erstellen kannst.
Arbeiten mit Netzen
- Polygonnetz Skripten: Wie man mit dem Polygonnetz Arbeitsbereich interagiert
Arbeiten mit Teilen
- Arbeitsbereich Part: Wie Open CASCADE Technologie Werkzeuge und Strukturen in FreeCAD verwendet werden.
- Topologisches Datenskripten: Wie man mit dem Teil Arbeitsbereich umgeht
- PythonOCC: Wie man die gesamte Open CASCADE Leistung entfesselt
- Polygonnetz zu Teil: Konvertierung zwischen Objekttypen
Der Zugriff auf die Coin Szenengraph
- Szenengraph: Wie die FreeCAD Szenendarstellung funktioniert
- Pivy: Wie man auf den Szenengraph zugreift und ihn ändert
Steuerung der Qt Schnittstelle
- PySide: Wie man auf die Schnittstelle zugreift und deren Inhalt ändert
- Einbetten von FreeCADGui in eine andere Qt Anwendung mit PyQt
Arbeiten mit parametrischen Objekten
- Geskriptete Objekte: wie man 100% Python geskriptete Objekte erstellt.
- Geskriptete Objekte mit Anhang: wie man geskriptete Objekte an andere Objekte anhängen kann.
- Geskriptete Objekte, die Attribute speichern: wie man Attribute der Proxy Klasse mit
__getstate__
und__setstate__
speichert und wiederherstellt. - Geskriptete Objekte migrieren: wie man alte geskriptete Objekte in eine neue Klasse überführt.
Beispiele
- Code Schnipsel : Eine Sammlung von Teilen des FreeCAD Python Codes, die als Bestandteile in deinen Skripten dienen...
- Linienzeichnungsfunktion: Wie man ein einfaches Werkzeug zum Zeichnen von Linien baut
- Dialogerstellung: Wie man Dialoge mit dem Qt Designer erstellt und in FreeCAD verwendet.
- FreeCAD einbinden: Wie man FreeCAD als Python Modul in andere Anwendungen importiert
- Der Arbeitsbereich Entwurf fügt FreeCAD grundlegende 2D Zeichenfunktionen hinzu. Es ist vollständig in Python geschrieben, so dass es ein gutes Beispiel sein kann, wenn man eigene Module schreiben will.
- FreeCAD Vektor Mathematische Bibliothek : Einige praktische Funktionen zur Manipulation von FreeCAD Vektoren. Diese Bibliothek ist auch im Draft Modul enthalten.
API Funktionen
Die vollständige API-Dokumentation von FreeCAD findest Du unter http://www.freecadweb.org/api/ . Es enthält sowohl C++ als auch Python-APIs und ist noch nicht vollständig gut formatiert, was bei der Suche nach nur Python Code verwirrend sein kann. Eine einfacher zu durchsuchende Version findest Du [[[:Category:API|here]]]. Beachte, dass es unvollständig sein kann, da es manuell aktualisiert wird. Für genauere Informationen durchsuche die Module direkt von der Python-Konsole von FreeCAD aus.
Verwandt: Aussetzen von C++ in Python
Erweiterte Modifikation
- Programmstart und Konfiguration: Start- und Kommandozeilenoptionen
- Installieren auf Windows: Verwendung des Windows nstallationsprogramms
- Kompilieren auf Windows und Kompilieren auf Linux
- Markenbindung: Einfache Änderungen, die am Quellcode vorgenommen werden können, um einige Aspekte von FreeCAD zu ändern.
- Zusätzliche Python Module : Erweitere den FreeCAD Python Übersetzer mit diesen leistungsstarken Modulen!
Python Tutorien
Dies sind gute allgemeine Tutorien, nicht spezifisch für FreeCAD, die dich interessieren könnten, wenn Python völlig neu für dich ist.
Python
- Official python tutorial - Ein sehr vollständiges Tutorial zur Erforschung von Python.
- Non-programmer tutorial for python - ein ausgezeichnetes Wikibuch
- Python for newbies - ein großes Tutorial, das alle Grundlagen abdeckt
PySide - Wie man die Qt UI-Schnittstelle von FreeCAD aus Python erstellt und verwaltet.
- PySide tutorial : Ein plattformunabhängiges Tutorial, das die Verwendung von PySide mit Beispielen zeigt.
- PySide/PyQt tutorial : Ein leicht verständliches Tutorial, das PySide und PyQt mit Beispielen behandelt.
- PySide documentation : aus dem Qt-Projekt (die Leute, die alles geschrieben haben)
- Using QtCreator in PySide : auch aus dem Qt Projekt
- PySide reference : endlose Details über die Details von PySide und Qt, einer zuverlässigen Referenzquelle.
- PySide code snippets : eine durchsuchbare Datenbank mit PySide Code Snippets.
Die folgenden beiden Referenzen sind PyQt-spezifisch (nicht PySide), können aber einige Informationen zur Verwendung enthalten:
- Basic PyQt Tutorial : Ein einfaches und kurzes linuxbasiertes Tutorial, das die Arbeit mit PyQt und Qt Designer erklärt.
- Programmierung von Qt-Anwendungen in Python : Ein ausführlicheres Tutorial, das den gesamten Prozess der Arbeit mit Qt und Python behandelt.
Pivy'' - Wie man mit den 3D-Szenen von FreeCAD umgeht
- Basic Pivy Tutorial : Ein sehr einfaches Tutorial von der offiziellen Pivy-Seite.
- Introducing Pivy into studierstube : Ein Dokument, das nicht wirklich ein Tutorial ist, aber das gut veranschaulicht, wie Pivy funktioniert.
Gemeinschaftsprojekte
Auf dem Gemeinschaftsportal, findet man weitere FreeCAD basierte Projekte, die von der FreeCAD Anwendergemeinschaft ausgeführt werden. Wenn man ein neues FreeCAD Projekt startet, sollte es dort aufgelistet werden! Wir haben auch eine Seite mit Dingen, die Du, wenn Du möchtest tun kannst Hilf FreeCAD.
- Wissenschaftliche Literatur: Artikel, die sich auf das FreeCAD System beziehen oder es auf unterschiedliche Weise nutzen.
- FreeCAD scripting: Python, Introduction to Python, Python scripting tutorial, FreeCAD Scripting Basics
- Modules: Builtin modules, Units, Quantity
- Workbenches: Workbench creation, Gui Commands, Commands, Installing more workbenches
- Meshes and Parts: Mesh Scripting, Topological data scripting, Mesh to Part, PythonOCC
- Parametric objects: Scripted objects, Viewproviders (Custom icon in tree view)
- Scenegraph: Coin (Inventor) scenegraph, Pivy
- Graphical interface: Interface creation, Interface creation completely in Python (1, 2, 3, 4, 5), PySide, PySide examples beginner, intermediate, advanced
- Macros: Macros, How to install macros
- Embedding: Embedding FreeCAD, Embedding FreeCADGui
- Other: Expressions, Code snippets, Line drawing function, FreeCAD vector math library (deprecated)
- Hubs: User hub, Power users hub, Developer hub