draw_circleT_draw_circleDrawCircleDrawCircledraw_circle (Operator)
Name
draw_circleT_draw_circleDrawCircleDrawCircledraw_circle — Interaktives Erstellen eines Kreises.
Signatur
def draw_circle(window_handle: HHandle) -> Tuple[float, float, float]
Beschreibung
draw_circledraw_circleDrawCircleDrawCircleDrawCircledraw_circle liefert die Parameter für einen Kreis, der
interaktiv durch den Benutzer im Fenster erzeugt worden ist.
Für die Erzeugung des Kreises wird mit der linken Maustaste an die Stelle
geklickt, die als Mittelpunkt für den Kreis verwendet werden soll. Während
die Taste gedrückt bleibt, kann die Länge des RadiusRadiusRadiusRadiusradiusradius durch
Verschieben der Maus verändert werden.
Nach einem erneuten Mausklick in die Mitte des
erzeugten Kreises, kann dieser beliebig verschoben werden. Mit einem Klick
in die Nähe des Kreisbogens kann der Kreis „angefasst“ werden, um den
RadiusRadiusRadiusRadiusradiusradius zu verändern.
Ein Klick mit der rechten Maustaste beendet die Prozedur. Unter macOS
kann draw_circledraw_circleDrawCircleDrawCircleDrawCircledraw_circle auch durch Drücken der Escape-Taste beendet
werden.
Der Kreis ist nach Beendigung der Prozedur nicht mehr auf dem Fenster
sichtbar.
Achtung
Für die Nutzung des Zeichenoperators in einem Puffer-Fenster muss die
Anwendung Maus-Events senden. Der Zeichenoperator muss
dabei in einem anderen Thread ausgeführt werden.
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
WindowHandleWindowHandleWindowHandleWindowHandlewindowHandlewindow_handle (input_control) window → HWindow, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Fenster-Handle.
RowRowRowRowrowrow (output_control) circle.center.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Zeilenindex des Mittelpunkts.
ColumnColumnColumnColumncolumncolumn (output_control) circle.center.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Spaltenindex des Mittelpunkts.
RadiusRadiusRadiusRadiusradiusradius (output_control) circle.radius → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Radius des Kreises.
Beispiel (HDevelop)
read_image(Image,'monkey')
draw_circle(WindowHandle,Row,Column,Radius)
gen_circle(Circle,Row,Column,Radius)
reduce_domain(Image,Circle,ImageReduced)
invert_image (ImageReduced, ImageInvert)
dev_display (ImageInvert)
Beispiel (C)
read_image(&Image,"monkey");
draw_circle(WindowHandle,&Row,&Column,&Radius);
gen_circle(&Circle,Row,Column,Radius);
reduce_domain(Image,Circle,&GrayCircle);
disp_image(GrayCircle,WindowHandle);
Beispiel (HDevelop)
read_image(Image,'monkey')
draw_circle(WindowHandle,Row,Column,Radius)
gen_circle(Circle,Row,Column,Radius)
reduce_domain(Image,Circle,ImageReduced)
invert_image (ImageReduced, ImageInvert)
dev_display (ImageInvert)
Beispiel (HDevelop)
read_image(Image,'monkey')
draw_circle(WindowHandle,Row,Column,Radius)
gen_circle(Circle,Row,Column,Radius)
reduce_domain(Image,Circle,ImageReduced)
invert_image (ImageReduced, ImageInvert)
dev_display (ImageInvert)
Beispiel (HDevelop)
read_image(Image,'monkey')
draw_circle(WindowHandle,Row,Column,Radius)
gen_circle(Circle,Row,Column,Radius)
reduce_domain(Image,Circle,ImageReduced)
invert_image (ImageReduced, ImageInvert)
dev_display (ImageInvert)
Ergebnis
draw_circledraw_circleDrawCircleDrawCircleDrawCircledraw_circle liefert den Wert 2 (H_MSG_TRUE), falls das Fenster gültig
und der benötigte Zeichenmodus (siehe set_insertset_insertSetInsertSetInsertSetInsertset_insert) verfügbar ist.
Ansonsten wird eine Fehlerbehandlung durchgeführt.
Vorgänger
open_windowopen_windowOpenWindowOpenWindowOpenWindowopen_window
Nachfolger
reduce_domainreduce_domainReduceDomainReduceDomainReduceDomainreduce_domain,
disp_regiondisp_regionDispRegionDispRegionDispRegiondisp_region,
set_coloredset_coloredSetColoredSetColoredSetColoredset_colored,
set_line_widthset_line_widthSetLineWidthSetLineWidthSetLineWidthset_line_width,
set_drawset_drawSetDrawSetDrawSetDrawset_draw,
set_insertset_insertSetInsertSetInsertSetInsertset_insert
Alternativen
draw_circle_moddraw_circle_modDrawCircleModDrawCircleModDrawCircleModdraw_circle_mod,
draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipsedraw_ellipse,
draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region
Siehe auch
gen_circlegen_circleGenCircleGenCircleGenCirclegen_circle,
draw_rectangle1draw_rectangle1DrawRectangle1DrawRectangle1DrawRectangle1draw_rectangle1,
draw_rectangle2draw_rectangle2DrawRectangle2DrawRectangle2DrawRectangle2draw_rectangle2,
draw_polygondraw_polygonDrawPolygonDrawPolygonDrawPolygondraw_polygon,
set_insertset_insertSetInsertSetInsertSetInsertset_insert
Modul
Foundation