create_drawing_object_ellipse_sectorT_create_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorcreate_drawing_object_ellipse_sector (Operator)
Name
create_drawing_object_ellipse_sectorT_create_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorcreate_drawing_object_ellipse_sector — Erzeugen eines Ellipsenbogens, der interaktiv verändert werden kann.
Signatur
void CreateDrawingObjectEllipseSector(const HTuple& Row, const HTuple& Column, const HTuple& Phi, const HTuple& Radius1, const HTuple& Radius2, const HTuple& StartAngle, const HTuple& EndAngle, HTuple* DrawID)
void HDrawingObject::CreateDrawingObjectEllipseSector(double Row, double Column, double Phi, double Radius1, double Radius2, double StartAngle, double EndAngle)
static void HOperatorSet.CreateDrawingObjectEllipseSector(HTuple row, HTuple column, HTuple phi, HTuple radius1, HTuple radius2, HTuple startAngle, HTuple endAngle, out HTuple drawID)
void HDrawingObject.CreateDrawingObjectEllipseSector(double row, double column, double phi, double radius1, double radius2, double startAngle, double endAngle)
Beschreibung
create_drawing_object_ellipse_sectorcreate_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorcreate_drawing_object_ellipse_sector erzeugt einen Ellipsenbogen, der
in einem HALCON-Fenster interaktiv durch den Benutzer verändert werden
kann. Der Ellipsenbogen ist definiert durch die Koordinaten RowRowRowRowrowrow und
ColumnColumnColumnColumncolumncolumn des Mittelpunktes, die Längen Radius1Radius1Radius1Radius1radius1radius_1 und Radius2Radius2Radius2Radius2radius2radius_2 der
entsprechenden Halbachsen, die Start- und Endwinkel StartAngleStartAngleStartAngleStartAnglestartAnglestart_angle und
EndAngleEndAngleEndAngleEndAngleendAngleend_angle des Bogens sowie der Orientierung PhiPhiPhiPhiphiphi.
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 vier mögliche Transformationen für ein Ellipsenbogen-Zeichenobjekt:
Verändern der Größe, Verschieben, Rotieren und Verändern des
Winkels.
Der Ellipsenbogen kann durch Ziehen am Mittelpunkt verschoben
werden. Die Orientierung kann durch Ziehen an einem Scheitelanfasser der
ersten Halbachse verändert werden. Die Größe und der Winkel des
Ellipsenbogens kann durch Ziehen an den Scheitelanfassern
angepasst werden.
Im Gegensatz zum Operator draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipsedraw_ellipse blockieren die
Interaktionen nicht den aufrufenden Thread.
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) coordinates.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Zeilenkoordinate des Mittelpunkts.
Defaultwert: 200
ColumnColumnColumnColumncolumncolumn (input_control) coordinates.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Spaltenkoordinate des Mittelpunkts.
Defaultwert: 200
PhiPhiPhiPhiphiphi (input_control) angle.rad → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Orientierung der ersten Halbachse in Bogenmaß.
Defaultwert: 0
Radius1Radius1Radius1Radius1radius1radius_1 (input_control) number → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Erste Halbachse.
Defaultwert: 100
Radius2Radius2Radius2Radius2radius2radius_2 (input_control) number → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Zweite Halbachse.
Defaultwert: 60
StartAngleStartAngleStartAngleStartAnglestartAnglestart_angle (input_control) angle.rad → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Startwinkel des Bogenausschnitts.
Defaultwert: 0
EndAngleEndAngleEndAngleEndAngleendAngleend_angle (input_control) angle.rad → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Endwinkel des Bogenausschnitts.
Defaultwert: 3.14159
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_ellipse_sectorcreate_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSectorcreate_drawing_object_ellipse_sector
den Wert 2 (H_MSG_TRUE). Andernfalls wird eine Fehlerbehandlung durchgeführt.
Vorgänger
open_windowopen_windowOpenWindowOpenWindowOpenWindowopen_window
Nachfolger
attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindowAttachDrawingObjectToWindowattach_drawing_object_to_window,
get_drawing_object_paramsget_drawing_object_paramsGetDrawingObjectParamsGetDrawingObjectParamsGetDrawingObjectParamsget_drawing_object_params,
get_drawing_object_iconicget_drawing_object_iconicGetDrawingObjectIconicGetDrawingObjectIconicGetDrawingObjectIconicget_drawing_object_iconic
Alternativen
draw_ellipse_moddraw_ellipse_modDrawEllipseModDrawEllipseModDrawEllipseModdraw_ellipse_mod,
draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipsedraw_ellipse,
draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region,
create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipseCreateDrawingObjectEllipsecreate_drawing_object_ellipse
Siehe auch
gen_ellipse_contour_xldgen_ellipse_contour_xldGenEllipseContourXldGenEllipseContourXldGenEllipseContourXldgen_ellipse_contour_xld,
create_drawing_object_rectangle1create_drawing_object_rectangle1CreateDrawingObjectRectangle1CreateDrawingObjectRectangle1CreateDrawingObjectRectangle1create_drawing_object_rectangle1,
create_drawing_object_rectangle2create_drawing_object_rectangle2CreateDrawingObjectRectangle2CreateDrawingObjectRectangle2CreateDrawingObjectRectangle2create_drawing_object_rectangle2,
create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipseCreateDrawingObjectEllipsecreate_drawing_object_ellipse,
create_drawing_object_xldcreate_drawing_object_xldCreateDrawingObjectXldCreateDrawingObjectXldCreateDrawingObjectXldcreate_drawing_object_xld,
create_drawing_object_linecreate_drawing_object_lineCreateDrawingObjectLineCreateDrawingObjectLineCreateDrawingObjectLinecreate_drawing_object_line,
create_drawing_object_circlecreate_drawing_object_circleCreateDrawingObjectCircleCreateDrawingObjectCircleCreateDrawingObjectCirclecreate_drawing_object_circle
Modul
Foundation