KlassenKlassenKlassenKlassen | | | | Operatoren

create_drawing_object_xldT_create_drawing_object_xldCreateDrawingObjectXldcreate_drawing_object_xldCreateDrawingObjectXldCreateDrawingObjectXld (Operator)

Name

create_drawing_object_xldT_create_drawing_object_xldCreateDrawingObjectXldcreate_drawing_object_xldCreateDrawingObjectXldCreateDrawingObjectXld — Erzeugen einer Kontur, die interaktiv verändert werden kann.

Signatur

create_drawing_object_xld( : : Row, Column : DrawID)

Herror T_create_drawing_object_xld(const Htuple Row, const Htuple Column, Htuple* DrawID)

Herror create_drawing_object_xld(const HTuple& Row, const HTuple& Column, Hlong* DrawID)

void HDrawingObject::CreateDrawingObjectXld(const HTuple& Row, const HTuple& Column)

void CreateDrawingObjectXld(const HTuple& Row, const HTuple& Column, HTuple* DrawID)

void HDrawingObject::CreateDrawingObjectXld(const HTuple& Row, const HTuple& Column)

void HOperatorSetX.CreateDrawingObjectXld(
[in] VARIANT Row, [in] VARIANT Column, [out] VARIANT* DrawID)

void HDrawingObjectX.CreateDrawingObjectXld(
[in] VARIANT Row, [in] VARIANT Column)

static void HOperatorSet.CreateDrawingObjectXld(HTuple row, HTuple column, out HTuple drawID)

void HDrawingObject.CreateDrawingObjectXld(HTuple row, HTuple column)

Beschreibung

create_drawing_object_xldcreate_drawing_object_xldCreateDrawingObjectXldcreate_drawing_object_xldCreateDrawingObjectXldCreateDrawingObjectXld erzeugt eine XLD-Kontur, die interaktiv in einem HALCON-Fenster verändert werden kann. Die Kontur ist durch die Koordinaten RowRowRowRowRowrow und ColumnColumnColumnColumnColumncolumn ihrer Punkte 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. Weitere Punkte können durch einen Linksklick auf das Fenster hinzugefügt werden. Wenn auf einem Kontursegment zwischen zwei nachfolgenden Punkten geklickt wird, wird der neue Punkt zwischen diesen Punkten hinzugefügt. Jeder Konturpunkt kann durch Ziehen an dessen Anfasser verschoben werden. Ein einzelner Konturpunkt kann gelöscht werden, indem er auf einen benachbarten, direkt verbundenen Konturpunkt gezogen wird. Die Kontur kann geschlossen werden, indem der letzte Punkt auf den ersten Konturpunkt gesetzt wird. Die ganze Kontur kann durch Ziehen am Anfasser des Mittelpunktes verschoben werden. Zusätzlich ist es auch möglich mit set_drawing_object_xldset_drawing_object_xldSetDrawingObjectXldset_drawing_object_xldSetDrawingObjectXldSetDrawingObjectXld einem Zeichenobjekt eine neue Kontur zuzuweisen.

Im Gegensatz zum Operator draw_xlddraw_xldDrawXlddraw_xldDrawXldDrawXld blockieren die Interaktionen nicht den aufrufenden Thread.

Da während der Ausführung von create_drawing_object_xldcreate_drawing_object_xldCreateDrawingObjectXldcreate_drawing_object_xldCreateDrawingObjectXldCreateDrawingObjectXld 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)  coordinates.y-array HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Zeilen-Koordinaten des Polygons.

Defaultwert: [100,200,200,100]

Wertevorschläge: 0, 10, 20, 50, 100, 200, 500

ColumnColumnColumnColumnColumncolumn (input_control)  coordinates.x-array HTupleHTupleHTupleVARIANTHtuple (real / integer) (double / int / long) (double / Hlong) (double / Hlong) (double / Hlong) (double / Hlong)

Spalten-Koordinaten des Polygons.

Defaultwert: [100,100,200,200]

Wertevorschläge: 0, 10, 20, 50, 100, 200, 500

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_xldcreate_drawing_object_xldCreateDrawingObjectXldcreate_drawing_object_xldCreateDrawingObjectXldCreateDrawingObjectXld den Wert 2 (H_MSG_TRUE). Andernfalls wird eine Fehlerbehandlung durchgeführt.

Vorgänger

open_windowopen_windowOpenWindowopen_windowOpenWindowOpenWindow

Nachfolger

attach_drawing_object_to_windowattach_drawing_object_to_windowAttachDrawingObjectToWindowattach_drawing_object_to_windowAttachDrawingObjectToWindowAttachDrawingObjectToWindow, get_drawing_object_paramsget_drawing_object_paramsGetDrawingObjectParamsget_drawing_object_paramsGetDrawingObjectParamsGetDrawingObjectParams, get_drawing_object_iconicget_drawing_object_iconicGetDrawingObjectIconicget_drawing_object_iconicGetDrawingObjectIconicGetDrawingObjectIconic, set_drawing_object_xldset_drawing_object_xldSetDrawingObjectXldset_drawing_object_xldSetDrawingObjectXldSetDrawingObjectXld

Alternativen

draw_xlddraw_xldDrawXlddraw_xldDrawXldDrawXld, draw_xld_moddraw_xld_modDrawXldModdraw_xld_modDrawXldModDrawXldMod, draw_regiondraw_regionDrawRegiondraw_regionDrawRegionDrawRegion

Siehe auch

create_drawing_object_rectangle1create_drawing_object_rectangle1CreateDrawingObjectRectangle1create_drawing_object_rectangle1CreateDrawingObjectRectangle1CreateDrawingObjectRectangle1, create_drawing_object_rectangle2create_drawing_object_rectangle2CreateDrawingObjectRectangle2create_drawing_object_rectangle2CreateDrawingObjectRectangle2CreateDrawingObjectRectangle2, create_drawing_object_ellipsecreate_drawing_object_ellipseCreateDrawingObjectEllipsecreate_drawing_object_ellipseCreateDrawingObjectEllipseCreateDrawingObjectEllipse, create_drawing_object_circle_sectorcreate_drawing_object_circle_sectorCreateDrawingObjectCircleSectorcreate_drawing_object_circle_sectorCreateDrawingObjectCircleSectorCreateDrawingObjectCircleSector, create_drawing_object_ellipse_sectorcreate_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorcreate_drawing_object_ellipse_sectorCreateDrawingObjectEllipseSectorCreateDrawingObjectEllipseSector, create_drawing_object_linecreate_drawing_object_lineCreateDrawingObjectLinecreate_drawing_object_lineCreateDrawingObjectLineCreateDrawingObjectLine, create_drawing_object_circlecreate_drawing_object_circleCreateDrawingObjectCirclecreate_drawing_object_circleCreateDrawingObjectCircleCreateDrawingObjectCircle

Modul

Foundation


KlassenKlassenKlassenKlassen | | | | Operatoren