Operatoren |
In diesem Kapitel werden Operatoren beschrieben, die zum manuellen Erstellen geometrischer Formen genutzt werden können. Diese benötigen die Interaktion des Benutzers über die Maustasten und blockieren die Anwendung bis die Interaktion abgeschlossen ist. Die in Graphik / Objekt aufgelisteten Operatoren ermöglichen es geometrische Formen zu erzeugen, ohne die Anwendung zu blockieren.
Die Operatoren draw_region, draw_xld, draw_xld_mod, draw_nurbs, draw_nurbs_mod, draw_nurbs_interp, draw_nurbs_interp_mod sowie drag_region1, drag_region2 und drag_region3 geben als Ergebnis ikonische Objekte aus. Die restlichen Zeichenoperatoren geben geometrische Parameter zurück, die zur Erstellung von Regionen oder Konturen in der jeweiligen Form notwendig sind (vgl. Tabelle). Für die meisten Zeichenoperatoren existiert zudem ein Modifikationsoperator, mit dem die zunächst bestimmte Form nochmals angepasst werden kann.
Da für Zeichenoperatoren eine Interaktion des Nutzers über Maustasten nötig ist, ist die Verwendung in den unsichtbaren Pufferfenstern (siehe open_window) an sich nicht möglich. Bei Verwendung solcher Fenster sollten stattdessen Zeichenobjekte (siehe Graphik / Objekt) genutzt werden. Einige Zeichenoperatoren können dennoch in Pufferfenstern verwendet werden. Mit Hilfe der Operatoren send_mouse_double_click_event, send_mouse_down_event, send_mouse_drag_event und send_mouse_up_event müssen die Mausereignisse und der Zustand der Zusatztasten (Strg, Alt, Umschalttaste) gesendet werden, während der Zeichenoperator in einem anderen Thread aufgerufen werden muss. Der Bildausschnitt darf währenddessen nicht verändert werden.
Zeichenoperatoren | Ausgabe | Objekt generieren | Funktioniert in Puffer-Fenstern |
---|---|---|---|
draw_point | Row , Column | gen_cross_contour_xld | ja |
draw_line | Row1 , Column1 , Row2 , Column2 | gen_contour_polygon_xld | ja |
draw_rectangle1 | Row1 , Column1 , Row2 , Column2 | gen_rectangle1 | ja |
draw_rectangle2 | Row , Column , Phi , Length1 , Length2 | gen_rectangle2, gen_rectangle2_contour_xld | ja |
draw_circle | Row , Column , Radius | gen_circle, gen_circle_contour_xld | ja |
draw_ellipse | Row , Column , Phi , Radius1 , Radius2 | gen_ellipse, gen_ellipse_contour_xld | ja |
draw_xld | Contour | - | ja |
draw_region | Region | - | ja |
draw_polygon | Region | - | ja |
draw_nurbs | Contour , Rows , Columns , Weights | - | nein |
draw_nurbs_interp | Contour , Rows , Columns , Knots , Tangents | - | nein |
drag_region1 | Region | - | nein |
drag_region2 | Region | - | nein |
drag_region3 | Region | - | nein |
Operatoren |