How to install macros/de: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
No edit summary
Line 8: Line 8:
}}
}}


<div class="mw-translate-fuzzy">
==Beschreibung==
==Beschreibung==
Diese Seite zeigt dir, wie du FreeCAD [[macros/de|Makros]] installieren und benutzen kannst.
</div>


Since v0.17 it is easy to add macros by using the [[Std_AddonMgr|Addon Manager]]. A regular user doesn't need to do more than use this tool. Keep reading for more information regarding installation of [[macros|macros]].
Since v0.17 it is easy to add macros by using the [[Std_AddonMgr|Addon Manager]]. A regular user doesn't need to do more than use this tool. Keep reading for more information regarding installation of [[macros|macros]].

Revision as of 22:18, 21 May 2020

Tutorium
Thema
Programmierung
Niveau
durchschnittliche Programmierer
Zeit zum Abschluss
Not provided
Autoren
Mario52
FreeCAD-Version
Alle
Beispieldateien
None
Siehe auch
None

Beschreibung

Since v0.17 it is easy to add macros by using the Addon Manager. A regular user doesn't need to do more than use this tool. Keep reading for more information regarding installation of macros.

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

Werkzeugleiste

Menü

Neben den Werkzeugen in der Werkzeugleiste sind auch die folgenden Funktionen im Menü Template:MenuCommand/de 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ü Template:MenuCommand/de.

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ü Template:MenuCommand/de, um den Makrodialog ausführen.

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/

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.

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.

Macros directory

Makros installieren

Automatische Methode

Ab FreeCAD 0.17 verwende den Zusatzmanager in Template:MenuCommand/de, 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 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 .

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ü Template:MenuCommand/de, um den Makro Dialog ausführen.

Opening the execute macro dialog

4. Klicke Erstelle.

Creating a new macro

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

Entering the macro name

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

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.

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.

Asking for confirmation to save the code

9. Öffne dann das Menü erneut, Template:MenuCommand/de, wähle das neue Makro aus und drücke Ausführen.

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.

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 Template:MenuCommand/de, und wiederhole dann die vorherigen Schritte, um das Makro auszuführen.

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.

Vom Makro erzeugtes Objekt

13. Du kannst das Makro erneut im Editor öffnen, um es auszuführen oder zu modifizieren. Gehe zu Template:MenuCommand/de, wähle das Makro aus und drücke Edit.

Öffnen des Makros im Editor

14. Das Makro kann nun mit Template:MenuCommand/de, oder durch Klicken auf die File:Macro-execute.svg Ausführen Taste in der Werkzeugleiste.

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 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.

Herunterladen des komprimierten Archivs in ein lokales Verzeichnis

3. Entpacke die Datei in dem Ordner.

Entpacken der Datei im Ordner

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

Neues Verzeichnis nach dem Entpacken des Archivs erstellt

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

Eingeben des neu erstellten Verzeichnisses mit der entpackten Makrodatei

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

Platzieren der Makrodatei im Makroverzeichnis

7. Öffne in FreeCAD das Menü Template:MenuCommand/de, um den Makro Dialog ausführen.

Öffnen des Makroausführungsdialogs

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

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.

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

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.

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

Einrückungsproblem behoben.

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.

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.

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.

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.

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 Template:MenuCommand/de.

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.

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

Guter Code

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ü Template:MenuCommand/de.

Sichtbarmachung der Panels im Menü Ansicht → Paneele

2. Aktiviere die Berichtansicht und die Python Konsole.

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.

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ü Template:MenuCommand/de.

In den Einstellungen Editor gehen

2. Gehe zum Abschnitt Template:MenuCommand/de, und dann Ausgabefenster → Python Interpreter.

Ausgabefenster Einstellungen

3. Beide Kästchen ankreuzen:

  • Interne Python Ausgabe in die Berichtsansicht umleiten
  • Umleiten interner Python Fehler in die Berichtsansicht

und drücke dann die OK Schaltfläche.

Umleitung der Python-Ausgabe in die Berichtsansicht.

Python Befehle zum Drucken von Informationen in die Berichtsansicht.