draw_regionT_draw_regionDrawRegionDrawRegiondraw_region (Operator)
Name
draw_regionT_draw_regionDrawRegionDrawRegiondraw_region — Interaktives Erstellen einer geschlossenen Region.
Signatur
Beschreibung
draw_regiondraw_regionDrawRegionDrawRegiondraw_region liefert ein Bild, dessen Region die interaktiv mit
der Maus eingegebene Bildregion umfasst (die Grauwerte bleiben undefiniert).
Gezeichnet wird im Ausgabefenster mit gedrückter linker Maustaste.
Die linke Maustaste kann auch punktweise betätigt werden; hierdurch
wird eine Gerade zwischen den angeklickten Punkten gezogen.
Ein Druck auf die rechte Maustaste beendet die Eingabe und schließt die
Kontur. Anschließend wird das Bild „aufgefüllt“,
enthält also den gesamten mit der Maus umfahrenen Bildbereich.
Für das Zeichnen wird die Farbe verwendet die mit set_colorset_colorSetColorSetColorset_color,
set_rgbset_rgbSetRgbSetRgbset_rgb, etc. eingestellt wurde.
Achtung
Die Grauwerte des Ausgabeobjektes sind undefiniert.
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
RegionRegionRegionregionregion (output_object) region → objectHRegionHObjectHObjectHobject *
Interaktiv erstellte Region.
WindowHandleWindowHandleWindowHandlewindowHandlewindow_handle (input_control) window → HWindow, HTupleHHandleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Fenster-Handle.
Beispiel (HDevelop)
read_image(Image,'fabrik')
dev_display (Image)
draw_region(Region,WindowHandle)
reduce_domain(Image,Region,ImageReduced)
invert_image (ImageReduced, ImageInvert)
dev_display (ImageInvert)
Beispiel (C)
read_image(&Image,"fabrik");
disp_image(Image,WindowHandle);
draw_region(&Region,WindowHandle);
reduce_domain(Image,Region,&New);
regiongrowing(New,&Segmente,5,5,6,50);
set_colored(WindowHandle,12);
disp_region(Segmente,WindowHandle);
Beispiel (HDevelop)
read_image(Image,'fabrik')
dev_display (Image)
draw_region(Region,WindowHandle)
reduce_domain(Image,Region,ImageReduced)
invert_image (ImageReduced, ImageInvert)
dev_display (ImageInvert)
Beispiel (HDevelop)
read_image(Image,'fabrik')
dev_display (Image)
draw_region(Region,WindowHandle)
reduce_domain(Image,Region,ImageReduced)
invert_image (ImageReduced, ImageInvert)
dev_display (ImageInvert)
Ergebnis
draw_regiondraw_regionDrawRegionDrawRegiondraw_region liefert den Wert 2 (
H_MSG_TRUE)
, falls das Fenster gültig
ist. Ansonsten wird eine Fehlerbehandlung durchgeführt.
Vorgänger
open_windowopen_windowOpenWindowOpenWindowopen_window
Nachfolger
reduce_domainreduce_domainReduceDomainReduceDomainreduce_domain,
disp_regiondisp_regionDispRegionDispRegiondisp_region,
set_coloredset_coloredSetColoredSetColoredset_colored,
set_line_widthset_line_widthSetLineWidthSetLineWidthset_line_width,
set_drawset_drawSetDrawSetDrawset_draw
Alternativen
draw_circledraw_circleDrawCircleDrawCircledraw_circle,
draw_ellipsedraw_ellipseDrawEllipseDrawEllipsedraw_ellipse,
draw_rectangle1draw_rectangle1DrawRectangle1DrawRectangle1draw_rectangle1,
draw_rectangle2draw_rectangle2DrawRectangle2DrawRectangle2draw_rectangle2
Siehe auch
draw_polygondraw_polygonDrawPolygonDrawPolygondraw_polygon,
reduce_domainreduce_domainReduceDomainReduceDomainreduce_domain,
fill_upfill_upFillUpFillUpfill_up,
set_colorset_colorSetColorSetColorset_color
Modul
Foundation