| Operatoren |
dev_open_window — Öffnen eines neuen Grafikfensters.
dev_open_window( : : Row, Column, Width, Height, Background : WindowHandle)
dev_open_window öffnet ein neues Grafikfenster, in dem ikonische Objekte wie Bilder, Regionen und Linien sowie Text und geometrische Objekte ausgegeben werden können. Nach dem Öffnen ist automatisch das neue Grafikfenster aktiv, d.h. dass alle HDevelop-Ausgabeoperatoren sich auf dieses Grafikfenster beziehen. Das aktive Grafikfenster erkennt man an der leuchtenden Lampe im Aktivierungsknopf.
Die HALCON-Fensteroperatoren für Objektausgabe, Zeichnen, Mausabfrage, Textausgabe und zum Setzen der Visualisierungsparameter wie disp_image, disp_region, draw_circle, get_mbutton, write_string, set_rgb, usw., erwarten die logische Fensternummer als Eingabeparameter. Diese wird im Parameter WindowHandle zurückgeliefert und in der Titelzeile ausgegeben.
Die Hintergrundfarbe des Grafikfensters wird über den Parameter Background gesetzt. Dieser Parameter ist beim HALCON-Operator open_window nicht verfügbar. Um das gleiche Verhalten zu erreichen wie mit dev_open_window muss vor dem Öffnen des Fensters set_window_attr(::'background_color',Background:) aufgerufen werden.
Mithilfe des Schließen-Knopfes im Fensterrahmen, über das Visualisierungsmenü oder durch Aufruf von dev_close_window kann das Grafikfenster geschlossen werden.
Das Koordinatensystem des Grafikfensters hat seinen Ursprung (0,0) in der linken oberen Ecke. Die X-Werte (Spalten) laufen von links nach rechts, die Y-Werte (Zeilen) von oben nach unten. Das Koordinatensystem wird per Default so eingestellt, dass das aktuelle Bild vollständig ausgegeben wird und das Fenster dabei vollständig ausgefüllt wird. Dabei wird das Koordinatensystem entsprechend dieser Vorgabe automatisch immer dann angepasst, wenn zum ersten Mal nach einem Programmreset bzw. dem Laden eines neuen Programms ein Bild ausgegeben wird oder wenn das aktuelle Bild eine andere Bildgröße als das zuletzt ausgegebene besitzt. Die Fenstergröße wird dabei nicht automatisch angepasst, so dass bei unterschiedlichen Seitenverhältnissen von Bild und Fenster das Bild verzerrt ausgegeben wird. Dies kann über das Menü Fenstergröße behoben werden.
Der sichtbare Bildausschnitt kann interaktiv verändert werden durch Drehen des Mausrades, durch Verschieben und Zoomen in den entsprechenden Modi, über das Menü Bildgröße und die Zoom Tabkarte des Visualisierungs Parameter Dialogs sowie mit Hilfe des Operators dev_set_part.
Jedes Grafikfenster verwaltet eine Historie mit den
Bildobjekten und
Ausgabeparametern
die ausgegeben bzw. eingestellt wurden nach dem letzten Löschen des Fensterinhalts oder der Ausgabe eines Bildes mit voller Domaine. Diese Historie wird beim Neuzeichnen des Grafikfensters genutzt, um beispielsweise bei einer Änderung der Größe des Grafikfensters den kompletten Fensterinhalt rekonstruieren zu können. Andere Bildobjekte, die mit Hilfe von HALCON-Operatoren, wie disp_image oder disp_region, ausgegeben wurden, Texte (write_string) und geometrische Objekte (disp_line, disp_circle, usw.) sind nicht Bestandteil der Historie und können daher beim Neuaufbau des Grafikfensters nicht wieder hergestellt werden. Nur die Bildobjekte (Bilder, Regionen und XLDs), die mit Hilfe des HDevelop-Operators dev_display oder durch HDevelop-Aktionen wie Doppelklick auf das entsprechende Icon im Variablenfenster ausgegeben wurden, sind Teil der Historie.
Durch Drücken des Löschen-Knopfes in der Werkzeugleiste kann der gesamte Inhalt des Grafikfensters einschließlich der Historie der ausgegebenen Objekte gelöscht werden. Die Ausgabeparameter werden dadurch nicht verändert.
Die Größe des Grafikfensters kann interaktiv durch Ziehen des Rahmens verändert werden. Darüber hinaus ist es mit Hilfe des Menüs Fenstergröße möglich, die Fenstergröße an die Größe des Bildes (bzw. ausgewählter Vielfache und Teiler) anzupassen. Der Fensterinhalt wird automatisch neu ausgegeben, wobei der gewählte Ausschnitt erhalten bleibt.
Zum Setzen der Ausgabeparameter des Grafikfensters stehen verschiedene Möglichkeiten zur Verfügung: das Kontextmenü des Grafikfensters, das Visualisierungsmenü im Hauptmenü, der Visualisierungsparameter-Dialog und die entsprechenden HDevelop-Operatoren wie dev_set_color, dev_set_line_width, dev_set_draw, usw. In Abhängigkeit von der Auswahlbox Sofort anwenden werden die Änderungen unmittelbar auf das zuletzt ausgegebene Bildobjekt angewendet oder sie gelten erst für alle zukünftigen Objekte. Im Gegensatz zu den Standard-HALCON-Fensteroperatoren gelten diese Einstellungen auch für alle Grafikfenster, die danach geöffnet werden.
Weitere Informationen über das dem HDevelop-Grafikfenster zugrundeliegenden HALCON-Fenster finden sich beim HALCON-Operator open_window. Für eine detaillierte Beschreibung des HDevelop-Grafikfensters sei auf das „HDevelop-Referenzhandbuch“ Kapitel Graphical User Interface -> Graphics Window sowie auf den „HDevelop User's Guide“ verwiesen.
Beim Export von HDevelop-Programmen ist zu beachten, dass der für diesen Operator generierte Code sich anders verhalten kann, als der entsprechende HALCON-Operator. Eine detaillierte Beschreibung der Besonderheiten, die beim Export von grafischen HDevelop-Operatoren zu beachten sind, findet sich im „HDevelop User's Guide“ im Kapitel Code Export -> General Aspects of Code Generation -> Graphics Windows.
Zeilenindex der linken oberen Ecke.
Defaultwert: 0
Typischer Wertebereich: 0 ≤ Row
Minimale Schrittweite: 1
Empfohlene Schrittweite: 1
Restriktion: Row >= 0
Spaltenindex der linken oberen Ecke.
Defaultwert: 0
Typischer Wertebereich: 0 ≤ Column
Minimale Schrittweite: 1
Empfohlene Schrittweite: 1
Restriktion: Column >= 0
Breite des Fensters.
Defaultwert: 512
Typischer Wertebereich: 0 ≤ Width
Minimale Schrittweite: 1
Empfohlene Schrittweite: 1
Restriktion: Width > 0 || Width == -1
Höhe des Fensters.
Defaultwert: 512
Typischer Wertebereich: 0 ≤ Height
Minimale Schrittweite: 1
Empfohlene Schrittweite: 1
Restriktion: Height > 0 || Height == -1
Hintergrundfarbe des neuen Fensters.
Defaultwert: 'black'
Fenster-Handle.
dev_close_window ()
read_image (For5, 'for5')
get_image_size (For5, Width, Height)
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
dev_display (For5)
dev_set_lut ('rainbow')
dev_display (For5)
stop ()
dev_set_lut ('default')
dev_display (For5)
stop ()
dev_set_part (100, 100, 300, 300)
dev_display (For5)
Sind die Parameterwerte korrekt, dann liefert dev_open_window den Wert 2 (H_MSG_TRUE). Andernfalls wird eine Fehlerbehandlung durchgeführt und ein Fehlercode zurückgeliefert.
dev_display, dev_set_lut, dev_set_color, dev_set_draw, dev_set_part
Foundation
| Operatoren |