Arch OBJ/de: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
Line 62: Line 62:




{{Docnav/de
<div class="mw-translate-fuzzy">
{{docnav/de
|[[Arch_DAE/de|DAE]]
|[[Arch_DAE/de|DAE]]
|[[Arch_JSON/de|JSON]]
|[[Arch_JSON/de|JSON]]
|[[Arch_Workbench/de|Arch-Arbeitsbereich]]
|[[Arch_Workbench/de|Arch]]
|IconL=
|IconR=
|IconC=Workbench_Arch.svg
}}
}}
</div>


{{Arch Tools navi{{#translation:}}}}
{{Arch Tools navi{{#translation:}}}}

Revision as of 16:48, 29 October 2023

Beschreibung

Zusätzlich zur Standard-FreeCAD OBJ-Exportfunktion hat das Arch-Modul eine alternative Exportfunktion, die nebeneinander liegende Flächen als vollständige (whole) Flächen exportiert, anstatt als dreiecksbasierte Formteil-Objekte, wie es die Standard-Exportfunktion tut.

Exportieren ohne GUI

Exportieren ohne die grafische Benutzeroberfläche ist auf der Kommandozeile nur mit dem Mesh-Arbeitsbereich-Exporter möglich.

In diesem Beispiel wird eine STEP-Datei importiert, die Farben der Form werden gespeichert, dann ein Polygonnetz daraus erstellt, die Farben des Originalobjekts auf die Flächen des neuen Netzes angewendet, das dann im OBJ-Format exportiert wird. Weil dies mit dem Mesh-Arbeitsbereich passiert, ist das Ergebnis ein trianguliertes Netz.

import Mesh
import MeshPart
import Import

data = Import.open("example.stp")
shape = data[0][0].Shape
shape_colors = data[0][1]

mesh = MeshPart.meshFromShape(Shape=shape, LinearDeflection=0.1, Segments=True)

face_colors = [(0, 0, 0)] * mesh.CountFacets

for i in range(mesh.countSegments()):
    color = shape_colors[i]
    segm = mesh.getSegment(i)
    for j in segm:
        face_colors[j] = color

mesh.write(Filename="new_example.obj", Material=face_colors, Format="obj")

Weitere Informationen

Tutorials