draw_rectangle2_modT_draw_rectangle2_modDrawRectangle2ModDrawRectangle2Mod (Operator)
Name
draw_rectangle2_modT_draw_rectangle2_modDrawRectangle2ModDrawRectangle2Mod
— Interaktives Erstellen eines beliebig orientierten Rechtecks.
Signatur
Herror T_draw_rectangle2_mod(const Htuple WindowHandle, const Htuple RowIn, const Htuple ColumnIn, const Htuple PhiIn, const Htuple Length1In, const Htuple Length2In, Htuple* Row, Htuple* Column, Htuple* Phi, Htuple* Length1, Htuple* Length2)
void DrawRectangle2Mod(const HTuple& WindowHandle, const HTuple& RowIn, const HTuple& ColumnIn, const HTuple& PhiIn, const HTuple& Length1In, const HTuple& Length2In, HTuple* Row, HTuple* Column, HTuple* Phi, HTuple* Length1, HTuple* Length2)
void HWindow::DrawRectangle2Mod(double RowIn, double ColumnIn, double PhiIn, double Length1In, double Length2In, double* Row, double* Column, double* Phi, double* Length1, double* Length2) const
static void HOperatorSet.DrawRectangle2Mod(HTuple windowHandle, HTuple rowIn, HTuple columnIn, HTuple phiIn, HTuple length1In, HTuple length2In, out HTuple row, out HTuple column, out HTuple phi, out HTuple length1, out HTuple length2)
void HWindow.DrawRectangle2Mod(double rowIn, double columnIn, double phiIn, double length1In, double length2In, out double row, out double column, out double phi, out double length1, out double length2)
Beschreibung
draw_rectangle2_moddraw_rectangle2_modDrawRectangle2ModDrawRectangle2ModDrawRectangle2Mod
liefert die Parameter für ein beliebig
orientiertes Rechteck, das interaktiv durch den Benutzer im
Fenster erzeugt worden ist.
Das zu erzeugende Rechteck wird durch seinen Mittelpunkt, seine zwei
Halbachsen und den Winkel der ersten Halbachse zur horizontalen
Koordinatenachse beschrieben.
Für die Erzeugung des Rechtecks werden die Parametern RowInRowInRowInRowInrowIn
,
ColumnInColumnInColumnInColumnIncolumnIn
,PhiInPhiInPhiInPhiInphiIn
,Length1InLength1InLength1InLength1Inlength1In
,Length2InLength2InLength2InLength2Inlength2In
erwartet.
Mit einem Klick in die Nähe einer Seite
kann diese „angefasst“ werden, um die Ausdehnung des Rechtecks in
senkrechter Richtung (Length2Length2Length2Length2length2
) zu dieser Seite zu verändern.
Die Orientierung (PhiPhiPhiPhiphi
) kann nur verändert werden, wenn eine
Seite senkrecht zur ersten Halbachse angefasst wird.
Nach einem erneuten Mausklick in die Mitte des erzeugten Rechtecks, kann
dieses beliebig verschoben werden.
Ein Klick mit der rechten Maustaste beendet die Prozedur. Unter macOS
kann draw_rectangle2_moddraw_rectangle2_modDrawRectangle2ModDrawRectangle2ModDrawRectangle2Mod
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
WindowHandleWindowHandleWindowHandleWindowHandlewindowHandle
(input_control) window →
HWindow, HTupleHTupleHtuple (handle) (IntPtr) (HHandle) (handle)
Fenster-Handle.
RowInRowInRowInRowInrowIn
(input_control) rectangle2.center.y →
HTupleHTupleHtuple (real) (double) (double) (double)
Zeilenindex des Mittelpunkts.
ColumnInColumnInColumnInColumnIncolumnIn
(input_control) rectangle2.center.x →
HTupleHTupleHtuple (real) (double) (double) (double)
Spaltenindex des Mittelpunkts.
PhiInPhiInPhiInPhiInphiIn
(input_control) rectangle2.angle.rad →
HTupleHTupleHtuple (real) (double) (double) (double)
Orientierung der größeren Halbachse in Bogenmaß.
Length1InLength1InLength1InLength1Inlength1In
(input_control) rectangle2.hwidth →
HTupleHTupleHtuple (real) (double) (double) (double)
Größere Halbachse.
Length2InLength2InLength2InLength2Inlength2In
(input_control) rectangle2.hheight →
HTupleHTupleHtuple (real) (double) (double) (double)
Kleinere Halbachse.
RowRowRowRowrow
(output_control) rectangle2.center.y →
HTupleHTupleHtuple (real) (double) (double) (double)
Zeilenindex des Mittelpunkts.
ColumnColumnColumnColumncolumn
(output_control) rectangle2.center.x →
HTupleHTupleHtuple (real) (double) (double) (double)
Spaltenindex des Mittelpunkts.
PhiPhiPhiPhiphi
(output_control) rectangle2.angle.rad →
HTupleHTupleHtuple (real) (double) (double) (double)
Orientierung der größeren Halbachse in Bogenmaß.
Length1Length1Length1Length1length1
(output_control) rectangle2.hwidth →
HTupleHTupleHtuple (real) (double) (double) (double)
Größere Halbachse.
Length2Length2Length2Length2length2
(output_control) rectangle2.hheight →
HTupleHTupleHtuple (real) (double) (double) (double)
Kleinere Halbachse.
Ergebnis
draw_rectangle2_moddraw_rectangle2_modDrawRectangle2ModDrawRectangle2ModDrawRectangle2Mod
liefert den Wert 2 (H_MSG_TRUE), falls das Fenster gültig
und der benötigte Zeichenmodus (siehe set_insertset_insertSetInsertSetInsertSetInsert
) verfügbar ist.
Ansonsten wird eine Fehlerbehandlung durchgeführt.
Vorgänger
open_windowopen_windowOpenWindowOpenWindowOpenWindow
Nachfolger
reduce_domainreduce_domainReduceDomainReduceDomainReduceDomain
,
disp_regiondisp_regionDispRegionDispRegionDispRegion
,
set_coloredset_coloredSetColoredSetColoredSetColored
,
set_line_widthset_line_widthSetLineWidthSetLineWidthSetLineWidth
,
set_drawset_drawSetDrawSetDrawSetDraw
,
set_insertset_insertSetInsertSetInsertSetInsert
Alternativen
draw_rectangle2draw_rectangle2DrawRectangle2DrawRectangle2DrawRectangle2
,
draw_rectangle1draw_rectangle1DrawRectangle1DrawRectangle1DrawRectangle1
,
draw_rectangle2draw_rectangle2DrawRectangle2DrawRectangle2DrawRectangle2
,
draw_regiondraw_regionDrawRegionDrawRegionDrawRegion
Siehe auch
gen_rectangle2gen_rectangle2GenRectangle2GenRectangle2GenRectangle2
,
draw_circledraw_circleDrawCircleDrawCircleDrawCircle
,
draw_ellipsedraw_ellipseDrawEllipseDrawEllipseDrawEllipse
,
set_insertset_insertSetInsertSetInsertSetInsert
Modul
Foundation