| Operatoren |
write_object_model_3d — Schreiben eines 3D-Objektmodells in eine Datei.
write_object_model_3d( : : ObjectModel3D, FileType, FileName, GenParamName, GenParamValue : )
write_object_model_3d schreibt das 3D-Objektmodell ObjectModel3D in die Datei FileName. Die Datei kann mittels read_object_model_3d wieder eingelesen werden oder in einem entsprechenden CAD-Programm geladen werden. Es ist zu beachten, dass Primitive nur in dem HALCON-Format 'om3' gespeichert werden. Falls die Notwendigkeit besteht, die Primitive in einem anderen Format zu speichern, muss zuvor sample_object_model_3d aufgerufen werden. Dies führt allerdings zu einer Umwandlung der Primitive in durch 3D-Punkte abgetastete Objekte, welche einer Annäherung an die Primitive entsprechen.
Alle in die Datei geschriebenen Koordinaten werden in Metern geschrieben. Wird die Datei daher später mit read_object_model_3d wieder eingelesen, so muss der Parameter Scale auf 'm' gesetzt werden, um eine Skalierung der Daten zu vermeiden.
Der Parameter FileType legt das Format der zu schreibenden Datei fest. Die folgenden Dateitypen werden von write_object_model_3d unterstützt:
HALCON-Format für 3D-Objektmodelle. Dateien mit diesem Format können mit read_object_model_3d wieder gelesen werden. Die Standard-Dateiendung für dieses Format ist 'om3'.
AUTOCAD-Dateiformat. Weitere Details zu dem Format finden sich in der Dokumentation zu read_object_model_3d. Die Standard-Dateiendung für dieses Format ist 'dxf'.
'Object File Format'. Dies ist ein einfaches ASCII-basiertes Format welches 3D-Punkte und Polygone speichern kann. Die Standard-Dateiendung für dieses Format ist 'off'.
'Polygon File Format' (auch Stanford Triangle Format). Dies ist ein einfaches Dateiformat welches 3D-Punkte, Punktnormalen, Polygone, Farbinformationen und punktbasierte benutzerdefinierte Attribute speichern kann. HALCON schreibt sowohl die ASCII- als auch die Binärversion des Dateiformats. Die Standard-Dateiendung für dieses Format ist 'ply'.
'OBJ File Format' (auch 'Wavefront OBJ-Format'). Dies ist ein ASCII-basiertes Format, welches 3D-Punkte, Polygone, Normalen und Dreiecke, welche in Polygone umgewandelt werden, speichern kann. Die Standard-Dateiendung für dieses Format ist 'obj'.
'STL-Dateiformat' (auch 'Stereolithography', 'SurfaceTesselationLanguage', 'StandardTriangulationLanguage' oder 'StandardTesselationLanguage'). Dieses Dateiformat kann Dreiecke und Dreiecksnormalen speichern. Da das HALCON 3D Objektmodell allerdings keine Dreiecksnormalen unterstützt und Punktnormalen (wie sie z.B. mit surface_normals_object_model_3d berechnet werden) vom STL-Format nicht unterstützt werden, werden keine Normalen in die Datei geschrieben. Enthält das 3D Objektmodell Polygone, werden diese vor dem Speichern in Dreiecke umgewandelt. STL-Dateien können im ASCII oder im Binärformat geschrieben werden. Wird 'stl' oder 'stl_binary' angegeben, so wird das Binärformat geschrieben, für 'stl_ascii' das ASCII format. Die Standard-Dateiendung für dieses Format ist 'stl'.
Eine Reihe weiterer optionaler Parameter kann gesetzt werden. Die Namen und Werte dieser Parameter werden in GenParamName und GenParamValue übergeben. Einige der Parameter gelten nicht für alle Dateitypen. Die folgenden Werte sind für GenParamName möglich:
Invertieren der Normalenrichtung und Flächenausrichtung vor dem Speichern des 3D-Objektmodells. Ist dieser Parameter auf 'true' gesetzt, so wird für die Formate 'off', 'ply', 'obj' und 'stl' der Umlaufsinn aller Flächen (Dreiecke und Polygone) invertiert. Für Formate, die Punktnormalen speichern ('ply','obj'), werden zusätzlich die Normalenrichtungen vor dem Speichern invertiert. Für die Dateitypen 'om3' und 'dxf' hat der Parameter keinen Effekt.
Mögliche Werte: 'true', 'false'
Standardwert: 'false'
Gültig für Dateitypen: 'off', 'ply', 'obj', 'stl'
Handle des zu schreibenden 3D-Objektmodells.
Typ der zu schreibenden Datei.
Defaultwert: 'om3'
Werteliste: 'dxf', 'obj', 'off', 'om3', 'ply', 'ply_binary', 'stl', 'stl_ascii', 'stl_binary'
Dateiname der zu schreibenden Datei.
Dateiendung: .off, .ply, .dxf, .om3, .obj, .stl
Namen der generischen Parameter.
Defaultwert: []
Werteliste: 'invert_normals'
Werte der generischen Parameter.
Defaultwert: []
Wertevorschläge: 'true', 'false'
write_object_model_3d liefert den Wert 2 (H_MSG_TRUE) wenn alle Parameter korrekt sind und die Datei geschrieben werden konnte. Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
read_object_model_3d, xyz_to_object_model_3d
3D Metrology
| Operatoren |