prepare_object_model_3dT_prepare_object_model_3dPrepareObjectModel3dPrepareObjectModel3d (Operator)

Name

prepare_object_model_3dT_prepare_object_model_3dPrepareObjectModel3dPrepareObjectModel3d — Vorbereiten eines 3D-Objektmodells für nachfolgende Operationen.

Signatur

prepare_object_model_3d( : : ObjectModel3D, Purpose, OverwriteData, GenParamName, GenParamValue : )

Herror T_prepare_object_model_3d(const Htuple ObjectModel3D, const Htuple Purpose, const Htuple OverwriteData, const Htuple GenParamName, const Htuple GenParamValue)

void PrepareObjectModel3d(const HTuple& ObjectModel3D, const HTuple& Purpose, const HTuple& OverwriteData, const HTuple& GenParamName, const HTuple& GenParamValue)

static void HObjectModel3D::PrepareObjectModel3d(const HObjectModel3DArray& ObjectModel3D, const HString& Purpose, const HString& OverwriteData, const HTuple& GenParamName, const HTuple& GenParamValue)

void HObjectModel3D::PrepareObjectModel3d(const HString& Purpose, const HString& OverwriteData, const HTuple& GenParamName, const HTuple& GenParamValue) const

void HObjectModel3D::PrepareObjectModel3d(const char* Purpose, const char* OverwriteData, const HTuple& GenParamName, const HTuple& GenParamValue) const

void HObjectModel3D::PrepareObjectModel3d(const wchar_t* Purpose, const wchar_t* OverwriteData, const HTuple& GenParamName, const HTuple& GenParamValue) const   (Nur Windows)

static void HOperatorSet.PrepareObjectModel3d(HTuple objectModel3D, HTuple purpose, HTuple overwriteData, HTuple genParamName, HTuple genParamValue)

static void HObjectModel3D.PrepareObjectModel3d(HObjectModel3D[] objectModel3D, string purpose, string overwriteData, HTuple genParamName, HTuple genParamValue)

void HObjectModel3D.PrepareObjectModel3d(string purpose, string overwriteData, HTuple genParamName, HTuple genParamValue)

Beschreibung

Der Operator prepare_object_model_3dprepare_object_model_3dPrepareObjectModel3dPrepareObjectModel3dPrepareObjectModel3d bereitet ein 3D-Objektmodell ObjectModel3DObjectModel3DObjectModel3DObjectModel3DobjectModel3D für eine nachfolgende Operation, die in PurposePurposePurposePurposepurpose festgelegt ist, vor. Der Operator berechnet Werte, die für die Operation erforderlich sind, und speichert diese in ObjectModel3DObjectModel3DObjectModel3DObjectModel3DobjectModel3D, um die Geschwindigkeit der nachfolgenden Operationen zu erhöhen. Es ist nicht notwendig den Operator prepare_object_model_3dprepare_object_model_3dPrepareObjectModel3dPrepareObjectModel3dPrepareObjectModel3d aufzurufen. Wenn das 3D-Objektmodell mehrere Male von derselben Operation benutzt wird, kann es allerdings die Geschwindigkeit der Operation erhöhen.

Die folgenden Werte für den Parameter PurposePurposePurposePurposepurpose sind möglich:

'shape_based_matching_3d'"shape_based_matching_3d""shape_based_matching_3d""shape_based_matching_3d""shape_based_matching_3d":

Das 3D-Objektmodell wird für die Nutzung im Operator create_shape_model_3dcreate_shape_model_3dCreateShapeModel3dCreateShapeModel3dCreateShapeModel3d vorbereitet. In diesem Fall können keine generischen Parameter gesetzt werden.

'segmentation'"segmentation""segmentation""segmentation""segmentation":

Das 3D-Objektmodell wird für die Nutzung im Operator segment_object_model_3dsegment_object_model_3dSegmentObjectModel3dSegmentObjectModel3dSegmentObjectModel3d vorbereitet. Um die Vorbereitung durchführen zu können muss das 3D-Objektmodell das Attribut mit den Oberflächendreiecken und das Attribut mit den Punktkoordinaten beinhalten.

Wenn das 3D-Objektmodell kein Attribut mit den Oberflächendreiecken hat, wird eine einfache Dreiecksvermaschung durchgeführt. Hierfür muss das 3D-Objektmodell das Attribut mit den Punktkoordinaten und das Attribut mit der Zuordnung der 3D Punkte zu den Bildkoordinaten beinhalten. Es wird nur zwischen Punkten trianguliert, die von benachbarten Pixeln stammen. Zusätzlich können Löcher in der Bildregion mit einer Delaunay-Triangulierung gefüllt werden (siehe 'max_area_holes'"max_area_holes""max_area_holes""max_area_holes""max_area_holes" unten). Nur Löcher, die vollständig von der Bildregion eingeschlossen sind, werden geschlossen.

'distance_computation'"distance_computation""distance_computation""distance_computation""distance_computation":

Das 3D-Objektmodell wird für die Verwendung als Zielmodell in distance_object_model_3ddistance_object_model_3dDistanceObjectModel3dDistanceObjectModel3dDistanceObjectModel3d vorbereitet.

Der Parameter OverwriteDataOverwriteDataOverwriteDataOverwriteDataoverwriteData legt fest, ob vorhandene Daten eines bereits vorbereiteten 3D-Objektmodells gelöscht werden sollen. Falls OverwriteDataOverwriteDataOverwriteDataOverwriteDataoverwriteData auf 'true'"true""true""true""true" gesetzt ist, werden die vorbereiteten Daten, die durch den Parameter PurposePurposePurposePurposepurpose festgelegt sind, überschrieben. Falls OverwriteDataOverwriteDataOverwriteDataOverwriteDataoverwriteData auf 'false'"false""false""false""false" gesetzt ist, werden die bereits vorbereiteten Daten nicht überschrieben.

Der Parameter OverwriteDataOverwriteDataOverwriteDataOverwriteDataoverwriteData kann benutzt werden, wenn andere generische Parameter GenParamNameGenParamNameGenParamNameGenParamNamegenParamName und GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue gesetzt werden. Der Parameter OverwriteDataOverwriteDataOverwriteDataOverwriteDataoverwriteData hat keinen Einfluss, wenn der Parameter PurposePurposePurposePurposepurpose auf 'shape_based_matching_3d'"shape_based_matching_3d""shape_based_matching_3d""shape_based_matching_3d""shape_based_matching_3d" gesetzt ist, da in diesem Fall keine generischen Parameter gesetzt werden können.

Die generischen Parameter können optional genutzt werden um die Vorbereitung zu beeinflussen. Falls gewünscht, können die generischen Parameter und deren Werte in GenParamNameGenParamNameGenParamNameGenParamNamegenParamName und GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue übergeben werden. Die folgenden Werte für GenParamNameGenParamNameGenParamNameGenParamNamegenParamName und die dazugehörigen Werte für GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue sind möglich:

'max_area_holes'"max_area_holes""max_area_holes""max_area_holes""max_area_holes":

Dieser Parameter ist nur gültig, falls PurposePurposePurposePurposepurpose auf 'segmentation'"segmentation""segmentation""segmentation""segmentation" gesetzt ist. Der Parameter legt fest, welche Fläche die Löcher in den Punktkoodinaten haben dürfen, damit diese mittels einer Delaunay-Triangulierung geschlossen werden. Nur Löcher, die vollständig von der Bildregion eingeschlossen sind, werden geschlossen. Falls 'max_area_holes'"max_area_holes""max_area_holes""max_area_holes""max_area_holes" auf 0 gesetzt ist, werden keine Löcher vermascht. Falls 'max_area_holes'"max_area_holes""max_area_holes""max_area_holes""max_area_holes" größer oder gleich 1 Pixel gesetzt ist, werden die Löcher mit einer Fläche kleiner oder gleich 'max_area_holes'"max_area_holes""max_area_holes""max_area_holes""max_area_holes" mittels einer Vermaschung geschlossen.

Wertevorschläge: 1, 10, 100

Defaultwert: 10

'distance_to'"distance_to""distance_to""distance_to""distance_to":

Dieser Parameter ist nur gültig, falls PurposePurposePurposePurposepurpose auf 'distance_computation'"distance_computation""distance_computation""distance_computation""distance_computation" gesetzt ist. Dieser Parameter bestimmt die Zieldaten zu denen der Abstand berechnet werden soll. Der Parameter wird in der Dokumentation zu distance_object_model_3ddistance_object_model_3dDistanceObjectModel3dDistanceObjectModel3dDistanceObjectModel3d genauer beschrieben.

Mögliche Werte: 'auto'"auto""auto""auto""auto", 'triangles'"triangles""triangles""triangles""triangles", 'points'"points""points""points""points", 'primitive'"primitive""primitive""primitive""primitive"

Defaultwert: 'auto'"auto""auto""auto""auto"

'method'"method""method""method""method":

Dieser Parameter ist nur gültig, falls PurposePurposePurposePurposepurpose auf 'distance_computation'"distance_computation""distance_computation""distance_computation""distance_computation" gesetzt ist. Dieser Parameter bestimmt die Methode mit welcher der Abstand berechnet werden soll. Der Parameter wird in der Dokumentation zu distance_object_model_3ddistance_object_model_3dDistanceObjectModel3dDistanceObjectModel3dDistanceObjectModel3d genauer beschrieben.

Mögliche Werte: 'auto'"auto""auto""auto""auto", 'kd-tree'"kd-tree""kd-tree""kd-tree""kd-tree", 'voxel'"voxel""voxel""voxel""voxel", 'linear'"linear""linear""linear""linear"

Defaultwert: 'auto'"auto""auto""auto""auto"

'max_distance'"max_distance""max_distance""max_distance""max_distance":

Dieser Parameter ist nur gültig, falls PurposePurposePurposePurposepurpose auf 'distance_computation'"distance_computation""distance_computation""distance_computation""distance_computation" gesetzt ist. Dieser Parameter bestimmt den maximal interessanten Abstand. Wird der Parameter auf 0 gesetzt, so wird kein maximaler Abstand verwendet. Der Parameter wird in der Dokumentation zu distance_object_model_3ddistance_object_model_3dDistanceObjectModel3dDistanceObjectModel3dDistanceObjectModel3d genauer beschrieben.

Wertevorschläge: 0, 0.1, 1, 10

Defaultwert: 0

'sampling_dist_rel'"sampling_dist_rel""sampling_dist_rel""sampling_dist_rel""sampling_dist_rel":

Dieser Parameter ist nur gültig, falls PurposePurposePurposePurposepurpose auf 'distance_computation'"distance_computation""distance_computation""distance_computation""distance_computation" gesetzt ist. Dieser Parameter setzt die relative Abtastdistanz falls der Abstand zu Dreiecken mit der Methode 'voxel'"voxel""voxel""voxel""voxel" berechnet wird. Der Parameter wird in der Dokumentation zu distance_object_model_3ddistance_object_model_3dDistanceObjectModel3dDistanceObjectModel3dDistanceObjectModel3d genauer beschrieben.

Wertevorschläge: 0.03, 0.01

Defaultwert: 0.03

'sampling_dist_abs'"sampling_dist_abs""sampling_dist_abs""sampling_dist_abs""sampling_dist_abs":

Dieser Parameter ist nur gültig, falls PurposePurposePurposePurposepurpose auf 'distance_computation'"distance_computation""distance_computation""distance_computation""distance_computation" gesetzt ist. Dieser Parameter setzt die absolute Abtastdistanz falls der Abstand zu Dreiecken mit der Methode 'voxel'"voxel""voxel""voxel""voxel" berechnet wird. Der Parameter wird in der Dokumentation zu distance_object_model_3ddistance_object_model_3dDistanceObjectModel3dDistanceObjectModel3dDistanceObjectModel3d genauer beschrieben.

Wertevorschläge: 1, 5, 10

Defaultwert: None

Ausführungsinformationen

Parameter

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

Handle des 3D-Objektmodells.

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

Zweck des 3D-Objektmodells.

Defaultwert: 'shape_based_matching_3d' "shape_based_matching_3d" "shape_based_matching_3d" "shape_based_matching_3d" "shape_based_matching_3d"

Wertevorschläge: 'shape_based_matching_3d'"shape_based_matching_3d""shape_based_matching_3d""shape_based_matching_3d""shape_based_matching_3d", 'segmentation'"segmentation""segmentation""segmentation""segmentation", 'distance_computation'"distance_computation""distance_computation""distance_computation""distance_computation"

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

Legt fest, ob schon vorhandene Daten überschrieben werden.

Defaultwert: 'true' "true" "true" "true" "true"

Werteliste: 'false'"false""false""false""false", 'true'"true""true""true""true"

GenParamNameGenParamNameGenParamNameGenParamNamegenParamName (input_control)  attribute.name-array HTupleHTupleHtuple (string / real / integer) (string / double / int / long) (HString / double / Hlong) (char* / double / Hlong)

Name des generischen Parameters.

Defaultwert: []

Werteliste: 'distance_to'"distance_to""distance_to""distance_to""distance_to", 'max_area_holes'"max_area_holes""max_area_holes""max_area_holes""max_area_holes", 'max_distance'"max_distance""max_distance""max_distance""max_distance", 'method'"method""method""method""method", 'sampling_dist_abs'"sampling_dist_abs""sampling_dist_abs""sampling_dist_abs""sampling_dist_abs", 'sampling_dist_rel'"sampling_dist_rel""sampling_dist_rel""sampling_dist_rel""sampling_dist_rel"

GenParamValueGenParamValueGenParamValueGenParamValuegenParamValue (input_control)  attribute.value-array HTupleHTupleHtuple (string / real / integer) (string / double / int / long) (HString / double / Hlong) (char* / double / Hlong)

Wert des generischen Parameters.

Defaultwert: []

Wertevorschläge: 0, 1, 100, 'auto'"auto""auto""auto""auto", 'triangles'"triangles""triangles""triangles""triangles", 'points'"points""points""points""points", 'primitive'"primitive""primitive""primitive""primitive", 'kd-tree'"kd-tree""kd-tree""kd-tree""kd-tree", 'voxel'"voxel""voxel""voxel""voxel", 'linear'"linear""linear""linear""linear", 0.01, 0.03

Ergebnis

prepare_object_model_3dprepare_object_model_3dPrepareObjectModel3dPrepareObjectModel3dPrepareObjectModel3d liefert den Wert 2 (H_MSG_TRUE), falls die Parameter korrekt sind. 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

create_shape_model_3dcreate_shape_model_3dCreateShapeModel3dCreateShapeModel3dCreateShapeModel3d, create_surface_modelcreate_surface_modelCreateSurfaceModelCreateSurfaceModelCreateSurfaceModel, distance_object_model_3ddistance_object_model_3dDistanceObjectModel3dDistanceObjectModel3dDistanceObjectModel3d, find_surface_modelfind_surface_modelFindSurfaceModelFindSurfaceModelFindSurfaceModel, fit_primitives_object_model_3dfit_primitives_object_model_3dFitPrimitivesObjectModel3dFitPrimitivesObjectModel3dFitPrimitivesObjectModel3d, refine_surface_model_poserefine_surface_model_poseRefineSurfaceModelPoseRefineSurfaceModelPoseRefineSurfaceModelPose, segment_object_model_3dsegment_object_model_3dSegmentObjectModel3dSegmentObjectModel3dSegmentObjectModel3d, simplify_object_model_3dsimplify_object_model_3dSimplifyObjectModel3dSimplifyObjectModel3dSimplifyObjectModel3d

Modul

3D Metrology