PythonOCC/de: Difference between revisions

From FreeCAD Documentation
(Created page with "[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 andere...")
 
(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:")
 
(29 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, on the other hand, since it provides you access to all of OCC classes and functions, is very complex, but also very powerful. It is therefore a very fine addition to FreeCAD. When you are limited by FreeCAD's available OCC functionality in your python scripts, it's time to load pythonOCC.
== 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.
Currently in the Part module we have the methods: '''Part.__toPythonOCC__()''' and '''Part.__fromPythonOCC__()''' to exchange TopoDS_Shape entities to/from pythonOCC. This allows to use the full power of OCC in python (using pythonocc) and then put the resulting shapes back to FreeCAD.


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