write_object_model_3dT_write_object_model_3dWriteObjectModel3dWriteObjectModel3dwrite_object_model_3d (Operator)
Name
write_object_model_3dT_write_object_model_3dWriteObjectModel3dWriteObjectModel3dwrite_object_model_3d — Schreiben eines 3D-Objektmodells in eine Datei.
Signatur
void WriteObjectModel3d(const HTuple& ObjectModel3D, const HTuple& FileType, const HTuple& FileName, const HTuple& GenParamName, const HTuple& GenParamValue)
void HObjectModel3D::WriteObjectModel3d(const HString& FileType, const HString& FileName, const HTuple& GenParamName, const HTuple& GenParamValue) const
void HObjectModel3D::WriteObjectModel3d(const HString& FileType, const HString& FileName, const HString& GenParamName, const HString& GenParamValue) const
void HObjectModel3D::WriteObjectModel3d(const char* FileType, const char* FileName, const char* GenParamName, const char* GenParamValue) const
void HObjectModel3D::WriteObjectModel3d(const wchar_t* FileType, const wchar_t* FileName, const wchar_t* GenParamName, const wchar_t* GenParamValue) const
(Nur Windows)
static void HOperatorSet.WriteObjectModel3d(HTuple objectModel3D, HTuple fileType, HTuple fileName, HTuple genParamName, HTuple genParamValue)
void HObjectModel3D.WriteObjectModel3d(string fileType, string fileName, HTuple genParamName, HTuple genParamValue)
void HObjectModel3D.WriteObjectModel3d(string fileType, string fileName, string genParamName, string genParamValue)
Beschreibung
write_object_model_3dwrite_object_model_3dWriteObjectModel3dWriteObjectModel3dWriteObjectModel3dwrite_object_model_3d schreibt das 3D-Objektmodell
ObjectModel3DObjectModel3DObjectModel3DObjectModel3DobjectModel3Dobject_model_3d in die Datei FileNameFileNameFileNameFileNamefileNamefile_name. Die Datei kann
mittels read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3dread_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'"om3""om3""om3""om3""om3" gespeichert werden.
Falls die Notwendigkeit besteht, die Primitive in einem anderen Format
zu speichern, muss zuvor sample_object_model_3dsample_object_model_3dSampleObjectModel3dSampleObjectModel3dSampleObjectModel3dsample_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_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3dread_object_model_3d wieder
eingelesen, so muss der Parameter Scale auf 'm'"m""m""m""m""m" gesetzt werden, um
eine Skalierung der Daten zu vermeiden.
Der Parameter FileTypeFileTypeFileTypeFileTypefileTypefile_type legt das Format der zu schreibenden Datei
fest. Die folgenden Dateitypen werden von write_object_model_3dwrite_object_model_3dWriteObjectModel3dWriteObjectModel3dWriteObjectModel3dwrite_object_model_3d
unterstützt:
- 'om3'"om3""om3""om3""om3""om3":
-
HALCON-Format für 3D-Objektmodelle. Dateien mit diesem Format können
mit read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3dread_object_model_3d wieder gelesen werden.
Die Standard-Dateiendung für dieses Format ist 'om3'.
- 'dxf'"dxf""dxf""dxf""dxf""dxf":
-
AUTOCAD-Dateiformat. Weitere Details zu dem Format finden sich
in der Dokumentation zu read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3dread_object_model_3d.
Die Standard-Dateiendung für dieses Format ist 'dxf'.
- 'off'"off""off""off""off""off":
-
'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'.
- 'ply'"ply""ply""ply""ply""ply",
-
- 'ply_binary'"ply_binary""ply_binary""ply_binary""ply_binary""ply_binary":
-
'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'"obj""obj""obj""obj""obj":
-
'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'"stl""stl""stl""stl""stl",
-
- 'stl_binary'"stl_binary""stl_binary""stl_binary""stl_binary""stl_binary",
-
- 'stl_ascii'"stl_ascii""stl_ascii""stl_ascii""stl_ascii""stl_ascii":
'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_3dsurface_normals_object_model_3dSurfaceNormalsObjectModel3dSurfaceNormalsObjectModel3dSurfaceNormalsObjectModel3dsurface_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'"stl""stl""stl""stl""stl" oder 'stl_binary'"stl_binary""stl_binary""stl_binary""stl_binary""stl_binary" angegeben, so wird das
Binärformat geschrieben, für 'stl_ascii'"stl_ascii""stl_ascii""stl_ascii""stl_ascii""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 GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name und
GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value übergeben. Einige der Parameter gelten nicht für
alle Dateitypen. Die folgenden Werte sind für GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name
möglich:
- 'invert_normals'"invert_normals""invert_normals""invert_normals""invert_normals""invert_normals":
-
Invertieren der Normalenrichtung und Flächenausrichtung vor dem
Speichern des 3D-Objektmodells.
Ist dieser Parameter auf 'true'"true""true""true""true""true" gesetzt, so wird für die Formate
'off'"off""off""off""off""off", 'ply'"ply""ply""ply""ply""ply", 'obj'"obj""obj""obj""obj""obj" und 'stl'"stl""stl""stl""stl""stl"
der Umlaufsinn aller Flächen (Dreiecke und Polygone) invertiert.
Für Formate, die Punktnormalen speichern ('ply'"ply""ply""ply""ply""ply",'obj'"obj""obj""obj""obj""obj"),
werden zusätzlich die Normalenrichtungen vor dem Speichern invertiert.
Für die Dateitypen 'om3'"om3""om3""om3""om3""om3" und 'dxf'"dxf""dxf""dxf""dxf""dxf" hat der Parameter
keinen Effekt.
Werteliste: 'true'"true""true""true""true""true", 'false'"false""false""false""false""false".
Standardwert: 'false'"false""false""false""false""false".
Gültig für Dateitypen: 'off'"off""off""off""off""off", 'ply'"ply""ply""ply""ply""ply",
'obj'"obj""obj""obj""obj""obj", 'stl'"stl""stl""stl""stl""stl".
Ausführungsinformationen
- Multithreading-Typ: reentrant (läuft parallel zu nicht-exklusiven Operatoren).
- Multithreading-Bereich: global (kann von jedem Thread aufgerufen werden).
- Wird ohne Parallelisierung verarbeitet.
Parameter
ObjectModel3DObjectModel3DObjectModel3DObjectModel3DobjectModel3Dobject_model_3d (input_control) object_model_3d → HObjectModel3D, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle des zu schreibenden 3D-Objektmodells.
FileTypeFileTypeFileTypeFileTypefileTypefile_type (input_control) string → HTuplestrHTupleHtuple (string) (string) (HString) (char*)
Typ der zu schreibenden Datei.
Defaultwert:
'om3'
"om3"
"om3"
"om3"
"om3"
"om3"
Werteliste: 'dxf'"dxf""dxf""dxf""dxf""dxf", 'obj'"obj""obj""obj""obj""obj", 'off'"off""off""off""off""off", 'om3'"om3""om3""om3""om3""om3", 'ply'"ply""ply""ply""ply""ply", 'ply_binary'"ply_binary""ply_binary""ply_binary""ply_binary""ply_binary", 'stl'"stl""stl""stl""stl""stl", 'stl_ascii'"stl_ascii""stl_ascii""stl_ascii""stl_ascii""stl_ascii", 'stl_binary'"stl_binary""stl_binary""stl_binary""stl_binary""stl_binary"
FileNameFileNameFileNameFileNamefileNamefile_name (input_control) filename.write → HTuplestrHTupleHtuple (string) (string) (HString) (char*)
Dateiname der zu schreibenden Datei.
Dateiendung: .off, .ply, .dxf, .om3, .obj, .stl
GenParamNameGenParamNameGenParamNameGenParamNamegenParamNamegen_param_name (input_control) string(-array) → HTupleMaybeSequence[str]HTupleHtuple (string) (string) (HString) (char*)
Namen der generischen Parameter.
Defaultwert: []
Werteliste: 'invert_normals'"invert_normals""invert_normals""invert_normals""invert_normals""invert_normals"
GenParamValueGenParamValueGenParamValueGenParamValuegenParamValuegen_param_value (input_control) string(-array) → HTupleMaybeSequence[Union[str, float, int]]HTupleHtuple (string / real / integer) (string / double / int / long) (HString / double / Hlong) (char* / double / Hlong)
Werte der generischen Parameter.
Defaultwert: []
Wertevorschläge: 'true'"true""true""true""true""true", 'false'"false""false""false""false""false"
Ergebnis
write_object_model_3dwrite_object_model_3dWriteObjectModel3dWriteObjectModel3dWriteObjectModel3dwrite_object_model_3d liefert den Wert TRUE wenn alle
Parameter korrekt sind und die Datei geschrieben werden konnte.
Gegebenenfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3dread_object_model_3d,
xyz_to_object_model_3dxyz_to_object_model_3dXyzToObjectModel3dXyzToObjectModel3dXyzToObjectModel3dxyz_to_object_model_3d
Nachfolger
read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3dread_object_model_3d
Siehe auch
read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3dread_object_model_3d
Modul
3D Metrology