create_drawing_object_ellipseT_create_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipsecreate_drawing_object_ellipse (Operator)
Name
create_drawing_object_ellipseT_create_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipsecreate_drawing_object_ellipse — Erzeugen einer Ellipse, die interaktiv verändert werden kann.
Signatur
Beschreibung
create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipseCreateDrawingObjectEllipsecreate_drawing_object_ellipse erzeugt eine Ellipse,
die in einem HALCON-Fenster interaktiv durch den Benutzer verändert
werden kann. Die Ellipse ist durch die Koordinaten RowRowRowRowrowrow und ColumnColumnColumnColumncolumncolumn
des Mittelpunkts, die Orientierung PhiPhiPhiPhiphiphi und
die Länge der Halbachsen Radius1Radius1Radius1Radius1radius1radius_1 und Radius2Radius2Radius2Radius2radius2radius_2 definiert.
Diese Parameter können mit dem Operator get_drawing_object_paramsget_drawing_object_paramsGetDrawingObjectParamsGetDrawingObjectParamsGetDrawingObjectParamsget_drawing_object_params
abgerufen werden.
Das entsprechende HALCON-Objekt kann mit get_drawing_object_iconicget_drawing_object_iconicGetDrawingObjectIconicGetDrawingObjectIconicGetDrawingObjectIconicget_drawing_object_iconic
abgefragt werden.
Zusätzlich zu den Parametern verfügt jedes Zeichenobjekt über Attribute, die
dessen grafische Darstellung in einem HALCON-Fenster festlegen.
Nähere Informationen zu den verfügbaren Attributen sind in der Dokumentation zu
set_drawing_object_paramsset_drawing_object_paramsSetDrawingObjectParamsSetDrawingObjectParamsSetDrawingObjectParamsset_drawing_object_params zu finden.
Um das Zeichenobjekt interaktiv abändern zu können, muss es zunächst
mit attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindowAttachDrawingObjectToWindowattach_drawing_object_to_window an ein existierendes
Fenster angehängt werden. Nähere Informationen sind in der Dokumentation
zu attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindowAttachDrawingObjectToWindowattach_drawing_object_to_window zu finden.
Es gibt drei mögliche
Transformationen für ein Ellipsen-Zeichenobjekt: Verändern der Größe,
Verschieben und Rotieren.
Die Ellipse kann durch Ziehen am Mittelpunkt der Ellipse verschoben
werden. Durch Ziehen an den Scheiteln kann die Größe der Ellipse
angepasst werden. Die Rotation kann
durch Ziehen an einem Scheitel der ersten Halbachse verändert werden.
Im Gegensatz zum Operator draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipsedraw_ellipse blockieren die
Interaktionen mit einem Zeichenobjekt den aufrufenden Thread nicht.
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.
Dieser Operator liefert ein Handle zurück. Es ist zu beachten, dass der Zustand einer Instanz dieses Handletyps durch bestimmte Operatoren geändert werden kann, obwohl das Handle als Eingabeparameter in diesen Operatoren verwendet wird.
Parameter
RowRowRowRowrowrow (input_control) ellipse.center.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Zeilenkoordinate des Mittelpunktes.
Defaultwert: 200
ColumnColumnColumnColumncolumncolumn (input_control) ellipse.center.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Spaltenkoordinate des Mittelpunktes.
Defaultwert: 200
PhiPhiPhiPhiphiphi (input_control) ellipse.angle.rad → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Orientierung der ersten Halbachse in Bogenmaß.
Defaultwert: 0
Radius1Radius1Radius1Radius1radius1radius_1 (input_control) ellipse.radius1 → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Erste Halbachse.
Defaultwert: 100
Radius2Radius2Radius2Radius2radius2radius_2 (input_control) ellipse.radius2 → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Zweite Halbachse.
Defaultwert: 60
DrawIDDrawIDDrawIDDrawIDdrawIDdraw_id (output_control) drawing_object → HDrawingObject, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Handle des Zeichenobjekts.
Ergebnis
Sind die Parameterwerte korrekt, dann liefert create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipseCreateDrawingObjectEllipsecreate_drawing_object_ellipse
den Wert 2 (H_MSG_TRUE). Andernfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
open_windowopen_windowOpenWindowOpenWindowOpenWindowopen_window
Nachfolger
disp_regiondisp_regionDispRegionDispRegionDispRegiondisp_region,
set_coloredset_coloredSetColoredSetColoredSetColoredset_colored,
set_line_widthset_line_widthSetLineWidthSetLineWidthSetLineWidthset_line_width,
set_drawset_drawSetDrawSetDrawSetDrawset_draw,
set_insertset_insertSetInsertSetInsertSetInsertset_insert,
attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindowAttachDrawingObjectToWindowattach_drawing_object_to_window
Alternativen
draw_ellipse_moddraw_ellipse_modDrawEllipseModDrawEllipseModDrawEllipseModdraw_ellipse_mod,
draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipsedraw_ellipse,
draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region
Siehe auch
gen_ellipsegen_ellipseGenEllipseGenEllipseGenEllipsegen_ellipse,
draw_circledraw_circleDrawCircleDrawCircleDrawCircledraw_circle,
draw_rectangle2draw_rectangle2DrawRectangle2DrawRectangle2DrawRectangle2draw_rectangle2,
set_insertset_insertSetInsertSetInsertSetInsertset_insert
Modul
Foundation