KlassenKlassenKlassenKlassen | | | | Operatoren

create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipse (Operator)

Name

create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipse — Erzeugen einer Ellipse, die interaktiv verändert werden kann.

Signatur

create_drawing_object_ellipse( : : Row, Column, Phi, Radius1, Radius2 : DrawID)

Herror create_drawing_object_ellipse(double Row, double Column, double Phi, double Radius1, double Radius2, Hlong* DrawID)

Herror T_create_drawing_object_ellipse(const Htuple Row, const Htuple Column, const Htuple Phi, const Htuple Radius1, const Htuple Radius2, Htuple* DrawID)

Herror create_drawing_object_ellipse(const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Radius1, const HTuple& Radius2, Hlong* DrawID)

void HDrawingObject::CreateDrawingObjectEllipse(const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Radius1, const HTuple& Radius2)

void CreateDrawingObjectEllipse(const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Radius1, const HTuple& Radius2, HTuple* DrawID)

void HDrawingObject::CreateDrawingObjectEllipse(double Row, double Column, double Phi, double Radius1, double Radius2)

void HOperatorSetX.CreateDrawingObjectEllipse(
[in] VARIANT Row, [in] VARIANT Column, [in] VARIANT Phi, [in] VARIANT Radius1, [in] VARIANT Radius2, [out] VARIANT* DrawID)

void HDrawingObjectX.CreateDrawingObjectEllipse(
[in] double Row, [in] double Column, [in] double Phi, [in] double Radius1, [in] double Radius2)

static void HOperatorSet.CreateDrawingObjectEllipse(HTuple row, HTuple column, HTuple phi, HTuple radius1, HTuple radius2, out HTuple drawID)

void HDrawingObject.CreateDrawingObjectEllipse(double row, double column, double phi, double radius1, double radius2)

Beschreibung

create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipse 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 Mittlepunkts, die Orientierung PhiPhiPhiPhiPhiphi und die Länge der Halbachsen Radius1Radius1Radius1Radius1Radius1radius1 und Radius2Radius2Radius2Radius2Radius2radius2 definiert.

Diese Parameter können mit dem Operator get_drawing_object_paramsget_drawing_object_paramsGetDrawingObjectParamsget_drawing_object_paramsGetDrawingObjectParamsGetDrawingObjectParams abgerufen werden. Das entsprechende HALCON-Objekt kann mit get_drawing_object_iconicget_drawing_object_iconicGetDrawingObjectIconicget_drawing_object_iconicGetDrawingObjectIconicGetDrawingObjectIconic 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_paramsSetDrawingObjectParamsset_drawing_object_paramsSetDrawingObjectParamsSetDrawingObjectParams zu finden.

Um das Zeichenobjekt interaktiv abändern zu können, muss es zunächst mit attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindow an ein existierendes Fenster angehängt werden. Nähere Informationen sind in der Dokumentation zu attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindow 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_ellipseDrawEllipsedraw_ellipseDrawEllipseDrawEllipse blockieren die Interaktionen mit einem Zeichenobjekt den aufrufenden Thread nicht.

Da während der Ausführung von create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipse und der nachfolgenden Operatoren interne Strukturen angelegt werden, muss das Zeichenobjekt wieder mit clear_drawing_objectclear_drawing_objectClearDrawingObjectclear_drawing_objectClearDrawingObjectClearDrawingObject freigegeben werden, sobald es nicht mehr benötigt wird.

Parallelisierung

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 HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Zeilenkoordinate des Mittelpunktes.

Defaultwert: 200

ColumnColumnColumnColumnColumncolumn (input_control)  ellipse.center.x HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Spaltenkoordinate des Mittelpunktes.

Defaultwert: 200

PhiPhiPhiPhiPhiphi (input_control)  ellipse.angle.rad HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Orientierung der ersten Halbachse in Bogenmaß.

Defaultwert: 0

Radius1Radius1Radius1Radius1Radius1radius1 (input_control)  ellipse.radius1 HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Erste Halbachse.

Defaultwert: 100

Radius2Radius2Radius2Radius2Radius2radius2 (input_control)  ellipse.radius2 HTupleHTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double) (double)

Zweite Halbachse.

Defaultwert: 60

DrawIDDrawIDDrawIDDrawIDDrawIDdrawID (output_control)  drawing_object HDrawingObject, HTupleHTupleHDrawingObject, HTupleHDrawingObjectX, VARIANTHtuple (integer) (IntPtr) (Hlong) (Hlong) (Hlong) (Hlong)

Handle des Zeichenobjekts.

Ergebnis

Sind die Parameterwerte korrekt, dann liefert create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipse den Wert 2 (H_MSG_TRUE). Andernfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

open_windowopen_windowOpenWindowopen_windowOpenWindowOpenWindow

Nachfolger

disp_regiondisp_regionDispRegiondisp_regionDispRegionDispRegion, set_coloredset_coloredSetColoredset_coloredSetColoredSetColored, set_line_widthset_line_widthSetLineWidthset_line_widthSetLineWidthSetLineWidth, set_drawset_drawSetDrawset_drawSetDrawSetDraw, set_insertset_insertSetInsertset_insertSetInsertSetInsert, attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindow

Alternativen

draw_ellipse_moddraw_ellipse_modDrawEllipseModdraw_ellipse_modDrawEllipseModDrawEllipseMod, draw_ellipsedraw_ellipseDrawEllipsedraw_ellipseDrawEllipseDrawEllipse, draw_regiondraw_regionDrawRegiondraw_regionDrawRegionDrawRegion

Siehe auch

gen_ellipsegen_ellipseGenEllipsegen_ellipseGenEllipseGenEllipse, draw_circledraw_circleDrawCircledraw_circleDrawCircleDrawCircle, draw_rectangle2draw_rectangle2DrawRectangle2draw_rectangle2DrawRectangle2DrawRectangle2, set_insertset_insertSetInsertset_insertSetInsertSetInsert

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren