Python-Konsole
Einleitung
Die Python-Konsole ist ein Feld, das Teil der FreeCAD-Benutzerschnittstelle ist. Es führt eine Instanz des Python-Interpreters aus, mit dem FreeCAD-Prozesse gesteuert sowie Objekte und deren Eigenschaften erstellt und geändert werden können.
Sie kann über den Menüeintrag Ansicht → Fenster → Python-Konsole eingeblendet werden.
Die Python-Konsole in FreeCAD verfügt über eine grundlegende Syntaxhervorhebung, die es ermöglicht, mit verschiedenen Stilen und Farben, Kommentaren, Zeichenketten, numerischen Werten, eingebauten Funktionen, gedruckter Textausgabe und Trennzeichen wie Klammern und Kommata zu unterscheiden. Diese Eigenschaften der Konsole können im Voreinstellungseditor konfiguriert werden.
Die Python Konsole zeigt Meldungen an, wenn FreeCAD gerade gestartet wurde.
Skripten
Für absolute Anfänger, siehe: Einführung in Python, und Python Tutorium Skripten.
Siehe auch: Grundlagen der Skripterstellung in FreeCAD und Geskriptete Objekte.
Die Python Konsole kann grundlegende Code Vervollständigung durchführen, wenn ein Punkt nach einem Objekt steht; sie zeigt öffentliche Methoden und Attribute (Variablen) des aktuellen Objekts (Klasse), zum Beispiel obj.
Die Konsole ist auch in der Lage, den Dokumentationsstring einer bestimmten Funktion anzuzeigen, wenn die öffnende Klammer geschrieben wird, z.B. function(
Beispiel Python-Code, der Objekte in der 3D-Ansicht erzeugt.
Die FreeCAD Initialisierungsskripte laden automatisch einige Module und definieren einige Aliase. In der Python Konsole stehen diese daher zur Verfügung
App = FreeCAD
Gui = FreeCADGui
Daher sind diese gleichwertig
App.newDocument()
FreeCAD.newDocument()
Hinweis: diese vorinstallierten Module und Aliase sind nur über die in das FreeCAD Programm eingebettete Python Konsole verfügbar. Wenn Du FreeCAD als Bibliothek in einem externen Programm verwendest, musst Du daran denken, die Module FreeCAD und FreeCADGui zu laden und die notwendigen Aliase zu definieren, wenn Du möchtest.
Kontextmenü
Ein Rechtsklick auf die Python-Konsole öffnet ein Kontextmenü mit den folgenden Befehlen:
- Kopieren: Speichert den markierten Text in der Zwischenablage zum späteren Einfügen; er ist deaktiviert, wenn nichts markiert ist.
- Befehle kopieren: Speichert den markierten Befehl in der Zwischenablage zum späteren Einfügen; er ist deaktiviert, wenn nichts markiert ist.
- Verlauf kopieren: Kopiert den gesamten Verlauf der in dieser Sitzung eingegebenen Python-Befehle.
- Verlauf speichern unter…: Speichert den gesamten Verlauf der in dieser Sitzung eingegebenen Python Befehle in eine Textdatei.
- Verlauf speichern: 'in Arbeit'.
- Einfügen: Fügt zuvor kopierten Text aus der Zwischenablage in die Python-Konsole ein.
- Alles auswählen: Wählt den gesamten Text in der Python-Konsole aus.
- Konsole leeren: Löscht alle in der Python Konsole eingegebenen Befehle. Dies ist nützlich, wenn die Python-Konsole voll von Meldungen und zuvor eingegebenen Befehlen ist, die beim Testen einer neuen Funktion ablenken könnten. Dies dient nur der Übersicht, da dieser Befehl weder vorhandene Variablen noch die importierten Module in der Sitzung löscht.
- Dateinamen einfügen…: Öffnet einen Dialog, um nach einer Datei im System zu suchen, dann fügt es den vollständigen Pfad der Datei ein. Dies ist nützlich, um Funktionen zu testen, die eine Eingabedatei verarbeiten, ohne den gesamten Namen in die Konsole schreiben zu müssen, was fehleranfällig ist. Dieser Befehl führt die Datei nicht aus und importiert sie nicht als Python-Modul, sondern gibt nur den vollständigen Pfad der Datei zurück.
- Zeilenumbruch: Umbricht sehr lange Zeilen, die die Breite der Python-Konsole überschreiten.
Hinweise
- Es ist möglich in der Python-Konsole durch die API zu scrollen. Beispiel:
- In der Konsole tippt man:
FreeCAD. - Ein Dialogfenster zur Auswahl optionaler Klassen oder Funktionen erscheint.
- Beim Scrollen durch die Liste können die Beschreibungen jeder Klasse bzw. Funktion gelesen werden.
- Wird eine Funktion ausgewählt und mit einem
.ergänzt, können die Schritte 2 und 3 wiederholt werden, um tiefer in die API vorzudringen.
- In der Konsole tippt man:
- Tab-/Wortergänzung wird unterstützt, wenn das Tastaturkürzel Ctrl+Space verwendet wird.
- Preferences Editor, Interface Customization
- Main window: Standard menu, Main view area, 3D View, Combo view (Tree View, Task Panel, Property View), Selection view, Report View, Python console, Status Bar, DAG View, Workbench Selector
- Auxiliary windows: Scene inspector, Dependency graph
- File: New Document, Open, Open Recent, Close, Close All, Save, Save As, Save Copy, Save All, Revert, Import, Export,Merge Document, Document Information, Print, Print Preview, Export PDF, Exit
- Edit: Undo, Redo, Cut, Copy, Paste, Duplicate Object, Recompute, Box Selection, Box Element Selection, Select All, Delete, Send to Python Console, Placement, Transform, Align To, Toggle Edit Mode, Properties, Edit Mode, Preferences
- View:
- Miscellaneous: New 3D View, Orthographic View, Perspective View, Fullscreen, Bounding Box, Toggle Axis Cross, Clipping View, Texture Mapping, Toggle Navigation/Edit Mode, Material, Appearance, Random Color, Appearance per Face, Toggle Transparency, Workbench, Status Bar
- Standard Views: Fit All, Fit Selection, Align to Selection, Isometric, Dimetric, Trimetric, Home, Front, Top, Right, Rear, Bottom, Left, Rotate Left, Rotate Right, Store Working View, Recall Working View
- Freeze Display: Save Views, Load Views, Freeze View, Clear Views
- Draw Style: As Is, Points, Wireframe, Hidden Line, No Shading, Shaded, Flat Lines
- Stereo: Stereo Red/Cyan, Stereo Quad Buffer, Stereo Interleaved Rows, Stereo Interleaved Columns, Stereo Off, Issue Camera Position
- Zoom: Zoom In, Zoom Out, Box Zoom
- Document Window: Docked, Undocked, Fullscreen
- Visibility: Toggle Visibility, Show Selection, Hide Selection, Select Visible Objects, Toggle All Objects, Show All Objects, Hide All Objects, Toggle Selectability
- Toolbars: File, Edit, Clipboard, Workbench, Macro, View, Individual Views, Structure, Help, Lock Toolbars
- Panels: Tree View, Property View, Model, Selection View, Python Console, Report View, Tasks, DAG View
- Overlay Docked Panel: Toggle Overlay for All Panels, Toggle Transparent Panels, Toggle Overlay, Toggle Transparent Mode, Bypass Mouse Events in Overlay Panels, Toggle Left, Toggle Right, Toggle Top, Toggle Bottom
- Link Navigation: Go to Linked Object, Go to Deepest Linked Object, Select All Links
- Tree View Actions: Sync View, Sync Selection, Sync Placement, Preselection, Record Selection, Single Document, Multi Document, Collapse/Expand, Initiate Dragging, Go to Selection, Selection Back, Selection Forward
- Tools: Addon Manager, Measure, Clarify Selection, Quick Measure, Units Converter, Load Image, Save Image, Text Document, View Turntable, Scene Inspector, Dependency Graph, Export Dependency Graph, Document Utility, Edit Parameters, Customize
- Macro: Record Macro, Macros, Recent Macros, Execute Macro, Attach to Remote Debugger, Debug Macro, Stop Debugging, Step Over, Step Into, Toggle Breakpoint
- Help: What's This, Start Page, Users Documentation, FreeCAD Forum, Report an Issue, Restart in Safe Mode, Developers Handbook, Python Modules Documentation, FreeCAD Website, Donate to FreeCAD, About FreeCAD
- Additional:
- Miscellaneous: New Part, New Group, Variable Set, Link Group, Select All Instances, Toggle Freeze
- Datums: Coordinate System, Datum Plane, Datum Line, Datum Point
- Link Actions: Make Link, Make Sub-Link, Replace With Link, Unlink, Import Link, Import All Links
- Expression Actions: Copy Selected, Copy Active Document, Copy All Documents, Paste
- Selection Filter: Vertex Selection, Edge Selection, Face Selection, No Selection Filters
- Erste Schritte
- Installation: Herunterladen, Windows, Linux, Mac, Zusätzliche Komponenten, Docker, AppImage, Ubuntu Snap
- Grundlagen: Über FreeCAD, Graphische Oberfläche, Mausbedienung, Auswahlmethoden, Objektname, Voreinstellungseditor, Arbeitsbereiche, Dokumentstruktur, Objekteigenschaften, FreeCAD unterstützen, Spenden
- Hilfe: Anleitungen, Videoanleitungen
- Arbeitsbereiche: Std Base, Arch, Assembly, BIM, CAM, Draft, FEM, Inspection, Material, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework