project_shape_model_3d T_project_shape_model_3d ProjectShapeModel3d ProjectShapeModel3d (Operator)
Name
project_shape_model_3d T_project_shape_model_3d ProjectShapeModel3d ProjectShapeModel3d
— Projizieren der Kanten eines 3D-Formmodells in Bildkoordinaten.
Signatur
void ProjectShapeModel3d (HObject* ModelContours , const HTuple& ShapeModel3DID , const HTuple& CamParam , const HTuple& Pose , const HTuple& HiddenSurfaceRemoval , const HTuple& MinFaceAngle )
HXLDCont HShapeModel3D ::ProjectShapeModel3d (const HCamPar& CamParam , const HPose& Pose , const HString& HiddenSurfaceRemoval , const HTuple& MinFaceAngle ) const
HXLDCont HShapeModel3D ::ProjectShapeModel3d (const HCamPar& CamParam , const HPose& Pose , const HString& HiddenSurfaceRemoval , double MinFaceAngle ) const
HXLDCont HShapeModel3D ::ProjectShapeModel3d (const HCamPar& CamParam , const HPose& Pose , const char* HiddenSurfaceRemoval , double MinFaceAngle ) const
HXLDCont HShapeModel3D ::ProjectShapeModel3d (const HCamPar& CamParam , const HPose& Pose , const wchar_t* HiddenSurfaceRemoval , double MinFaceAngle ) const
(Nur Windows)
HXLDCont HCamPar ::ProjectShapeModel3d (const HShapeModel3D& ShapeModel3DID , const HPose& Pose , const HString& HiddenSurfaceRemoval , const HTuple& MinFaceAngle ) const
HXLDCont HCamPar ::ProjectShapeModel3d (const HShapeModel3D& ShapeModel3DID , const HPose& Pose , const HString& HiddenSurfaceRemoval , double MinFaceAngle ) const
HXLDCont HCamPar ::ProjectShapeModel3d (const HShapeModel3D& ShapeModel3DID , const HPose& Pose , const char* HiddenSurfaceRemoval , double MinFaceAngle ) const
HXLDCont HCamPar ::ProjectShapeModel3d (const HShapeModel3D& ShapeModel3DID , const HPose& Pose , const wchar_t* HiddenSurfaceRemoval , double MinFaceAngle ) const
(Nur Windows)
HXLDCont HPose ::ProjectShapeModel3d (const HShapeModel3D& ShapeModel3DID , const HCamPar& CamParam , const HString& HiddenSurfaceRemoval , const HTuple& MinFaceAngle ) const
HXLDCont HPose ::ProjectShapeModel3d (const HShapeModel3D& ShapeModel3DID , const HCamPar& CamParam , const HString& HiddenSurfaceRemoval , double MinFaceAngle ) const
HXLDCont HPose ::ProjectShapeModel3d (const HShapeModel3D& ShapeModel3DID , const HCamPar& CamParam , const char* HiddenSurfaceRemoval , double MinFaceAngle ) const
HXLDCont HPose ::ProjectShapeModel3d (const HShapeModel3D& ShapeModel3DID , const HCamPar& CamParam , const wchar_t* HiddenSurfaceRemoval , double MinFaceAngle ) const
(Nur Windows)
static void HOperatorSet .ProjectShapeModel3d (out HObject modelContours , HTuple shapeModel3DID , HTuple camParam , HTuple pose , HTuple hiddenSurfaceRemoval , HTuple minFaceAngle )
HXLDCont HShapeModel3D .ProjectShapeModel3d (HCamPar camParam , HPose pose , string hiddenSurfaceRemoval , HTuple minFaceAngle )
HXLDCont HShapeModel3D .ProjectShapeModel3d (HCamPar camParam , HPose pose , string hiddenSurfaceRemoval , double minFaceAngle )
HXLDCont HCamPar .ProjectShapeModel3d (HShapeModel3D shapeModel3DID , HPose pose , string hiddenSurfaceRemoval , HTuple minFaceAngle )
HXLDCont HCamPar .ProjectShapeModel3d (HShapeModel3D shapeModel3DID , HPose pose , string hiddenSurfaceRemoval , double minFaceAngle )
HXLDCont HPose .ProjectShapeModel3d (HShapeModel3D shapeModel3DID , HCamPar camParam , string hiddenSurfaceRemoval , HTuple minFaceAngle )
HXLDCont HPose .ProjectShapeModel3d (HShapeModel3D shapeModel3DID , HCamPar camParam , string hiddenSurfaceRemoval , double minFaceAngle )
Beschreibung
Der Operator project_shape_model_3d project_shape_model_3d ProjectShapeModel3d ProjectShapeModel3d ProjectShapeModel3d
projiziert die Kanten
des 3D-Objektmodells, das zur Erstellung des 3D-Formmodells
ShapeModel3DID ShapeModel3DID ShapeModel3DID ShapeModel3DID shapeModel3DID
verwendet wurde, in das
Bildkoordinatensystem und liefert die projizierten Kanten in
ModelContours ModelContours ModelContours ModelContours modelContours
zurück. Die Koordinaten des 3D-Objektmodells
sind im 3D-Weltkoordinatensystem (mcs ) gegeben. Sie werden zuerst
mittels der gegebenen 3D-Lage Pose Pose Pose Pose pose
in Kamerakoordinaten
(ccs ) transformiert und dann basierend auf den internen
Kameraparametern CamParam CamParam CamParam CamParam camParam
in das Bildkoordinatensystem projiziert.
Die internen Kameraparameter CamParam CamParam CamParam CamParam camParam
beschreiben dabei die
Abbildungseigenschaften der Kamera (siehe Kalibrierung ).
Die 3D-Lage Pose Pose Pose Pose pose
wird in der Form
erwartet, siehe auch
Transformationen / Posen und
„Solution Guide III-C - 3D Vision“
. Dies bedeutet, sie
beschreibt die Position und Lage des Modellkoordinatensystems, welches über
das 3D Objektmodel definiert ist, im Kamerakoordinatensystem.
Mit dem Parameter HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval hiddenSurfaceRemoval
kann die
Verdeckungsberechnung ein- bzw. ausgeschaltet werden. Wenn der
Parameter HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval hiddenSurfaceRemoval
auf 'true' "true" "true" "true" "true" gesetzt
ist, werden nur die projizierten Kanten zurückgegeben, die nicht
durch Flächen des 3D-Objektmodells verdeckt sind. Ist
HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval hiddenSurfaceRemoval
auf 'false' "false" "false" "false" "false" gesetzt, werden
alle projizierten Kanten des 3D-Objektmodells zurückgegeben. Dieser
Modus ist schneller als wenn HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval hiddenSurfaceRemoval
auf
'true' "true" "true" "true" "true" gesetzt ist.
Ist die Systemvariable (siehe set_system set_system SetSystem SetSystem SetSystem
)
'opengl_hidden_surface_removal_enable' "opengl_hidden_surface_removal_enable" "opengl_hidden_surface_removal_enable" "opengl_hidden_surface_removal_enable" "opengl_hidden_surface_removal_enable"
auf 'true' "true" "true" "true" "true" gesetzt (Standard, sofern es verfügbar ist)
und HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval hiddenSurfaceRemoval
auf 'true' "true" "true" "true" "true" gesetzt, wird die
Modellprojektion auf der Grafikkarte durchgeführt.
Abhängig von der verwendeten Grafikkarte ist dies signifikant
schneller als die analytische Projektion.
Es ist zu beachten, dass die Ergebnisse der OpenGL Projektion
leicht verschieden zu denen der analytischen Projektion sind.
Insbesondere werden in diesem Modus nur die Kanten projiziert
die im Bild der Kamera (CamParam CamParam CamParam CamParam camParam
) sichtbar sind.
Mit dem Parameter MinFaceAngle MinFaceAngle MinFaceAngle MinFaceAngle minFaceAngle
wird der minimale Winkel
angegeben, den zwei benachbarte Flächen einschließen müssen, damit
die Kante zwischen ihnen projiziert wird. Wird MinFaceAngle MinFaceAngle MinFaceAngle MinFaceAngle minFaceAngle
auf 0.0 gesetzt, werden alle Kanten projiziert. Wird
MinFaceAngle MinFaceAngle MinFaceAngle MinFaceAngle minFaceAngle
auf
(entspricht 180
Grad) gesetzt, wird nur die Silhouette des 3D-Objektmodells
zurückgegeben. Dieser Parameter kann insbesondere dafür verwendet
werden, um Kanten in gekrümmten Flächen, z.B. einer Zylinder- oder
Kegeloberfläche, zu unterdrücken.
Wenn bei der Erzeugung mittels create_shape_model_3d create_shape_model_3d CreateShapeModel3d CreateShapeModel3d CreateShapeModel3d
der
Parameter 'union_adjacent_contours' "union_adjacent_contours" "union_adjacent_contours" "union_adjacent_contours" "union_adjacent_contours" aktiviert wurde,
dann werden benachbarte Konturen verbunden.
project_shape_model_3d project_shape_model_3d ProjectShapeModel3d ProjectShapeModel3d ProjectShapeModel3d
und project_object_model_3d project_object_model_3d ProjectObjectModel3d ProjectObjectModel3d ProjectObjectModel3d
liefern das selbe Ergebnis, wenn an project_object_model_3d project_object_model_3d ProjectObjectModel3d ProjectObjectModel3d ProjectObjectModel3d
das 3D-Objektmodell übergeben wird, das zur Erstellung des
3D-Formmodells verwendet wurde.
project_shape_model_3d project_shape_model_3d ProjectShapeModel3d ProjectShapeModel3d ProjectShapeModel3d
ist insbesondere dazu nützlich, mit
find_shape_model_3d find_shape_model_3d FindShapeModel3d FindShapeModel3d FindShapeModel3d
gefundene Matches zu visualisieren, wenn
das zu Grunde liegende 3D-Objektmodell nicht mehr verfügbar ist.
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
ModelContours ModelContours ModelContours ModelContours modelContours
(output_object) xld_cont-array →
object HXLDCont HXLDCont Hobject *
Konturrepräsentation der Modellansicht.
ShapeModel3DID ShapeModel3DID ShapeModel3DID ShapeModel3DID shapeModel3DID
(input_control) shape_model_3d →
HShapeModel3D , HTuple HTuple Htuple (handle) (IntPtr ) (HHandle ) (handle )
Handle des 3D-Formmodells.
CamParam CamParam CamParam CamParam camParam
(input_control) campar →
HCamPar , HTuple HTuple Htuple (real / integer / string) (double / int / long / string) (double / Hlong / HString) (double / Hlong / char*)
Interne Kameraparameter.
Pose Pose Pose Pose pose
(input_control) pose →
HPose , HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
3D-Lage (Pose) des 3D-Formmodells im
Weltkoordinatensystem.
HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval HiddenSurfaceRemoval hiddenSurfaceRemoval
(input_control) string →
HTuple HTuple Htuple (string) (string ) (HString ) (char* )
Verdeckte Flächen eliminieren?
Defaultwert:
'true'
"true"
"true"
"true"
"true"
Werteliste: 'false' "false" "false" "false" "false" , 'true' "true" "true" "true" "true"
MinFaceAngle MinFaceAngle MinFaceAngle MinFaceAngle minFaceAngle
(input_control) angle.rad →
HTuple HTuple Htuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong)
Kleinster Flächenwinkel für den die Kante
dargestellt wird
Defaultwert: 0.523599
Wertevorschläge: 0.17, 0.26, 0.35, 0.52
Ergebnis
Sind die Parameterwerte korrekt, dann liefert
project_shape_model_3d project_shape_model_3d ProjectShapeModel3d ProjectShapeModel3d ProjectShapeModel3d
den Wert 2 (H_MSG_TRUE). Gegebenenfalls
wird eine Fehlerbehandlung durchgeführt.
Vorgänger
create_shape_model_3d create_shape_model_3d CreateShapeModel3d CreateShapeModel3d CreateShapeModel3d
,
read_shape_model_3d read_shape_model_3d ReadShapeModel3d ReadShapeModel3d ReadShapeModel3d
,
get_shape_model_3d_params get_shape_model_3d_params GetShapeModel3dParams GetShapeModel3dParams GetShapeModel3dParams
,
find_shape_model_3d find_shape_model_3d FindShapeModel3d FindShapeModel3d FindShapeModel3d
Alternativen
project_object_model_3d project_object_model_3d ProjectObjectModel3d ProjectObjectModel3d ProjectObjectModel3d
Siehe auch
convert_point_3d_cart_to_spher convert_point_3d_cart_to_spher ConvertPoint3dCartToSpher ConvertPoint3dCartToSpher ConvertPoint3dCartToSpher
,
convert_point_3d_spher_to_cart convert_point_3d_spher_to_cart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart ConvertPoint3dSpherToCart
,
create_cam_pose_look_at_point create_cam_pose_look_at_point CreateCamPoseLookAtPoint CreateCamPoseLookAtPoint CreateCamPoseLookAtPoint
,
trans_pose_shape_model_3d trans_pose_shape_model_3d TransPoseShapeModel3d TransPoseShapeModel3d TransPoseShapeModel3d
Modul
3D Metrology