draw_rectangle1_modT_draw_rectangle1_modDrawRectangle1ModDrawRectangle1Moddraw_rectangle1_mod (Operator)
Name
draw_rectangle1_modT_draw_rectangle1_modDrawRectangle1ModDrawRectangle1Moddraw_rectangle1_mod — Zeichnen eines Rechtecks parallel zu den Koordinatenachsen.
Signatur
void DrawRectangle1Mod(const HTuple& WindowHandle, const HTuple& Row1In, const HTuple& Column1In, const HTuple& Row2In, const HTuple& Column2In, HTuple* Row1, HTuple* Column1, HTuple* Row2, HTuple* Column2)
void HWindow::DrawRectangle1Mod(double Row1In, double Column1In, double Row2In, double Column2In, double* Row1, double* Column1, double* Row2, double* Column2) const
static void HOperatorSet.DrawRectangle1Mod(HTuple windowHandle, HTuple row1In, HTuple column1In, HTuple row2In, HTuple column2In, out HTuple row1, out HTuple column1, out HTuple row2, out HTuple column2)
void HWindow.DrawRectangle1Mod(double row1In, double column1In, double row2In, double column2In, out double row1, out double column1, out double row2, out double column2)
Beschreibung
draw_rectangle1_moddraw_rectangle1_modDrawRectangle1ModDrawRectangle1ModDrawRectangle1Moddraw_rectangle1_mod liefert die Parameter für ein Rechteck parallel
zu den Koordinatenachsen, das interaktiv durch den Benutzer im
Fenster erzeugt worden ist.
Für die Erzeugung des Rechtecks werden die Parametern Row1InRow1InRow1InRow1Inrow1Inrow_1in,
Column1InColumn1InColumn1InColumn1Incolumn1Incolumn_1in,Row2InRow2InRow2InRow2Inrow2Inrow_2in und Column2InColumn2InColumn2InColumn2Incolumn2Incolumn_2in
erwartet.
Nach einem Mausklick in die Mitte des erzeugten Rechtecks, kann
dieses beliebig verschoben werden.
Mit einem Klick in die Nähe einer Seite kann diese
„angefasst“ werden, um die Ausdehnung des Rechtecks in senkrechter Richtung
zu dieser Seite zu verändern. Klickt man auf eine Ecke des erzeugten
Rechtecks, kann diese Ecke verschoben werden.
Ein Klick mit der rechten Maustaste beendet die Prozedur. Unter macOS
kann draw_rectangle1_moddraw_rectangle1_modDrawRectangle1ModDrawRectangle1ModDrawRectangle1Moddraw_rectangle1_mod auch durch Drücken der Escape-Taste beendet
werden.
Das Rechteck 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.
Row1InRow1InRow1InRow1Inrow1Inrow_1in (input_control) rectangle.origin.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Zeilenindex der linken oberen Ecke.
Column1InColumn1InColumn1InColumn1Incolumn1Incolumn_1in (input_control) rectangle.origin.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Spaltenindex der linken oberen Ecke.
Row2InRow2InRow2InRow2Inrow2Inrow_2in (input_control) rectangle.corner.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Zeilenindex der rechten unteren Ecke.
Column2InColumn2InColumn2InColumn2Incolumn2Incolumn_2in (input_control) rectangle.corner.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Spaltenindex der rechten unteren Ecke.
Row1Row1Row1Row1row1row_1 (output_control) rectangle.origin.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Zeilenindex der linken oberen Ecke.
Column1Column1Column1Column1column1column_1 (output_control) rectangle.origin.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Spaltenindex der linken oberen Ecke.
Row2Row2Row2Row2row2row_2 (output_control) rectangle.corner.y → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Zeilenindex der rechten unteren Ecke.
Column2Column2Column2Column2column2column_2 (output_control) rectangle.corner.x → HTuplefloatHTupleHtuple (real) (double) (double) (double)
Spaltenindex der rechten unteren Ecke.
Beispiel (HDevelop)
read_image(Image,'monkey')
get_image_size (Image, Width, Height)
dev_display (Image)
draw_rectangle1_mod(WindowHandle,100,100,200,300,\
Row1,Column1,Row2,Column2)
dev_set_part (Row1, Column1, Row2, Column2)
dev_display (Image)
Beispiel (C)
read_image(&Image,"monkey");
get_image_size(Image,&Width,&Height);
disp_image(Image,WindowHandle);
draw_rectangle1_mod(WindowHandle,100,100,200,300,
&Row1,&Column1,&Row2,&Column2);
set_part(WindowHandle,Row1,Column1,Row2,Column2);
disp_image(Image,WindowHandle);
Beispiel (HDevelop)
read_image(Image,'monkey')
get_image_size (Image, Width, Height)
dev_display (Image)
draw_rectangle1_mod(WindowHandle,100,100,200,300,\
Row1,Column1,Row2,Column2)
dev_set_part (Row1, Column1, Row2, Column2)
dev_display (Image)
Beispiel (HDevelop)
read_image(Image,'monkey')
get_image_size (Image, Width, Height)
dev_display (Image)
draw_rectangle1_mod(WindowHandle,100,100,200,300,\
Row1,Column1,Row2,Column2)
dev_set_part (Row1, Column1, Row2, Column2)
dev_display (Image)
Beispiel (HDevelop)
read_image(Image,'monkey')
get_image_size (Image, Width, Height)
dev_display (Image)
draw_rectangle1_mod(WindowHandle,100,100,200,300,\
Row1,Column1,Row2,Column2)
dev_set_part (Row1, Column1, Row2, Column2)
dev_display (Image)
Ergebnis
draw_rectangle1_moddraw_rectangle1_modDrawRectangle1ModDrawRectangle1ModDrawRectangle1Moddraw_rectangle1_mod liefert den Wert 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_rectangle1draw_rectangle1DrawRectangle1DrawRectangle1DrawRectangle1draw_rectangle1,
draw_rectangle2draw_rectangle2DrawRectangle2DrawRectangle2DrawRectangle2draw_rectangle2,
draw_regiondraw_regionDrawRegionDrawRegionDrawRegiondraw_region
Siehe auch
gen_rectangle1gen_rectangle1GenRectangle1GenRectangle1GenRectangle1gen_rectangle1,
draw_circledraw_circleDrawCircleDrawCircleDrawCircledraw_circle,
draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipsedraw_ellipse,
set_insertset_insertSetInsertSetInsertSetInsertset_insert
Modul
Foundation