Feature list/de

Dies ist eine ausführliche, wenn auch nicht komplette Übersicht über die FreeCAD Implementierungen. Möchten Sie einen Blick in die Zukunft werfen, schauen Sie sich die Entwicklungs-Roadmap an. Für eine kleine Übersicht sind die Screenshots zu empfehlen.

Base application



 * FreeCAD ist multi-platform. Er läuft und verhält sich absolut gleich auf Windows, Linux und Mac OSX-Plattformen.


 * FreeCAD ist eine komplette GUI Anwendung. FreeCAD hat eine komplette grafische Benutzeroberfläche basiert auf dem berühmten Qt framework, mit einem 3D-Betrachter basierend auf Open Inventor, welches eine schnelle Darstellung von 3D-Szenen und eine sehr zugängliche Szenengraph Darstellung ermöglicht.


 * FreeCAD läuft auch als Kommandozeilen-Anwendung, mit geringem Speicherbedarf. Im Kommandozeilen-Modus läuft FreeCAD ohne seine Oberfläche, aber mit all seinen Geometrie-Tools. Es kann zum Beispiel als Server verwendet werden, um Inhalte für andere Anwendungen zu produzieren.


 * FreeCAD kann importiert werden als ein Python module, in andere Anwendungen, die Python-Skripte ausführen können, oder in einer Python-Konsole. Wie im Konsolen-Modus ist die Benutzeroberfläche zu FreeCAD nicht verfügbar, aber alle Geometrie-Tools sind zugänglich.


 * Plugin/Module framework für nachträgliches Laden von Funktionen/Daten-Typen. FreeCAD in eine Kernanwendung und Module aufgeteilt, die nur bei Bedarf geladen werden. Fast alle Werkzeuge und Geometrie-Typen sind in Modulen gespeichert. Module verhalten sich wie Plugins, und können einer bestehenden Installation von FreeCAD hinzugefügt oder entfernt werden.


 * Eingebautes scripting framework: FreeCAD verfügt über einen eingebauten Python interpreter, und eine API, die fast jeden Teil der Anwendung abdeckt, die Schnittstelle, die Geometrie und die Darstellung dieser Geometrie in dem 3D-Betrachter. Der Interpreter kann einzelne Befehle ausführen bis hin zu komplexen Skripten, in der Tat können sogar ganze Module komplett in Python programmiert werden.


 * Ein modularer MSI installer erlaubt eine flexible Installationen auf Windows-Systemen. Pakete für Ubuntu-Systeme werden ebenfalls weiter gepflegt.

Dokumenten Struktur



 * Undo/Redo framework: Alles kann Rückgängig/Wiederholt werden, mit Zugriff auf die Rückgängig-Stapel, so dass dies für mehrere Stufen auf einmal durchgeführt werden kann.


 * Transaction management: Der Rückgängig/Wiederhol-Stack speichert Dokumenten-Aktionen und nicht einzelne Maßnahmen, so dass jedes Instrument definieren kann, was genau rückgängig gemacht oder wiederholt werden muss.


 * Parametrisch assoziative Dokument-objekte: Alle Objekte in einem FreeCAD-Dokument können durch Parameter definiert werden. Diese Parameter können im laufenden Betrieb geändert und zu jeder Zeit neu berechnet werden. Die Beziehung zwischen den Objekten wird ebenfalls gespeichert, so dass die Abwandlung eines Objekts auch seine abhängigen Objekte ändert.


 * Compound (ZIP based) document save format: FreeCAD Dokumente mit .fcstd Endung können viele verschiedene Arten von Informationen enthalten, wie Geometrie, Skripte oder verkleinerte Symbole(Icons).

