Difference between revisions of "How to install macros/de"

From FreeCAD Documentation
Jump to navigation Jump to search
(Created page with "=== Automatische Methode ===")
(Updating to match new version of source page)
 
(112 intermediate revisions by 2 users not shown)
Line 9: Line 9:
  
 
==Beschreibung==
 
==Beschreibung==
Diese Seite zeigt dir, wie du FreeCAD [[macros/de|Makros]] installieren und benutzen kannst.
+
 
 +
Seit v0.17 ist es einfach, Makros mit Hilfe des [[Std_AddonMgr/de|Erweiterungsverwalter]] hinzuzufügen. Ein normaler Benutzer braucht nicht mehr zu tun, als dieses Werkzeug zu benutzen. Lies weiter, um weitere Informationen zur Installation von [[macros/de|Makros]] zu erhalten.
  
 
Makros sind Befehlssequenzen, die zur Ausführung einer komplexen Zeichenoperation verwendet werden. Makros sind [[Python/de|Python]] Skripte, d.h. sie sind Textdateien, die mit einem Texteditor geschrieben und bearbeitet werden können.
 
Makros sind Befehlssequenzen, die zur Ausführung einer komplexen Zeichenoperation verwendet werden. Makros sind [[Python/de|Python]] Skripte, d.h. sie sind Textdateien, die mit einem Texteditor geschrieben und bearbeitet werden können.
Line 21: Line 22:
 
==Das Makro Menü und die Werkzeugleiste==
 
==Das Makro Menü und die Werkzeugleiste==
  
 +
<div class="mw-translate-fuzzy">
 
===Werkzeugleiste===
 
===Werkzeugleiste===
[[Image:Macro-record.svg|32px|record]] [[Std_DlgMacroRecord/de|Aufzeichnen]]
+
* [[Image:Macro-record.svg|32px|record]] [[Std_DlgMacroRecord/de|Aufzeichnen]]
[[Image:Macro-stop.svg|32px|stop]] [[Std_DebugStop/de|Beenden]]
+
* [[Image:Macro-stop.svg|32px|stop]] [[Std_DebugStop/de|Beenden]]
[[Image:Std_DlgMacroExecuteDirect.svg|32px|open editor]] [[Std_DlgMacroExecuteDirect/de|Makro Dialog ausführen]]
+
* [[Image:Std_DlgMacroExecuteDirect.svg|32px|open editor]] [[Std_DlgMacroExecuteDirect/de|Makro Dialog ausführen]]
[[Image:Macro-execute.svg|32px|execute]] [[Std_DlgMacroExecute/de|Ausführen]]
+
* [[Image:Macro-execute.svg|32px|execute]] [[Std_DlgMacroExecute/de|Ausführen]]
 +
</div>
  
===Menü======
+
<div class="mw-translate-fuzzy">
 +
===Menü===
 
Neben den Werkzeugen in der Werkzeugleiste sind auch die folgenden Funktionen im Menü {{MenuCommand/de|Makro}} verfügbar.
 
Neben den Werkzeugen in der Werkzeugleiste sind auch die folgenden Funktionen im Menü {{MenuCommand/de|Makro}} verfügbar.
[[Image:Debug-start.svg|32px|start]] [[Std_DebugMacro/de|Start Fehlersuche]]
+
*[[Image:Debug-start.svg|32px|start]] [[Std_DebugMacro/de|Start Fehlersuche]]
[[Image:Debug-stop.svg|32px|stop]] [[DebugStop/de|Stop Fehlersuche]]
+
*[[Image:Debug-stop.svg|32px|stop]] [[DebugStop/de|Stop Fehlersuche]]
 
* Schritt über
 
* Schritt über
 
* Schritt in
 
* Schritt in
 
* Umschalten Haltepunkt
 
* Umschalten Haltepunkt
 +
</div>
  
 
==Makros Verzeichnis==
 
==Makros Verzeichnis==
Line 39: Line 44:
 
<div class="toccolours mw-collapsible mw-collapsed">
 
<div class="toccolours mw-collapsible mw-collapsed">
  
 +
<div class="mw-translate-fuzzy">
 
Makros werden in einem bestimmten Ordner unter dem FreeCAD Benutzerverzeichnis erstellt. Dieses Verzeichnis kann im [[Std_DlgMacroExecuteDirect/de|Makrodialog ausführen]], oder im [[Preferences Editor/de|Einstellungseditor]], über das Menü {{MenuCommand/de|Bearbeiten → Einstellungen → Allgemein →  Makro → Makro Aufnahme Einstellungen}}.
 
Makros werden in einem bestimmten Ordner unter dem FreeCAD Benutzerverzeichnis erstellt. Dieses Verzeichnis kann im [[Std_DlgMacroExecuteDirect/de|Makrodialog ausführen]], oder im [[Preferences Editor/de|Einstellungseditor]], über das Menü {{MenuCommand/de|Bearbeiten → Einstellungen → Allgemein →  Makro → Makro Aufnahme Einstellungen}}.
 +
</div>
  
 
Heruntergeladene Makros sollten ebenfalls in diesem Verzeichnis abgelegt werden.
 
Heruntergeladene Makros sollten ebenfalls in diesem Verzeichnis abgelegt werden.
Line 64: Line 71:
 
* Unter Mac OSX ist es normalerweise {{incode|/Benutzer/Benutzername/Bibliothek/Einstellungen/FreeCAD/}}
 
* Unter Mac OSX ist es normalerweise {{incode|/Benutzer/Benutzername/Bibliothek/Einstellungen/FreeCAD/}}
  
 +
<div class="mw-translate-fuzzy">
 
=== Konfigurieren des Benutzerverzeichnisses ===
 
=== Konfigurieren des Benutzerverzeichnisses ===
 
1. Öffne das Menü {{MenuCommand/de|Makro → [[Image:Std DlgMacroExecuteDirect.svg|16px]] [[Std_DlgMacroExecuteDirect/de|Makros]]}}, um den [[Std_DlgMacroExecuteDirect/de|Makrodialog ausführen]].
 
1. Öffne das Menü {{MenuCommand/de|Makro → [[Image:Std DlgMacroExecuteDirect.svg|16px]] [[Std_DlgMacroExecuteDirect/de|Makros]]}}, um den [[Std_DlgMacroExecuteDirect/de|Makrodialog ausführen]].
 +
</div>
  
 +
<div class="mw-translate-fuzzy">
 
[[Image:Dxf_Importer_Install_01.png|center]]
 
[[Image:Dxf_Importer_Install_01.png|center]]
 
{{Caption|align=center|Opening the macro dialog}}
 
{{Caption|align=center|Opening the macro dialog}}
 +
</div>
  
 
2. Setze den entsprechenden {{incode|Nutzer Makros Standort}}.
 
2. Setze den entsprechenden {{incode|Nutzer Makros Standort}}.
Line 104: Line 115:
 
=== Automatische Methode ===
 
=== Automatische Methode ===
  
Starting with FreeCAD 0.17, use the [[Addon Manager|Addon Manager]] in {{MenuCommand|Tools Addon manager}} to install a macro that has been included in the [https://github.com/FreeCAD/FreeCAD-macros FreeCAD-macros] repository.
+
Ab FreeCAD 0.17 verwende den [[Addon Manager|Zusatzmanager]] in {{MenuCommand/de|Werkzeuge Zusatzmanager}}, um ein Makro zu installieren, das in das [https://github.com/FreeCAD/FreeCAD-macros FreeCAD-macros] Repositorium aufgenommen wurde.
  
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
  
In past versions of FreeCAD you could use two automated ways to install macros and other addons:
+
In früheren Versionen von FreeCAD konntest du zwei automatisierte Wege nutzen, um Makros und andere Addons zu installieren:
* [https://github.com/FreeCAD/FreeCAD-addons addons_installer.FCMacro]: itself a macro, this was the precursor to the Addon Manager, and is hosted in the [https://github.com/FreeCAD/FreeCAD-addons FreeCAD-addons] repository. You don't need to use this tool in new installations of FreeCAD.
+
* [https://github.com/FreeCAD/FreeCAD-addons addons_installer.FCMacro]: selbst ein Makro, dies war der Vorläufer des Zusatzmanagers, und wird im [https://github.com/FreeCAD/FreeCAD-addons FreeCAD-addons] Repositorium beherbergt. Bei Neuinstallationen von FreeCAD muss dieses Tool nicht verwendet werden.
* [https://github.com/microelly2/freecad-pluginloader freecad-pluginloader]: also a macro, it could be used to install new components to FreeCAD. It is no longer developed.
+
* [https://github.com/microelly2/freecad-pluginloader freecad-pluginloader]: ebenfalls ein Makro, es kann verwendet werden, um neue Komponenten in FreeCAD zu installieren. Es wird nicht mehr weiterentwickelt.
  
The recommended way to install addons, that is, [[external workbenches|external workbenches]] and macros, is the [[Addon Manager|Addon Manager]]. However, you can still add macros to your system with the manual methods described in the following sections; this is useful if you are developing and testing your own code.
+
Der empfohlene Weg, Zusätze, d.h. [[external workbenches/de|externe Arbeitsbereiche]] und Makros zu installieren, ist der [[Addon Manager|Zusatzmanager]]. Du kannst jedoch immer noch Makros mit den in den folgenden Abschnitten beschriebenen manuellen Methoden zu deinem System hinzufügen; dies ist nützlich, wenn du deinen eigenen Code entwickelst und testest.
  
 
</div>
 
</div>
Line 119: Line 130:
 
<div class="toccolours mw-collapsible mw-collapsed">
 
<div class="toccolours mw-collapsible mw-collapsed">
  
===Manual method 1. Copy the code to the macro editor===
+
===Manuelle Methode 1. Kopiere den Code in den Makro Editor====
  
For macros that are relatively small, 300 lines or less, the code can be copied and pasted directly into the FreeCAD macro editor.
+
Für Makros, die relativ klein sind, 300 Zeilen oder weniger, kann der Code kopiert und direkt in den FreeCAD Makro-Editor eingefügt werden.
  
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
  
We will use [[Image:Part_Prism_Apothem.svg|24px]] [[Macro_Apothem_Based_Prism_GUI|Macro Apothem Based Prism GUI]] as an example.
+
Wir werden [[Image:Part_Prism_Apothem.svg|24px]] [[Macro_Apothem_Based_Prism_GUI/de|Macro Apothem Based Prism GUI]] als ein Beispiel verwenden.
  
1. Go to the macro wiki page, which should be listed in [[Macros recipes|Macros recipes]].
+
1. Gehe auf die Makro Wiki Seite, die unter [[Macros recipes/de|Makro Rezepte]] aufgelistet sein sollte.
  
If there is a custom icon download it; click on it with the right mouse button and select {{incode|Save image as...}}; place the icon in the macros directory. This icon can be used as a shortcut for the macro in a [[Customize_Toolbars|custom toolbar]]. The default icon is [[Image:Text-x-python.png|24px]].
+
Wenn es ein benutzerdefiniertes Symbol gibt, lade es herunter; klicke mit der rechten Maustaste darauf und wähle {{incode|Bild speichern unter...}}; platziere das Symbol im Makroverzeichnis. Dieses Symbol kann als Tastaturkürzel für das Makro in einer [[Customize_Toolbars/de|benutzerdefinierten Werkzeugleiste]] verwendet werden. Das Standardsymbol ist [[Image:Text-x-python.png|24px]].
  
 
[[File:Macro Install HowTo 28.png|center]]
 
[[File:Macro Install HowTo 28.png|center]]
 
{{Caption|align=center|Downloading the icon from the macro page}}
 
{{Caption|align=center|Downloading the icon from the macro page}}
  
2. In the macro page, select the code inside the {{Emphasis|Script}} or {{Emphasis|Macro}} sections, and copy it.
+
2. Wähle auf der Makroseite den Code innerhalb der Abschnitte {{Emphasis|Skript}} oder {{Emphasis|Makro}} aus und kopiere ihn.
  
3. In FreeCAD, open the menu {{MenuCommand|Macro → [[Image:Std DlgMacroExecuteDirect.svg|16px]] [[Std_DlgMacroExecuteDirect|Macros]]}} to open the [[Std_DlgMacroExecuteDirect|Execute macro dialog]].
+
<div class="mw-translate-fuzzy">
 +
3. Öffne in FreeCad das Menü {{MenuCommand/de|Makro → [[Image:Std DlgMacroExecuteDirect.svg|16px]] [[Std_DlgMacroExecuteDirect/de|Makros]]}}, um den [[Std_DlgMacroExecuteDirect/de|Makro Dialog ausführen]].
 +
</div>
  
 +
<div class="mw-translate-fuzzy">
 
[[Image:Dxf_Importer_Install_01.png|center]]
 
[[Image:Dxf_Importer_Install_01.png|center]]
 
{{Caption|align=center|Opening the execute macro dialog}}
 
{{Caption|align=center|Opening the execute macro dialog}}
 +
</div>
  
4. Click {{Button|Create}}.
+
4. Klicke {{Button|Erstelle}}.
  
 
[[Image:Macro Install HowTo 17.png|center]]
 
[[Image:Macro Install HowTo 17.png|center]]
 
{{Caption|align=center|Creating a new macro}}
 
{{Caption|align=center|Creating a new macro}}
  
5. Enter the macro name, here {{incode|Macro_Apothem_Based_Prism_GUI}}, and press {{Button|OK}}.
+
5. Gib den Makronamen ein, hier {{incode|Macro_Apothem_Based_Prism_GUI}}, und drücke {{Button|OK}}.
  
 
[[Image:Macro Install HowTo 18.png|center]]
 
[[Image:Macro Install HowTo 18.png|center]]
 
{{Caption|align=center|Entering the macro name}}
 
{{Caption|align=center|Entering the macro name}}
  
6. The macro editor opens, showing the full path of the new macro.
+
6. Der Makro Editor öffnet sich und zeigt den vollständigen Pfad des neuen Makros an.
  
 
[[Image:Macro Install HowTo 19.png|center]]
 
[[Image:Macro Install HowTo 19.png|center]]
 
{{Caption|align=center|The macro editor}}
 
{{Caption|align=center|The macro editor}}
  
7. Paste the code in the editor window, and then click the cross on the tab to close the window.
+
7. Füge den Code in das Editorfenster ein und klicke dann auf das Kreuz auf der Registerkarte, um das Fenster zu schließen.
  
 
[[Image:Macro Install HowTo 20.png|center]]
 
[[Image:Macro Install HowTo 20.png|center]]
 
{{Caption|align=center|Closing the macro editor}}
 
{{Caption|align=center|Closing the macro editor}}
  
8. A window appears asking for confirmation to save the code; click on {{Button|Yes}}. You can also use {{KEY|Ctrl}}+{{KEY|S}} to save the file.
+
8. Ein Fenster erscheint, das nach Bestätigung zum Speichern des Codes fragt; klicke auf {{Button|Ja}}. Du kannst auch {{KEY|Ctrl}}+{{KEY|S}} verwenden, um die Datei zu speichern.
  
Restart FreeCAD to correctly register the new macro.
+
Starte FreeCAD neu, um das neue Makro korrekt zu registrieren.
  
 
[[Image:Macro Install HowTo 27.png|center]]
 
[[Image:Macro Install HowTo 27.png|center]]
 
{{Caption|align=center|Asking for confirmation to save the code}}
 
{{Caption|align=center|Asking for confirmation to save the code}}
  
9. Open the menu again, {{MenuCommand|Macro → [[Image:Std DlgMacroExecuteDirect.svg|16px]] [[Std_DlgMacroExecuteDirect|Macros]]}}, select the new macro and press {{Button|Execute}}.
+
<div class="mw-translate-fuzzy">
 +
9. Öffne dann das Menü erneut, {{MenuCommand/de|Makro → [[Image:Std DlgMacroExecuteDirect.svg|16px]] [[Std_DlgMacroExecuteDirect/de|Makros]]}}, wähle das neue Makro aus und drücke {{Button|Ausführen}}.
 +
</div>
  
 
[[Image:Macro Install HowTo 21.png|center]]
 
[[Image:Macro Install HowTo 21.png|center]]
 
{{Caption|align=center|Selecting the macro to run it}}
 
{{Caption|align=center|Selecting the macro to run it}}
  
10. The macro now runs. Fill in the fields with your values and click the {{Button|OK}} button.
+
10. Das Makro läuft jetzt. Fülle die Felder mit deinen Werten aus und klicke auf die Schaltfläche {{Button|OK}}.
  
 
[[Image:Macro Install HowTo 22.png|center]]
 
[[Image:Macro Install HowTo 22.png|center]]
 
{{Caption|align=center|The macro in action; fill in the information and press OK when ready}}
 
{{Caption|align=center|The macro in action; fill in the information and press OK when ready}}
  
11. This macro should return an error if no document is active; other macros open a new document if none exists.
+
11. Dieses Makro sollte einen Fehler zurückgeben, wenn kein Dokument aktiv ist; andere Makros öffnen ein neues Dokument, wenn keines existiert.
  
Create a new document with {{MenuCommand|File → [[Image:Document-new.svg|16px]] [[Std_New|New]]}}, and then repeat the previous steps to execute the macro.
+
<div class="mw-translate-fuzzy">
 +
Erstelle ein neues Dokument mit {{MenuCommand/de|Datei → [[Image:Document-new.svg|16px]] [[Std_New/de|Neu]]}}, und wiederhole dann die vorherigen Schritte, um das Makro auszuführen.
 +
</div>
  
 
[[Image:Macro Install HowTo 23.png|center|]]
 
[[Image:Macro Install HowTo 23.png|center|]]
{{Caption|align=center|The macro returning an error if no document is active}}
+
{{Caption|align=center|Das Makro gibt einen Fehler zurück, wenn kein Dokument aktiv ist}}
  
12. Once an active document is available, the macro runs and creates an object.
+
12. Sobald ein aktives Dokument verfügbar ist, wird das Makro ausgeführt und ein Objekt erstellt.
  
 
[[Image:Macro Install HowTo 24.png|center]]
 
[[Image:Macro Install HowTo 24.png|center]]
{{Caption|align=center|Object created by the macro}}
+
{{Caption|align=center|Vom Makro erzeugtes Objekt}}
  
13. You can open the macro in the editor again to run it or modify it. Go to {{MenuCommand|Macro → [[Image:Std DlgMacroExecuteDirect.svg|16px]] [[Std_DlgMacroExecuteDirect|Macros]]}}, select the macro and press {{Button|Edit}}.
+
<div class="mw-translate-fuzzy">
 +
13. Du kannst das Makro erneut im Editor öffnen, um es auszuführen oder zu modifizieren. Gehe zu {{MenuCommand/de|Makro → [[Image:Std DlgMacroExecuteDirect.svg|16px]] [[Std_DlgMacroExecuteDirect/de|Makros]]}}, wähle das Makro aus und drücke {{Button|Edit}}.
 +
</div>
  
 
[[Image:Macro Install HowTo 25.png|center]]
 
[[Image:Macro Install HowTo 25.png|center]]
{{Caption|align=center|Opening the macro in the editor}}
+
{{Caption|align=center|Öffnen des Makros im Editor}}
  
14. The macro can now be run with {{MenuCommand|Macro → [[Image:Macro-execute.svg|16px]] [[Std_DlgMacroExecute|Execute macro]]}}, or by clicking on the {{Button|[[Image:Macro-execute.svg|16px]] [[Std_DlgMacroExecute|Execute]]}} button in the toolbar.
+
<div class="mw-translate-fuzzy">
 +
14. Das Makro kann nun mit {{MenuCommand/de|Makro → [[Image:Macro-execute.svg|16px]] [[Std_DlgMacroExecute|Makro ausführen]]}}, oder durch Klicken auf die  {{Button|[[Image:Macro-execute.svg|16px]] [[Std_DlgMacroExecute/de|Ausführen]]}} Taste in der Werkzeugleiste.
 +
</div>
  
 
[[Image:Macro Install HowTo 26.png|center]]
 
[[Image:Macro Install HowTo 26.png|center]]
{{Caption|align=center|Running the macro that is loaded in the editor}}
+
{{Caption|align=center|Ausführen des im Editor geladenen Makros}}
  
 
</div>
 
</div>
Line 205: Line 228:
 
<div class="toccolours mw-collapsible mw-collapsed">
 
<div class="toccolours mw-collapsible mw-collapsed">
  
===Manual method 2. Add a macro file from a compressed .zip file===
+
===Manuelle Methode 2. Hinzufügen einer Makrodatei aus einer komprimierten .zip-Datei===
  
Some macros are too big that it's inconvenient to copy and paste them into the macro editor, or they cannot be hosted in the wiki. In this case, the code may be hosted somewhere else, in a Github repository, or in the [https://forum.freecadweb.org/ FreeCAD forum]. The code may also be compressed into a {{incode|.zip}} file, tarball {{incode|.tar.xz}}, or other type of archive if it contains several files. If the code is distributed in this way, the archive should be extracted and the files placed in the macros directory.
+
Einige Makros sind zu groß, als dass es unbequem ist, sie zu kopieren und in den Makro Editor einzufügen, oder sie können nicht im Wiki beherbergt werden. In diesem Fall kann der Code irgendwo anders beherbergt werden, in einem Github Repositorium oder im [https://forum.freecadweb.org/ FreeCAD Forum]. Der Code kann auch in eine {{incode|.zip}} Datei, einen Tarball  {{incode|.tar.xz}} oder eine andere Art von Archiv komprimiert werden, wenn es mehrere Dateien enthält. Wenn der Code auf diese Weise verteilt wird, sollte das Archiv extrahiert und die Dateien im Makro Verzeichnis abgelegt werden.
  
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
  
We will use [[Image:Text-x-python.png|24px]] [[Macro_screw_maker1_2|Macro screw maker]] as an example.
+
Wir werden [[Image:Text-x-python.png|24px]] [[Macro_screw_maker1_2|Makro Schrauben Ersteller]] als ein Beispiel.
  
1. Download the compressed code from the forum, [http://forum.freecadweb.org/viewtopic.php?f=22&t=6558#p52887 Screw Maker].
+
1. Lade den komprimierten Code aus dem Forum herunter, [http://forum.freecadweb.org/viewtopic.php?f=22&t=6558#p52887 Screw Maker].
  
You need to use a decompressor to get the internal files.
+
Du musst einen Dekompressor verwenden, um die internen Dateien zu erhalten.
* For Windows you can use an application like [http://www.7-zip.org/ 7-zip] or [http://www.kanmandet.dk/?p=37 L-Zarc] or [http://www.quickzip.org/quickzip51.html quickzip].
+
* Für Windows kannst Du ein Programm wie [http://www.7-zip.org/ 7-zip] oder [http://www.kanmandet.dk/?p=37 L-Zarc] oder [http://www.quickzip.org/quickzip51.html quickzip] verwenden.
* For Linux you can use a command from the terminal
+
* Für Linux kannst Du einen Befehl vom Terminal aus verwenden
  
 
{{Code|code=
 
{{Code|code=
Line 223: Line 246:
 
}}
 
}}
  
2. Download the compressed archive with the macro code to a local folder.
+
2. Lade das komprimierte Archiv mit dem Makrocode in einen lokalen Ordner herunter.
  
 
[[Image:Macro Install HowTo 01.png|center]]  
 
[[Image:Macro Install HowTo 01.png|center]]  
{{Caption|align=center|Downloading the compressed archive to a local directory}}
+
{{Caption|align=center|Herunterladen des komprimierten Archivs in ein lokales Verzeichnis}}
  
3. Decompress the file in the folder.
+
3. Entpacke die Datei in dem Ordner.
  
 
[[Image:Macro Install HowTo 02.png|center]]  
 
[[Image:Macro Install HowTo 02.png|center]]  
{{Caption|align=center|Decompressing the file in the folder}}
+
{{Caption|align=center|Entpacken der Datei im Ordner}}
  
4. The decompressor creates a new directory with the unpacked files.
+
4. Der Entpacker erstellt ein neues Verzeichnis mit den entpackten Dateien.
  
 
[[Image:Macro Install HowTo 03.png|center]]  
 
[[Image:Macro Install HowTo 03.png|center]]  
{{Caption|align=center|New directory created after unpacking the archive}}
+
{{Caption|align=center|Neues Verzeichnis nach dem Entpacken des Archivs erstellt}}
  
5. Go inside the new directory, and copy or cut the macro file.
+
5. Gehe  in das neue Verzeichnis und kopiere oder schneide die Makrodatei aus.
  
 
[[Image:Macro Install HowTo 04.png|center]]  
 
[[Image:Macro Install HowTo 04.png|center]]  
{{Caption|align=center|Entering the newly created directory with the decompressed macro file}}
+
{{Caption|align=center|Eingeben des neu erstellten Verzeichnisses mit der entpackten Makrodatei}}
  
6. Go to the macro directory and paste the file there.
+
6. Gehe in das Makroverzeichnis und füge die Datei dort ein.
  
 
[[Image:Macro Install HowTo 05.png|center]]  
 
[[Image:Macro Install HowTo 05.png|center]]  
{{Caption|align=center|Placing the macro file in the macro directory}}
+
{{Caption|align=center|Platzieren der Makrodatei im Makroverzeichnis}}
  
7. In FreeCAD, open the menu {{MenuCommand|Macro → [[Image:Std DlgMacroExecuteDirect.svg|16px]] [[Std_DlgMacroExecuteDirect|Macros]]}} to open the [[Std_DlgMacroExecuteDirect|Execute macro dialog]].
+
<div class="mw-translate-fuzzy">
 +
7. Öffne in FreeCAD das Menü {{MenuCommand/de|Makro → [[Image:Std DlgMacroExecuteDirect.svg|16px]] [[Std_DlgMacroExecuteDirect/de|Makros]]}}, um den [[Std_DlgMacroExecuteDirect/de|Makro Dialog ausführen]].
 +
</div>
  
 +
<div class="mw-translate-fuzzy">
 
[[Image:Macro Install HowTo 06.png|center]]
 
[[Image:Macro Install HowTo 06.png|center]]
{{Caption|align=center|Opening the execute macro dialog}}
+
{{Caption|align=center|Öffnen des Makroausführungsdialogs}}
 +
</div>
  
8. Select the new macro and press {{Button|Execute}}.
+
8. Wähle das neue Makro aus und drücke  {{Button|Ausführen}}.
  
 
[[Image:Macro Install HowTo 07.png|center]]
 
[[Image:Macro Install HowTo 07.png|center]]
{{Caption|align=center|Selecting the macro to run it}}
+
{{Caption|align=center|Auswählen des Makros zur Ausführung}}
  
9. The macro now runs. Select the desired options, and click the {{Button|Create}} button.
+
9. Das Makro läuft jetzt. Wähle die gewünschten Optionen aus und klicke auf die Schaltfläche {{Button|Erstellen}}.
  
 
[[Image:Macro Install HowTo 08.png|center|640px]]
 
[[Image:Macro Install HowTo 08.png|center|640px]]
{{Caption|align=center|The macro in action; select the desired options, and press Create when ready}}
+
{{Caption|align=center|Das Makro in Aktion; wähle die gewünschten Optionen und drücke Erstellen, wenn du bereit bist.}}
  
 
[[Image:Macro Install HowTo 30.png|center]]
 
[[Image:Macro Install HowTo 30.png|center]]
{{Caption|align=center|Object created by the macro}}
+
{{Caption|align=center|Vom Makro erzeugtes Objekt}}
  
 
</div>
 
</div>
 
</div>
 
</div>
  
== Execute a macro in command line ==
+
== Ausführen eines Makros in der Kommandozeile ==
  
 
<div class="toccolours mw-collapsible mw-collapsed">
 
<div class="toccolours mw-collapsible mw-collapsed">
  
Command line execute a macro (.FCMacro or .py)
+
Kommandozeile ein Makro ausführen (.FCMacro oder .py)
  
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
  
on Windows
+
unter Windows
  
 
{{Code|code=
 
{{Code|code=
Line 283: Line 310:
 
}}
 
}}
  
on Linux
+
unter Linux
  
 
{{Code|code=
 
{{Code|code=
Line 292: Line 319:
 
</div>
 
</div>
  
== Errors in macros ==
+
== Fehler in Makros ==
  
 
<div class="toccolours mw-collapsible mw-collapsed">
 
<div class="toccolours mw-collapsible mw-collapsed">
  
=== Indentation errors ===
+
=== Einrückungsfehler ===
  
The white space at the beginning of the lines (indentation) in the [[Python|Python]] programming language is very important, and an integral part of the code. An inappropriate space may cause the code to not run or present errors.
+
Der weiße Raum am Anfang der Zeilen (Einrückung) ist in der Programmiersprache [[Python/de|Python]] sehr wichtig und ein integraler Bestandteil des Codes. Ein ungeeignetes Leerzeichen kann dazu führen, dass der Code nicht läuft oder Fehler aufweist.
  
This section describes some errors that may be encountered when copying and pasting, and writing macro code.
+
Dieser Abschnitt beschreibt einige Fehler, die beim Kopieren und Einfügen sowie beim Schreiben von Makrocode auftreten können.
  
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
  
A typical indentation error looks like this:
+
Ein typischer Einrückungsfehler sieht wie folgt aus:
  
 
{{Code|code=
 
{{Code|code=
Line 310: Line 337:
 
}}
 
}}
  
==== Example 1 ====
+
==== Beispiel 1 ====
  
If the code lacks any indentation, the code won't work. Class ({{incode|class}}) and function definitions ({{incode|def()}}), as well as control structures ({{incode|if}}, {{incode|while}}, {{incode|for}}) should be followed by a block of indented code.
+
Wenn der Code keine Einrückung aufweist, wird der Code nicht funktionieren. Klassen  ({{incode|class}}) und Funktionsdefinitionen ({{incode|def()}}), sowie Kontrollstrukturen ({{incode|if}}, {{incode|while}}, {{incode|for}}) sollten von einem Block eingerückten Codes gefolgt werden.
  
This error is possible if the user doesn't copy the code correctly, and all spaces are accidentally removed.
+
Dieser Fehler ist möglich, wenn der Benutzer den Code nicht korrekt kopiert und alle Leerzeichen versehentlich entfernt wurden.
  
 
[[Image:Macro Install HowTo 09.png|center]]
 
[[Image:Macro Install HowTo 09.png|center]]
{{Caption|align=center|Python code that lacks any indentation; it will cause an error when it's run}}
+
{{Caption|align=center|Python Code, der keine Einrückung hat; er wird einen Fehler verursachen, wenn er ausgeführt wird}}
  
Indentation problem fixed.
+
Einrückungsproblem behoben.
  
 
[[Image:Macro Install HowTo 10.png|center]]
 
[[Image:Macro Install HowTo 10.png|center]]
{{Caption|align=center|Python code with the correct indentation}}
+
{{Caption|align=center|Python Code mit der richtigen Einrückung}}
  
If the code is selected, all lines should be highlighted all the way to the left edge, indicating that the lines are aligned.
+
Wenn der Code ausgewählt ist, sollten alle Zeilen bis zum linken Rand hervorgehoben werden, um anzuzeigen, dass die Zeilen ausgerichtet sind.
  
 
[[Image:Macro Install HowTo 11.png|center]]  
 
[[Image:Macro Install HowTo 11.png|center]]  
{{Caption|align=center|Python code highlighted, showing that all lines start at the left edge}}
+
{{Caption|align=center|Python Code hervorgehoben, was zeigt, dass alle Zeilen am linken Rand beginnen}}
  
==== Example 2 ====
+
==== Beispiel 2 ====
  
If an additional space is introduced at the beginning of all lines, the Python interpreter will fail and complain about unnecessary indentation. In this case, all lines need the initial space removed.
+
Wenn ein zusätzliches Leerzeichen am Anfang aller Zeilen eingefügt, wird der Python Interpreter versagen und sich über unnötige Einrückungen beschweren. In diesem Fall muss in alle Zeilen das anfangs Leerzeichen entfernt werden.
  
 
[[Image:Macro Install HowTo 12.png|center]]
 
[[Image:Macro Install HowTo 12.png|center]]
{{Caption|align=center|Python code with additional space on each line}}
+
{{Caption|align=center|Python Code mit zusätzlichem Leerzeichen in jeder Zeile}}
  
==== Example 3 ====
+
==== Beispiel 3 ====
  
Here the code has been copied from a forum thread by using the {{Button|Select all}} button. Apparently the selection is good.
+
Hier wurde der Code aus einem Foren Thema durch Verwendung  {{Button|Alles auswählen}} Schaltfläche kopiert. Anscheinend ist die Auswahl gut.
  
 
[[Image:Macro Install HowTo 14.png|center]]
 
[[Image:Macro Install HowTo 14.png|center]]
{{Caption|align=center|Python code copied from a forum}}
+
{{Caption|align=center|Python Code kopiert aus einem Forum}}
  
However, when the selection is pasted into the macro editor, undesirable indentation seems to appear.
+
Wenn die Auswahl jedoch in den Makro Editor eingefügt wird, scheint es zu einer unerwünschten Einrückung zu kommen.
  
 
[[Image:Macro Install HowTo 15.png|center]]
 
[[Image:Macro Install HowTo 15.png|center]]
{{Caption|align=center|Python code copied from a forum into the macro editor; unnecessary indentation is added}}
+
{{Caption|align=center|Python Code aus einem Forum in den Makro Editor kopiert; unnötige Einrückung wird hinzugefügt}}
  
 
In this case, the initial spaces need to be removed. This can be done with a specialized text editor to quickly decrease the indentation of the lines.
 
In this case, the initial spaces need to be removed. This can be done with a specialized text editor to quickly decrease the indentation of the lines.
  
In Windows, [http://notepad-plus-plus.org/ Notepad++] can perform selection with {{KEY|Alt}} + Mouse dragging, and then use {{MenuCommand|Edit Indent Decrease the indentation}}.
+
Unter Windows [http://notepad-plus-plus.org/ Notepad++] kann die Auswahl ausgeführt mit {{KEY|Alt}} + Maus ziehen und dann verwenden {{MenuCommand/de|Bearbeiten Einrücken Verringere die Einrückung}}.
  
 
[[Image:Macro Install HowTo 16.png|center]]
 
[[Image:Macro Install HowTo 16.png|center]]
{{Caption|align=center|Python code with the correct indentation}}
+
{{Caption|align=center|Python Code mit der korrekten Einrückung}}
  
==== Example 4 ====
+
==== Beispiel 4 ====
  
Here the selection also selects the line numbers in the code example. If this selection is pasted into the macro editor, it won't work. All line numbers need to be removed, and the spaces adjusted so that the Python code has the proper indentation.
+
Hier wählt die Auswahl auch die Zeilennummern im Codebeispiel aus. Wenn diese Auswahl in den Makro Editor eingefügt wird, funktioniert sie nicht. Es müssen alle Zeilennummern entfernt und die Leerzeichen so angepasst werden, dass der Python Code die richtige Einrückung hat.
  
 
[[Image:Macro_Install_HowTo_29.png|center]]
 
[[Image:Macro_Install_HowTo_29.png|center]]
{{Caption|align=center|Selection that also selects the line numbers; if this code is pasted into the macro editor, it won't work}}
+
{{Caption|align=center|Auswahl, die auch die Zeilennummern auswählt; wenn dieser Code in den Makro Editor eingefügt wird, wird es nicht funktionieren}}
  
==== Good code ====
+
==== Guter Code ====
  
 
[[Image:Macro Install HowTo 13.png|center]]
 
[[Image:Macro Install HowTo 13.png|center]]
{{Caption|align=center|Python code with the correct indentation}}
+
{{Caption|align=center|Python Code mit der richtigen Einrückung}}
  
 
</div>
 
</div>
Line 372: Line 399:
 
<div class="toccolours mw-collapsible mw-collapsed">
 
<div class="toccolours mw-collapsible mw-collapsed">
  
===No text output from macros===
+
===Keine Textausgabe aus Makros===
  
Macros may output information to the report view to detail what the code is doing when it is running.
+
Makros können Informationen in der Berichtsansicht ausgeben, um zu zeigen, was der Code während der Ausführung tut.
  
If no information is displayed, make sure the report view and [[Python|Python]] console are visible, and that the output is directed tot he report view.
+
Wenn keine Information angezeigt wird, stelle sicher, dass die Reportansicht und die [[Python/de|Python]] Konsole sichtbar sind und dass die Ausgabe auf die Berichtsansicht gerichtet ist.
  
 
<div class="mw-collapsible-content">
 
<div class="mw-collapsible-content">
  
==== Printing information ====
+
===== Druckinformationen =====
FreeCAD macros have two methods to print information to the report view.
+
FreeCAD Makros haben zwei Methoden, um Informationen in die Berichtsansicht zu drucken.
  
The FreeCAD functions
+
Die FreeCAD Funktionen
  
 
{{Code|code=
 
{{Code|code=
Line 391: Line 418:
 
}}
 
}}
  
The simple Python function
+
Die einfache Python Funktion
  
 
{{Code|code=
 
{{Code|code=
Line 397: Line 424:
 
}}
 
}}
  
==== Enabling the report view ====
+
==== Aktivieren der Berichtsansicht ====
To see the information displayed in the console you should:
+
Um die in der Konsole angezeigten Informationen zu sehen, solltest Du:
  
1. Go to the menu {{MenuCommand|View Panels}}.
+
1. Gehe zum Menü {{MenuCommand/de|Ansicht Paneele}}.
  
 
[[Image:Macro Install HowTo 31.png|center]]  
 
[[Image:Macro Install HowTo 31.png|center]]  
  
 
[[Image:Macro Install HowTo 32.png|center]]
 
[[Image:Macro Install HowTo 32.png|center]]
{{Caption|align=center|Making the panels visible in the menu View Panels}}
+
{{Caption|align=center|Sichtbarmachung der Panels im Menü Ansicht Paneele}}
  
2. Enable the {{incode|Report view}} and the {{incode|Python console}}.
+
2. Aktiviere die {{incode|Berichtansicht}} und die {{incode|Python Konsole}}.
  
 
[[Image:Macro Install HowTo 33.png|center]]
 
[[Image:Macro Install HowTo 33.png|center]]
{{Caption|align=center|Enabling the report view and the Python console}}
+
{{Caption|align=center|Aktivieren der Berichtsansicht und der Python Konsole}}
  
3. The panels are now visible, and commands like {{incode|FreeCAD.Console.PrintMessage()}} now print information that appears in the {{incode|Report view}}.
+
3. Die Bedienfelder sind jetzt sichtbar, und Befehle wie {{incode|FreeCAD.Console.PrintMessage()}} geben jetzt Informationen aus, die in der {{incode|Berichtansicht}} angezeigt werden.
  
 
[[Image:Macro Install HowTo 34.png|center]]  
 
[[Image:Macro Install HowTo 34.png|center]]  
{{Caption|align=center|FreeCAD main window with the Report view and the Python console}}
+
{{Caption|align=center|FreeCAD Hauptfenster mit der Berichtsansicht und der Python Konsole}}
  
==== Enabling the <tt>print()</tt> command ====
+
===== Aktivieren des Befehls <tt>print()</tt> ====
FreeCAD may need to be configured so the {{incode|print()}} function of [[Python|Python]] redirects its output correctly to the report view.
+
FreeCAD muss möglicherweise so konfiguriert werden, dass die Funktion {{incode|print()}} von [[Python/de|Python]] seine Ausgabe korrekt in die Berichtsansicht umleitet.
  
1. Go into the [[Preferences Editor|Preferences Editor]] with the menu {{MenuCommand|Edit Preferences}}.
+
1. Gehe in den  [[Preferences Editor/de|Einstellungs Editor]] mit dem Menü  {{MenuCommand/de|Bearbeiten Einstellungen}}.
  
 
[[Image:Macro Install HowTo 35.png|center]]
 
[[Image:Macro Install HowTo 35.png|center]]
{{Caption|align=center|Going into the preferences editor}}
+
{{Caption|align=center|In den Einstellungen Editor gehen}}
  
2. Go to {{MenuCommand|General}} section, and then {{MenuCommand|Output window → Python interpreter}}.
+
2. Gehe zum Abschnitt {{MenuCommand/de|Allgemein}}, und dann {{MenuCommand|Ausgabefenster → Python Interpreter}}.
  
 
[[Image:Macro Install HowTo 36.png|center]]
 
[[Image:Macro Install HowTo 36.png|center]]
{{Caption|align=center|Output window preferences}}
+
{{Caption|align=center|Ausgabefenster Einstellungen}}
  
3. Check both boxes:
+
3. Beide Kästchen ankreuzen:
  
* [[Image:Case_a_cocher_O.png|16px]] Redirect internal Python output to report view
+
* [[Image:Case_a_cocher_O.png|16px]] Interne Python Ausgabe in die Berichtsansicht umleiten
  
* [[Image:Case_a_cocher_O.png|16px]] Redirect internal Python errors to report view
+
* [[Image:Case_a_cocher_O.png|16px]] Umleiten interner Python Fehler in die Berichtsansicht
  
and then press the {{Button|OK}} button.
+
und drücke dann die {{Button|OK}} Schaltfläche.
  
 
[[Image:Macro Install HowTo 37.png|center]]
 
[[Image:Macro Install HowTo 37.png|center]]
{{Caption|align=center|Redirecting the Python output to the report view}}
+
{{Caption|align=center|Umleitung der Python-Ausgabe in die Berichtsansicht.}}
  
 
[[Image:Macro Install HowTo 38.png|center]]
 
[[Image:Macro Install HowTo 38.png|center]]
{{Caption|align=center|Python commands printing information to the report view}}
+
{{Caption|align=center|Python Befehle zum Drucken von Informationen in die Berichtsansicht.}}
 
</div>
 
</div>
 
</div>
 
</div>
 +
 +
{{Powerdocnavi{{#translation:}}}}
 +
[[Category:Developer Documentation{{#translation:}}]]
 +
[[Category:Python Code{{#translation:}}]]
 +
{{clear}}

Latest revision as of 19:29, 22 June 2020

Other languages:
Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎hrvatski • ‎italiano • ‎polski • ‎română • ‎svenska • ‎čeština • ‎русский

Base ExampleCommandModel.png Tutorial

Thema
Programmierung
Niveau
durchschnittliche Programmierer
Zeit zum Abschluss
Not provided
Autor
Mario52
FreeCAD version
Alle
Beispieldatei(en)
None


Beschreibung

Seit v0.17 ist es einfach, Makros mit Hilfe des Erweiterungsverwalter hinzuzufügen. Ein normaler Benutzer braucht nicht mehr zu tun, als dieses Werkzeug zu benutzen. Lies weiter, um weitere Informationen zur Installation von Makros zu erhalten.

Makros sind Befehlssequenzen, die zur Ausführung einer komplexen Zeichenoperation verwendet werden. Makros sind Python Skripte, d.h. sie sind Textdateien, die mit einem Texteditor geschrieben und bearbeitet werden können.

Während Python Skripte normalerweise die Erweiterung .py haben, sollten FreeCAD Makros die Erweiterung .FCMacro haben. Eine Sammlung von Makros, die von erfahrenen Anwendern geschrieben wurden, findest Du auf der Seite Makrozepte.

Siehe Einführung in Python, um mehr über die Programmiersprache Python zu erfahren, und dann Python Skript Tutorium und FreeCAD Skript Grundlagen, um das Schreiben von Makros zu erlernen.

Hier ist ein Video über Installieren von FreeCAD Makros in Ubuntu.

Das Makro Menü und die Werkzeugleiste

Menü

Neben den Werkzeugen in der Werkzeugleiste sind auch die folgenden Funktionen im Menü Makro verfügbar.

Makros Verzeichnis

Makros werden in einem bestimmten Ordner unter dem FreeCAD Benutzerverzeichnis erstellt. Dieses Verzeichnis kann im Makrodialog ausführen, oder im Einstellungseditor, über das Menü Bearbeiten → Einstellungen → Allgemein → Makro → Makro Aufnahme Einstellungen.

Heruntergeladene Makros sollten ebenfalls in diesem Verzeichnis abgelegt werden.

Standardverzeichnis

Makros können einfach kopiert werden in

$ROOT_DIR/

wobei $ROOT_DIR ein Verzeichnis der obersten Ebene ist, das von FreeCAD beim Start durchsucht wird.

Der $ROOT_DIR könnte ein systemweites Verzeichnis sein, in diesem Fall wird das Makro für alle Benutzer installiert.

  • Unter Linux ist es normalerweise /usr/share/freecad/
  • Unter Windows ist es normalerweise C:\Program Files\FreeCAD\
  • Unter Mac OSX ist es normalerweise /Applications/FreeCAD/

Der $ROOT_DIR könnte das Verzeichnis eines bestimmten Benutzers sein.

  • Unter Linux ist es normalerweise /home/username/.FreeCAD/
  • Unter Windows ist es normalerweise C:\Benutzername\Benutzername\Anwendungsdaten\FreeCAD\
  • Unter Mac OSX ist es normalerweise /Benutzer/Benutzername/Bibliothek/Einstellungen/FreeCAD/

Konfigurieren des Benutzerverzeichnisses

1. Öffne das Menü Makro → Std DlgMacroExecuteDirect.svg Makros, um den Makrodialog ausführen.

Dxf Importer Install 01.png

Opening the macro dialog

2. Setze den entsprechenden Nutzer Makros Standort.

  • Linux: normalerweise /home/username/.FreeCAD/
  • Windows: normalerweise C:\Users\username\AppData\Roaming\FreeCAD\
  • MacOS: normalerweise /Users/username/Library/Preferences/FreeCAD/
Dxf Importer Install 02.png

Setting of the macros directory


3. Navigiere zu diesem Verzeichnis auf deinem Computer.

  • Linux: Füge die Adresse in deinen Dateimanager ein, "Nautilus" oder andere. Eventuell musst du Ctrl+H drücken, um das versteckte Verzeichnis .FreeCAD/ sichtbar zu machen.
  • Windows: Füge die Adresse in dein "Datei Suchprogramm" ein und bestätige.
  • MacOS: Suche den Ordner im "Finder" oder füge die Adresse in ein "Datei Suchprogramm" ein; merke dir das file:/// Vorsatzzeichen im "Datei Suchprogramm" für eine Datei auf der Festplatte.
Dxf Importer Install 03.png

Accessing the macros directory in the operating system


4. Füge diesem Verzeichnis Makrodateien hinzu.

  • Linux: Lasse den Dateimanager geöffnet und setze ein Lesezeichen für den schnelleren Zugriff.
  • Windows: Lasse das Datei Suchprogramm geöffnet.
  • MacOS: Lasse entweder ein "Finder"-Fenster geöffnet, oder setze ein Lesezeichen für den Speicherort in deinem "Datei Suchprogramm", oder richte einen "Alias" ein, um darauf zu zeigen, oder ziehe den Ordner in die " Seitenleiste" des "Finders", so dass er von anderen Programmen, wie z.B. Texteditoren, verwendet werden kann.
Dxf Importer Install 04.png

Macros directory


Makros installieren

Automatische Methode

Ab FreeCAD 0.17 verwende den Zusatzmanager in Werkzeuge → Zusatzmanager, um ein Makro zu installieren, das in das FreeCAD-macros Repositorium aufgenommen wurde.

In früheren Versionen von FreeCAD konntest du zwei automatisierte Wege nutzen, um Makros und andere Addons zu installieren:

  • addons_installer.FCMacro: selbst ein Makro, dies war der Vorläufer des Zusatzmanagers, und wird im FreeCAD-addons Repositorium beherbergt. Bei Neuinstallationen von FreeCAD muss dieses Tool nicht verwendet werden.
  • freecad-pluginloader: ebenfalls ein Makro, es kann verwendet werden, um neue Komponenten in FreeCAD zu installieren. Es wird nicht mehr weiterentwickelt.

Der empfohlene Weg, Zusätze, d.h. externe Arbeitsbereiche und Makros zu installieren, ist der Zusatzmanager. Du kannst jedoch immer noch Makros mit den in den folgenden Abschnitten beschriebenen manuellen Methoden zu deinem System hinzufügen; dies ist nützlich, wenn du deinen eigenen Code entwickelst und testest.

Manuelle Methode 1. Kopiere den Code in den Makro Editor=

Für Makros, die relativ klein sind, 300 Zeilen oder weniger, kann der Code kopiert und direkt in den FreeCAD Makro-Editor eingefügt werden.

Wir werden Part Prism Apothem.svg Macro Apothem Based Prism GUI als ein Beispiel verwenden.

1. Gehe auf die Makro Wiki Seite, die unter Makro Rezepte aufgelistet sein sollte.

Wenn es ein benutzerdefiniertes Symbol gibt, lade es herunter; klicke mit der rechten Maustaste darauf und wähle Bild speichern unter...; platziere das Symbol im Makroverzeichnis. Dieses Symbol kann als Tastaturkürzel für das Makro in einer benutzerdefinierten Werkzeugleiste verwendet werden. Das Standardsymbol ist Text-x-python.png.

Macro Install HowTo 28.png

Downloading the icon from the macro page


2. Wähle auf der Makroseite den Code innerhalb der Abschnitte Skript oder Makro aus und kopiere ihn.

3. Öffne in FreeCad das Menü Makro → Std DlgMacroExecuteDirect.svg Makros, um den Makro Dialog ausführen.

Dxf Importer Install 01.png

Opening the execute macro dialog

4. Klicke Erstelle.

Macro Install HowTo 17.png

Creating a new macro


5. Gib den Makronamen ein, hier Macro_Apothem_Based_Prism_GUI, und drücke OK.

Macro Install HowTo 18.png

Entering the macro name


6. Der Makro Editor öffnet sich und zeigt den vollständigen Pfad des neuen Makros an.

Macro Install HowTo 19.png

The macro editor


7. Füge den Code in das Editorfenster ein und klicke dann auf das Kreuz auf der Registerkarte, um das Fenster zu schließen.

Macro Install HowTo 20.png

Closing the macro editor


8. Ein Fenster erscheint, das nach Bestätigung zum Speichern des Codes fragt; klicke auf Ja. Du kannst auch Ctrl+S verwenden, um die Datei zu speichern.

Starte FreeCAD neu, um das neue Makro korrekt zu registrieren.

Macro Install HowTo 27.png

Asking for confirmation to save the code


9. Öffne dann das Menü erneut, Makro → Std DlgMacroExecuteDirect.svg Makros, wähle das neue Makro aus und drücke Ausführen.

Macro Install HowTo 21.png

Selecting the macro to run it


10. Das Makro läuft jetzt. Fülle die Felder mit deinen Werten aus und klicke auf die Schaltfläche OK.

Macro Install HowTo 22.png

The macro in action; fill in the information and press OK when ready


11. Dieses Makro sollte einen Fehler zurückgeben, wenn kein Dokument aktiv ist; andere Makros öffnen ein neues Dokument, wenn keines existiert.

Erstelle ein neues Dokument mit Datei → Document-new.svg Neu, und wiederhole dann die vorherigen Schritte, um das Makro auszuführen.

Macro Install HowTo 23.png

Das Makro gibt einen Fehler zurück, wenn kein Dokument aktiv ist


12. Sobald ein aktives Dokument verfügbar ist, wird das Makro ausgeführt und ein Objekt erstellt.

Macro Install HowTo 24.png

Vom Makro erzeugtes Objekt


13. Du kannst das Makro erneut im Editor öffnen, um es auszuführen oder zu modifizieren. Gehe zu Makro → Std DlgMacroExecuteDirect.svg Makros, wähle das Makro aus und drücke Edit.

Macro Install HowTo 25.png

Öffnen des Makros im Editor


14. Das Makro kann nun mit Makro → Macro-execute.svg Makro ausführen, oder durch Klicken auf die Macro-execute.svg Ausführen Taste in der Werkzeugleiste.

Macro Install HowTo 26.png

Ausführen des im Editor geladenen Makros


Manuelle Methode 2. Hinzufügen einer Makrodatei aus einer komprimierten .zip-Datei

Einige Makros sind zu groß, als dass es unbequem ist, sie zu kopieren und in den Makro Editor einzufügen, oder sie können nicht im Wiki beherbergt werden. In diesem Fall kann der Code irgendwo anders beherbergt werden, in einem Github Repositorium oder im FreeCAD Forum. Der Code kann auch in eine .zip Datei, einen Tarball .tar.xz oder eine andere Art von Archiv komprimiert werden, wenn es mehrere Dateien enthält. Wenn der Code auf diese Weise verteilt wird, sollte das Archiv extrahiert und die Dateien im Makro Verzeichnis abgelegt werden.

Wir werden Text-x-python.png Makro Schrauben Ersteller als ein Beispiel.

1. Lade den komprimierten Code aus dem Forum herunter, Screw Maker.

Du musst einen Dekompressor verwenden, um die internen Dateien zu erhalten.

  • Für Windows kannst Du ein Programm wie 7-zip oder L-Zarc oder quickzip verwenden.
  • Für Linux kannst Du einen Befehl vom Terminal aus verwenden
unzip your_file.zip -d your_directory

2. Lade das komprimierte Archiv mit dem Makrocode in einen lokalen Ordner herunter.

Macro Install HowTo 01.png

Herunterladen des komprimierten Archivs in ein lokales Verzeichnis


3. Entpacke die Datei in dem Ordner.

Macro Install HowTo 02.png

Entpacken der Datei im Ordner


4. Der Entpacker erstellt ein neues Verzeichnis mit den entpackten Dateien.

Macro Install HowTo 03.png

Neues Verzeichnis nach dem Entpacken des Archivs erstellt


5. Gehe in das neue Verzeichnis und kopiere oder schneide die Makrodatei aus.

Macro Install HowTo 04.png

Eingeben des neu erstellten Verzeichnisses mit der entpackten Makrodatei


6. Gehe in das Makroverzeichnis und füge die Datei dort ein.

Macro Install HowTo 05.png

Platzieren der Makrodatei im Makroverzeichnis


7. Öffne in FreeCAD das Menü Makro → Std DlgMacroExecuteDirect.svg Makros, um den Makro Dialog ausführen.

Macro Install HowTo 06.png

Öffnen des Makroausführungsdialogs

8. Wähle das neue Makro aus und drücke Ausführen.

Macro Install HowTo 07.png

Auswählen des Makros zur Ausführung


9. Das Makro läuft jetzt. Wähle die gewünschten Optionen aus und klicke auf die Schaltfläche Erstellen.

Macro Install HowTo 08.png

Das Makro in Aktion; wähle die gewünschten Optionen und drücke Erstellen, wenn du bereit bist.


Macro Install HowTo 30.png

Vom Makro erzeugtes Objekt


Ausführen eines Makros in der Kommandozeile

Kommandozeile ein Makro ausführen (.FCMacro oder .py)

unter Windows

"C:\Program Files\FreeCAD\bin\FreeCAD.exe" "C:\Users\userName\AppData\Roaming\FreeCAD\Mod\WorkFeature\start_WF.FCMacro"

unter Linux

todo

Fehler in Makros

Einrückungsfehler

Der weiße Raum am Anfang der Zeilen (Einrückung) ist in der Programmiersprache Python sehr wichtig und ein integraler Bestandteil des Codes. Ein ungeeignetes Leerzeichen kann dazu führen, dass der Code nicht läuft oder Fehler aufweist.

Dieser Abschnitt beschreibt einige Fehler, die beim Kopieren und Einfügen sowie beim Schreiben von Makrocode auftreten können.

Ein typischer Einrückungsfehler sieht wie folgt aus:

<unknown exception traceback><type 'exceptions.IndentationError'>: ('expected an indented block', ('C:/Users/d/AppData/Roaming/FreeCAD/Macro_Apothem_Based_Prism_GUI.FCMacro', 21, 3, 'def priSm(self):\n'))

Beispiel 1

Wenn der Code keine Einrückung aufweist, wird der Code nicht funktionieren. Klassen (class) und Funktionsdefinitionen (def()), sowie Kontrollstrukturen (if, while, for) sollten von einem Block eingerückten Codes gefolgt werden.

Dieser Fehler ist möglich, wenn der Benutzer den Code nicht korrekt kopiert und alle Leerzeichen versehentlich entfernt wurden.

Macro Install HowTo 09.png

Python Code, der keine Einrückung hat; er wird einen Fehler verursachen, wenn er ausgeführt wird


Einrückungsproblem behoben.

Macro Install HowTo 10.png

Python Code mit der richtigen Einrückung


Wenn der Code ausgewählt ist, sollten alle Zeilen bis zum linken Rand hervorgehoben werden, um anzuzeigen, dass die Zeilen ausgerichtet sind.

Macro Install HowTo 11.png

Python Code hervorgehoben, was zeigt, dass alle Zeilen am linken Rand beginnen


Beispiel 2

Wenn ein zusätzliches Leerzeichen am Anfang aller Zeilen eingefügt, wird der Python Interpreter versagen und sich über unnötige Einrückungen beschweren. In diesem Fall muss in alle Zeilen das anfangs Leerzeichen entfernt werden.

Macro Install HowTo 12.png

Python Code mit zusätzlichem Leerzeichen in jeder Zeile


Beispiel 3

Hier wurde der Code aus einem Foren Thema durch Verwendung Alles auswählen Schaltfläche kopiert. Anscheinend ist die Auswahl gut.

Macro Install HowTo 14.png

Python Code kopiert aus einem Forum


Wenn die Auswahl jedoch in den Makro Editor eingefügt wird, scheint es zu einer unerwünschten Einrückung zu kommen.

Macro Install HowTo 15.png

Python Code aus einem Forum in den Makro Editor kopiert; unnötige Einrückung wird hinzugefügt


In this case, the initial spaces need to be removed. This can be done with a specialized text editor to quickly decrease the indentation of the lines.

Unter Windows Notepad++ kann die Auswahl ausgeführt mit Alt + Maus ziehen und dann verwenden Bearbeiten → Einrücken → Verringere die Einrückung.

Macro Install HowTo 16.png

Python Code mit der korrekten Einrückung


Beispiel 4

Hier wählt die Auswahl auch die Zeilennummern im Codebeispiel aus. Wenn diese Auswahl in den Makro Editor eingefügt wird, funktioniert sie nicht. Es müssen alle Zeilennummern entfernt und die Leerzeichen so angepasst werden, dass der Python Code die richtige Einrückung hat.

Macro Install HowTo 29.png

Auswahl, die auch die Zeilennummern auswählt; wenn dieser Code in den Makro Editor eingefügt wird, wird es nicht funktionieren


Guter Code

Macro Install HowTo 13.png

Python Code mit der richtigen Einrückung


Keine Textausgabe aus Makros

Makros können Informationen in der Berichtsansicht ausgeben, um zu zeigen, was der Code während der Ausführung tut.

Wenn keine Information angezeigt wird, stelle sicher, dass die Reportansicht und die Python Konsole sichtbar sind und dass die Ausgabe auf die Berichtsansicht gerichtet ist.

Druckinformationen

FreeCAD Makros haben zwei Methoden, um Informationen in die Berichtsansicht zu drucken.

Die FreeCAD Funktionen

FreeCAD.Console.PrintMessage("Hello World! \n")
FreeCAD.Console.PrintError("Hello World! \n")
FreeCAD.Console.PrintWarning("Hello World! \n")

Die einfache Python Funktion

print("Hello World!")

Aktivieren der Berichtsansicht

Um die in der Konsole angezeigten Informationen zu sehen, solltest Du:

1. Gehe zum Menü Ansicht → Paneele.

Macro Install HowTo 31.png
Macro Install HowTo 32.png

Sichtbarmachung der Panels im Menü Ansicht → Paneele


2. Aktiviere die Berichtansicht und die Python Konsole.

Macro Install HowTo 33.png

Aktivieren der Berichtsansicht und der Python Konsole


3. Die Bedienfelder sind jetzt sichtbar, und Befehle wie FreeCAD.Console.PrintMessage() geben jetzt Informationen aus, die in der Berichtansicht angezeigt werden.

Macro Install HowTo 34.png

FreeCAD Hauptfenster mit der Berichtsansicht und der Python Konsole


= Aktivieren des Befehls print()

FreeCAD muss möglicherweise so konfiguriert werden, dass die Funktion print() von Python seine Ausgabe korrekt in die Berichtsansicht umleitet.

1. Gehe in den Einstellungs Editor mit dem Menü Bearbeiten → Einstellungen.

Macro Install HowTo 35.png

In den Einstellungen Editor gehen


2. Gehe zum Abschnitt Allgemein, und dann Ausgabefenster → Python Interpreter.

Macro Install HowTo 36.png

Ausgabefenster Einstellungen


3. Beide Kästchen ankreuzen:

  • Case a cocher O.png Interne Python Ausgabe in die Berichtsansicht umleiten
  • Case a cocher O.png Umleiten interner Python Fehler in die Berichtsansicht

und drücke dann die OK Schaltfläche.

Macro Install HowTo 37.png

Umleitung der Python-Ausgabe in die Berichtsansicht.


Macro Install HowTo 38.png

Python Befehle zum Drucken von Informationen in die Berichtsansicht.