PythonOCC/de: Difference between revisions

From FreeCAD Documentation
(Created page with "Derzeit haben wir im Part Arbeitsbereich die Methoden: '''Part.__toPythonOCC__()''' und '''Part.__fromPythonOCC__()'''', um TopoDS_Shape Entitäten zu/von PythonOCC auszutausc...")
(Created page with "PythonOCC kann man auch selbst kompilieren (siehe [https://github.com/tpaviot/pythonocc-core/blob/master/INSTALL.md instructions]). Hierunter findet man den Ablauf für Debian/Ubuntu, der die Opencascade-Pakete der Distribution verwendet:")
 
(27 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<languages/>
<languages/>
[http://www.pythonocc.org/ PythonOCC] ist ein Projekt, das darauf abzielt, den gesamten Funktionsumfang von OpenCasCADe in ein Python Modul zu integrieren. Dies ist ein anderer Ansatz als FreeCAD, bei dem nur bestimmte Komponenten von OpenCasCade verwendet werden, was zu einer wesentlich einfacheren Struktur führt.


<span id="Description"></span>
PythonOCC hingegen ist sehr komplex, aber auch sehr leistungsfähig, da es Dir Zugriff auf alle OCC Klassen und -Funktionen bietet. Es ist daher eine sehr gute Ergänzung zu FreeCAD. Wenn Du durch die verfügbare OCC Funktionalität von FreeCAD in Deinen Python Skripten eingeschränkt bist, ist es an der Zeit, pythonOCC zu laden.
== Beschreibung ==


[[PythonOCC/de|PythonOCC]] ist ein Projekt, das darauf abzielt, den gesamten Funktionsumfang der [[OpenCASCADE/de|OpenCASCADE-Technology]](OCCT)-Funktionen durch das [[Python/de|Python]]-Modul bereitzustellen. Dies ist ein anderer Ansatz als der von FreeCAD, bei dem nur bestimmte Komponenten von OCCT über den Arbeitsbereich [[Part_Workbench/de|Part]] bereitgestellt werden.
Derzeit haben wir im Part Arbeitsbereich die Methoden: '''Part.__toPythonOCC__()''' und '''Part.__fromPythonOCC__()'''', um TopoDS_Shape Entitäten zu/von PythonOCC auszutauschen. Dies ermöglicht es, die volle Leistung von OCC in Python (unter Verwendung von Pythonocc) zu nutzen und die resultierenden Shapes dann wieder in FreeCAD einzubinden.


PythonOCC hingegen bietet Zugriff auf alle OCCT Klassen und Funktionen, ist also komplex, aber auch sehr mächtig. Wenn du also durch die OCCT Funktionalität von FreeCAD eingeschränkt bist, ist die Verwendung von {{incode|OCC}} eine gute Alternative.
[[Category:Hubs]]
[[Category:Poweruser_Documentation]]


<span id="Usage"></span>
== Anwendung ==

Der Arbeitsbereich [[Part_Workbench/de|Part]] enthält die Methoden {{incode|Part.__toPythonOCC__()}} und {{incode|Part.__fromPythonOCC__()}} zum Austausch von {{incode|TopoDS_Shape}}([[Part_TopoShape/de|Part TopoForm]])-Dateneinheiten zu und von PythonOCC. Diese Methoden ermöglichen es, die volle Leistung von OCCT in Python zu nutzen und die resultierenden Formen dann wieder in FreeCAD-Objekte einzufügen.

PythonOCC wird intern vom [[Arch_IFC/de|IFC]]
Betrachter verwendet, der in den Bibliotheken [[IfcOpenShell/de|IfcOpenShell]] enthalten ist. IfcOpenShell wird zum Lesen und Schreiben von [[Arch_IFC/de|IFC]] Dokumenten mit FreeCAD verwendet. PythonOCC wird nur benötigt, um den integrierten Betrachter von IfcOpenShell zu starten, ansonsten ist es nicht notwendig.

<span id="Installation"></span>
== Einrichtung ==

PythonOCC muss aus den Quellen kompiliert werden. Dazu benötigst du die entsprechenden Entwicklungsdateien für [[OpenCASCADE/de|OpenCASCADE Technologie]]. (OCCT) und SWIG. Die ältere Version von PythonOCC war dazu gedacht, OCE 0.18, die Gemeinschaftsausgabe von OCCT 6.9.x, die jetzt nicht mehr gewartet wird, zu umhüllen. Die neueste Version von PythonOCC soll nun mit der neuen, offiziellen Version OCCT 7.4 zusammenarbeiten.

Zusammen mit OCCT 7.4 erfordert PythonOCC relativ neue Abhängigkeiten wie Python 3.7, CMake 3.12 und SWIG 3.0.11. Python 2 wird nicht mehr unterstützt.

Es ist auch möglich, vorkompilierte PythonOCC Bibliotheken mit [[Conda/de|Conda]] zu installieren. Weitere Informationen und Kompilierungsanweisungen findest du im Repositorium des Hauptprojekts, [https://github.com/tpaviot/pythonocc-core tpaviot/pythonocc-core].

<span id="Compilation"></span>
== Kompilieren ==

PythonOCC kann man auch selbst kompilieren (siehe [https://github.com/tpaviot/pythonocc-core/blob/master/INSTALL.md instructions]). Hierunter findet man den Ablauf für Debian/Ubuntu, der die Opencascade-Pakete der Distribution verwendet:

<pre>
git clone git://github.com/tpaviot/pythonocc-core.git pythonocc
cd pythonocc
mkdir build
cd build
cmake -DOCE_INCLUDE_PATH=/usr/include/opencascade -DOCE_LIB_PATH=/usr/lib/x86_64-linux-gnu ..
make
</pre>

<span id="More_information"></span>
== Weitere Informationen ==

* Projektseite: [http://www.pythonocc.org/ pythonocc.org]
* Neuere Version kompatibel mit OCCT 7.4, [https://github.com/tpaviot/pythonocc-core tpaviot/pythonocc-core].
* Ältere Version kompatibel mit OCE 0.18, die Gemeinschaftsausgabe von OCCT 6.9.x, [https://github.com/tpaviot/pythonocc tpaviot/pythonocc].
* [https://forum.freecadweb.org/viewtopic.php?f=39&t=33254 IfcPlusPlus kompiliert unter Gentoo - Fragen und Alternativen?]

{{Powerdocnavi{{#translation:}}}}
[[Category:Developer Documentation{{#translation:}}]]
[[Category:Python Code{{#translation:}}]]
{{clear}}
{{clear}}

Latest revision as of 12:32, 1 April 2023

Beschreibung

PythonOCC ist ein Projekt, das darauf abzielt, den gesamten Funktionsumfang der OpenCASCADE-Technology(OCCT)-Funktionen durch das Python-Modul bereitzustellen. Dies ist ein anderer Ansatz als der von FreeCAD, bei dem nur bestimmte Komponenten von OCCT über den Arbeitsbereich Part bereitgestellt werden.

PythonOCC hingegen bietet Zugriff auf alle OCCT Klassen und Funktionen, ist also komplex, aber auch sehr mächtig. Wenn du also durch die OCCT Funktionalität von FreeCAD eingeschränkt bist, ist die Verwendung von OCC eine gute Alternative.

Anwendung

Der Arbeitsbereich Part enthält die Methoden Part.__toPythonOCC__() und Part.__fromPythonOCC__() zum Austausch von TopoDS_Shape(Part TopoForm)-Dateneinheiten zu und von PythonOCC. Diese Methoden ermöglichen es, die volle Leistung von OCCT in Python zu nutzen und die resultierenden Formen dann wieder in FreeCAD-Objekte einzufügen.

PythonOCC wird intern vom IFC Betrachter verwendet, der in den Bibliotheken IfcOpenShell enthalten ist. IfcOpenShell wird zum Lesen und Schreiben von IFC Dokumenten mit FreeCAD verwendet. PythonOCC wird nur benötigt, um den integrierten Betrachter von IfcOpenShell zu starten, ansonsten ist es nicht notwendig.

Einrichtung

PythonOCC muss aus den Quellen kompiliert werden. Dazu benötigst du die entsprechenden Entwicklungsdateien für OpenCASCADE Technologie. (OCCT) und SWIG. Die ältere Version von PythonOCC war dazu gedacht, OCE 0.18, die Gemeinschaftsausgabe von OCCT 6.9.x, die jetzt nicht mehr gewartet wird, zu umhüllen. Die neueste Version von PythonOCC soll nun mit der neuen, offiziellen Version OCCT 7.4 zusammenarbeiten.

Zusammen mit OCCT 7.4 erfordert PythonOCC relativ neue Abhängigkeiten wie Python 3.7, CMake 3.12 und SWIG 3.0.11. Python 2 wird nicht mehr unterstützt.

Es ist auch möglich, vorkompilierte PythonOCC Bibliotheken mit Conda zu installieren. Weitere Informationen und Kompilierungsanweisungen findest du im Repositorium des Hauptprojekts, tpaviot/pythonocc-core.

Kompilieren

PythonOCC kann man auch selbst kompilieren (siehe instructions). Hierunter findet man den Ablauf für Debian/Ubuntu, der die Opencascade-Pakete der Distribution verwendet:

git clone git://github.com/tpaviot/pythonocc-core.git pythonocc
cd pythonocc
mkdir build
cd build
cmake -DOCE_INCLUDE_PATH=/usr/include/opencascade -DOCE_LIB_PATH=/usr/lib/x86_64-linux-gnu ..
make

Weitere Informationen