Benutzer Schnittstelle

 * Vollständig anpassbare/skriptfähige Grafische Benutzer Schnittstelle. Die Qt-basierte Benutzeroberfläche von FreeCAD ist vollständig erreichbar über den Python-Interpreter. Abgesehen von den einfachen Funktionen, die FreeCAD über Werkbänke bietet, ist das ganze Qt-Framework ebenfalls erreichbar, was Veränderungen aller Art an der GUI(GBS)ermöglicht, z.B. erstellen, hinzufügen, andocken, verändern oder entfernen von Werkzeugelementen(Widgets) und Werkzeugleisten.


 * Workbench Konzept: In der FreeCAD Schnittstelle, sind Werkzeuge in Werkbänke, sogenannte workbenches zusammengefasst. Dies ermöglicht nur die Werkzeuge anzuzeigen, die benötigt werden, um eine bestimmte Aufgabe zu erfüllen. Somit bleibt der Arbeitsbereich übersichtlich und ansprechend und die Anwendung kann weiterhin schnell laden und reagieren.


 * Eingebaute Python Konsole mit Syntax-Highlighting, Autovervollständigung und Klassen-Browser: Python-Befehle können direkt in FreeCAD eingegeben werden und geben sofort Ergebnisse wieder, erlaubt Script-schreibern, die Funktionalität ihrer Scripte "on the fly" zu testen, ermöglicht das Erkunden des Inhalts der Module und leichtes erlernen der FreeCAD-internen funktionen.


 * Spiegelung der Benutzerinteraktion auf der Konsole: Alles was der Benutzer in der FreeCAD Schnittstelle ausführt, passiert als Python-Code, der sich auf der Konsole anzeigt und in Makros aufgezeichnet werden kann.


 * Ausführliche Makroaufzeichnung & Bearbeitung: Die vom Benutzer erteilten Python-Befehle, zum Verändern der Schnittstelle können dann aufgezeichnet, wenn nötig bearbeitet und gespeichert werden, um sie später erneut zu verwenden.


 * Thumbnailer (Für den Moment NUR auf Linux systemen): Die FreeCAD Dokument Symbole zeigen den Inhalt der Datei in den meisten Datei-Manager-Anwendungen wie GNOMEs Nautilus.

Anwendungs-Spezifische Besonderheiten
Die Funktionen von FreeCAD sind in Module aufgeteilt, die jeweils zusammenhängen mit speziellen Datentypen und Anwendungen:

Meshes



 * Das Mesh Module behandelt 3D-meshes. It is intented primarily for import, healing and conversion of third-party generated mesh geometry into FreeCAD, and export of FreeCAD geometry into mesh formats. But FreeCAD itself also features much more advanced geometry types than meshes.


 * Primitive creation (box, sphere, cylinder, etc), offset (trivial or after Jung/Shin/Choi) or boolean operations (add, cut, intersect)


 * Import of the following formats: ASCII or binary STL (Stereo lithography format) (*.stl, *.ast), the OBJ format (*.obj), limited NASTRAN support (*.nas), Open Inventor meshes (*.iv), and FreeCAD native mesh kernel (*.bms)


 * Export of the following formats: ASCII or binary STL (Stereo lithography format) (*.stl, *.ast), the OBJ format (*.obj), limited NASTRAN support (*.nas, *.brl), VRML meshes (*.wrl), FreeCAD native mesh kernel (*.bms), mesh as Python module (*.py)


 * Testing and repairing tools for meshes: solid test, non-two-manifolds test, self-intersection test, hole filling and uniform orientation.


 * Extensive Python scripting API.

2D Drafting

 * Graphical creation of simple planar geometry like lines, wires, rectangles, arcs or circles in any plane of the 3D space


 * Annotations like texts or dimensions


 * Graphical modification operations like translation, rotation, scaling, mirroring, offset or shape conversion, in any plane of the 3D space


 * Import and Export of the following formats: Autodesk's Drawing Exchange Format (*.dxf), Open Cad Format (*.oca, *.gcad) e SVG (*.svg)

CAD



 * The Part Module deals with everything around CAD modeling and the CAD data structures. The CAD functionality is under heavy development (see the PartDesign_project and Assembly_project in the Development_roadmap). The Part Module works with high-level Open CASCADE geometry.


 * Parametric primitive shapes like box, sphere, cylinder, cone or torus.


 * Topological components like vertices, edges, wires and planes (via python scripting).


 * Modeling with straight or revolution extrusions, sections and fillets.


 * Boolean operations like union, difference and intersection.


 * Extensive Python scripting API.


 * Import and Export of the following formats: STEP parts and assemblies (*.stp,*.step), IGES models (*.igs, *.iges) and BRep (*.brp), the native format of our Open CASCADE CAD kernel.

Raytracing

 * The Raytracing Module permits the export of FreeCAD geometry to external renderers for generation of high-quality images. Currently, the only supported render engine is POV-Ray. The module currently permits the creation of a render sheet, and adding geometry to that render sheet for export to a POV-Ray file.

Drawing

 * The Drawing Module allows to export projected views of your 3D geometry to a 2D SVG document. It allows the creation of a 2D sheet with an existing svg template, and the insertion of projected views of your geometry in that sheet. Then the sheet can be saved as a SVG file.

CAM

 * The Cam Module is dedicated to mechanical machining like milling. This module is at the very beginning and at the moment mostly dedicated to Incremental Sheet Forming. Although there are some algorithms for toolpath planing they are not usable for the end-user at the moment.