write_object_model_3dT_write_object_model_3dWriteObjectModel3dWriteObjectModel3d (Operator)

Name

write_object_model_3dT_write_object_model_3dWriteObjectModel3dWriteObjectModel3d — Schreiben eines 3D-Objektmodells in eine Datei.

Signatur

write_object_model_3d( : : ObjectModel3D, FileType, FileName, GenParamName, GenParamValue : )

Herror T_write_object_model_3d(const Htuple ObjectModel3D, const Htuple FileType, const Htuple FileName, const Htuple GenParamName, const Htuple GenParamValue)

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_3dWriteObjectModel3dWriteObjectModel3dWriteObjectModel3d schreibt das 3D-Objektmodell ObjectModel3DObjectModel3DObjectModel3DObjectModel3DobjectModel3D in die Datei FileNameFileNameFileNameFileNamefileName. Die Datei kann mittels read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3d 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" gespeichert werden. Falls die Notwendigkeit besteht, die Primitive in einem anderen Format zu speichern, muss zuvor sample_object_model_3dsample_object_model_3dSampleObjectModel3dSampleObjectModel3dSampleObjectModel3d 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_3dReadObjectModel3dReadObjectModel3dReadObjectModel3d wieder eingelesen, so muss der Parameter Scale auf 'm'"m""m""m""m" gesetzt werden, um eine Skalierung der Daten zu vermeiden.

Der Parameter FileTypeFileTypeFileTypeFileTypefileType legt das Format der zu schreibenden Datei fest. Die folgenden Dateitypen werden von write_object_model_3dwrite_object_model_3dWriteObjectModel3dWriteObjectModel3dWriteObjectModel3d unterstützt:

'om3'"om3""om3""om3""om3":

HALCON-Format für 3D-Objektmodelle. Dateien mit diesem Format können mit read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3d wieder gelesen werden. Die Standard-Dateiendung für dieses Format ist 'om3'.

'dxf'"dxf""dxf""dxf""dxf":

AUTOCAD-Dateiformat. Weitere Details zu dem Format finden sich in der Dokumentation zu read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3d. Die Standard-Dateiendung für dieses Format ist 'dxf'.

'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_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 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_binary'"stl_binary""stl_binary""stl_binary""stl_binary",
'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_3dSurfaceNormalsObjectModel3dSurfaceNormalsObjectModel3dSurfaceNormalsObjectModel3d 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" oder '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" 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 GenParamNameGenParamNameGenParamNameGenParamNamegenParamName und GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue übergeben. Einige der Parameter gelten nicht für alle Dateitypen. Die folgenden Werte sind für GenParamNameGenParamNameGenParamNameGenParamNamegenParamName möglich:

'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" gesetzt, so wird für die Formate 'off'"off""off""off""off", 'ply'"ply""ply""ply""ply", 'obj'"obj""obj""obj""obj" und '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",'obj'"obj""obj""obj""obj"), werden zusätzlich die Normalenrichtungen vor dem Speichern invertiert. Für die Dateitypen 'om3'"om3""om3""om3""om3" und 'dxf'"dxf""dxf""dxf""dxf" hat der Parameter keinen Effekt.

Mögliche Werte: 'true'"true""true""true""true", 'false'"false""false""false""false"

Standardwert: 'false'"false""false""false""false"

Gültig für Dateitypen: 'off'"off""off""off""off", 'ply'"ply""ply""ply""ply", 'obj'"obj""obj""obj""obj", 'stl'"stl""stl""stl""stl"

Ausführungsinformationen

Parameter

ObjectModel3DObjectModel3DObjectModel3DObjectModel3DobjectModel3D (input_control)  object_model_3d HObjectModel3D, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)

Handle des zu schreibenden 3D-Objektmodells.

FileTypeFileTypeFileTypeFileTypefileType (input_control)  string HTupleHTupleHtuple (string) (string) (HString) (char*)

Typ der zu schreibenden Datei.

Defaultwert: 'om3' "om3" "om3" "om3" "om3"

Werteliste: 'dxf'"dxf""dxf""dxf""dxf", 'obj'"obj""obj""obj""obj", 'off'"off""off""off""off", 'om3'"om3""om3""om3""om3", 'ply'"ply""ply""ply""ply", 'ply_binary'"ply_binary""ply_binary""ply_binary""ply_binary", 'stl'"stl""stl""stl""stl", 'stl_ascii'"stl_ascii""stl_ascii""stl_ascii""stl_ascii", 'stl_binary'"stl_binary""stl_binary""stl_binary""stl_binary"

FileNameFileNameFileNameFileNamefileName (input_control)  filename.write HTupleHTupleHtuple (string) (string) (HString) (char*)

Dateiname der zu schreibenden Datei.

Dateiendung: .off, .ply, .dxf, .om3, .obj, .stl

GenParamNameGenParamNameGenParamNameGenParamNamegenParamName (input_control)  string(-array) HTupleHTupleHtuple (string) (string) (HString) (char*)

Namen der generischen Parameter.

Defaultwert: []

Werteliste: 'invert_normals'"invert_normals""invert_normals""invert_normals""invert_normals"

GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue (input_control)  string(-array) HTupleHTupleHtuple (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", 'false'"false""false""false""false"

Ergebnis

write_object_model_3dwrite_object_model_3dWriteObjectModel3dWriteObjectModel3dWriteObjectModel3d liefert den Wert 2 (H_MSG_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_3dReadObjectModel3dReadObjectModel3dReadObjectModel3d, xyz_to_object_model_3dxyz_to_object_model_3dXyzToObjectModel3dXyzToObjectModel3dXyzToObjectModel3d

Nachfolger

read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3d

Siehe auch

read_object_model_3dread_object_model_3dReadObjectModel3dReadObjectModel3dReadObjectModel3d

Modul

3D Metrology