Pflichtenheft XCTL-Steuerprogramm

erweitertes System

Hauptfunktion: Diffraktometrie/Reflektometrie

Teilfunktion: grafische Darstellung der Messergebnisse

Dokumentversion: 1.0  (8. August 2001)
Autor:      Bernhard Buss
Zustand:   fertig gestellt

Dieses Pflichtenheft beschreibt die erweiterte / geänderte Funktionalität der Teilfunktion 'grafische Darstellung der Meßergebnisse' der Diffraktometrie/Reflektometrie des XCTL-Systems vom Sommer 2001.

Inhalt

1. Überblick
2. Funktionale Beschreibung
2.1 Anzeige und Analyse von Meßdaten
2.2 Freie Wahl von Intensitäts- und Farbstufungen
2.3 Erstellen von Intensitätsverlaufsschnitten in Bitmapdarstellungen, Nachladen und Darstellen der Verlaufskurve
3. Benutzerschnittstelle
3.1 Dialogbox "Einstellungen für die Darstellung" beim Linescan
3.2 Dialogbox "Einstellungen für die Darstellung" beim Areascan
3.3 Der Modaldialog 'User-Intensitätsskalierung'
3.4 Dialogbox "Daten Erhebung"
4. Dateien
4.1 ini-Datei
4.2 dtn-Datei
5. Qualitätsbestimmung
6. Anmerkungen
7. Verwandte Dokumente
 
Erweiterung:
  1. Überarbeitung und Erweiterung des Dialogs Einstellungen für die Darstellung
  2. 256 statt 16 Farben in Bitmapdarstellungen verfügbar
  3. Mauscursorfunktionalität erhöht und Statuszeileninformationen erweitert in Bitmapdarstellungen
  4. freie benutzerdefinierte Intensitäts- und Farbwahlskalierung
  5. Überarbeitung / Erweiterung des Dialogs und der Funktionalität zur Daten Erhebung; Laden von dtn-Dateien im Linescan-Fenster zur Darstellung des Intensitätsverlaufs von Bitmapschnitten

1. Überblick

Hier wird nochmals darauf verwiesen, daß hier nur die erweiterte Funktionalität beschrieben wird, eine Verhaltensspezifikation vom Ausgangssystem liegt im Anhang B vor.

Die Teilfunktion grafische Darstellung der Messergebnisse ist Teil des Diffraktometrie / Reflektometrie-Gesamtvorganges. Im Dokument zum Gesamtvorgang ist sowohl die Einordnung der Teilfunktion und der fachliche Hintergrund beschrieben. Die Manipulation der grafischen Darstellung ist nur im Zusammenhang mit schon erfolgten Areascans und Linescans sinnvoll und dient zur Analyse der gewonnenen Messwerte.

1. Erweiterung

Mit der Dialogbox Einstellungen für die Darstellung sind alle Einstellungen der grafischen Darstellung änderbar.

Der Inhalt dieser Dialogbox wurde überarbeitet und erweitert. Neu hinzugekommen sind folgende Dialogelemente:

2. Erweiterung

In Bitmapdarstellungen sind im ursprünglichen XCTL-System nur 16 Farben verfügbar, so daß Intensitätsverläufe in 2 dimensionalen Darstellungen nur stark gerastert dargestellt werden. Mit dem Umstieg auf die 256-farbige Darstellung sind Intensitätsverläufe besser erkennbar, ein zu starker Kontrast bei den einzelnen Intensitätsstufungen tritt nicht mehr auf. Im ursprünglichen System war ein durchdachte Farbwahl nicht erkennbar.

Auch wurde zur Optimierung der Darstellung der Aspekt eines zu bildenden Farbkreises berücksichtigt. Der Farbkreis erstreckt sicht über die Farben Gelb, Rot, Lila, Blau, Türkis und Grün. Die Farbe Gelb entspricht einer Intensität in der Nähe des darzustellenden Intensitätsminimums und die Farbe Grün entspricht einer Intensität in der Nähe des darzustellenden Intensitätsmaximums ("Nähe" ist hier abhängig von den vom Nutzer eingestellten Intensitätsstufungen). Übersteigt die gemessene Intensität bei einem Koordinatenpaar das darzustellende Intensitätsmaximum, wird der betreffende Pixel geschwärzt. Die Farbdarstellung der letzten 3 Intensitätsstufungen vor dem darzustellenden Maximum erfolgt in Graustufen.

3. Erweiterung

Im Altsystem gab es die Möglichkeit sich mittels des Mauscursors im Koordinatensystem zu orientieren - nach einem Druck der linken Maustaste erschien in der Statuszeile die Koordinatenangaben des Mauscursors. Diese Funktionalität wurde um die Ausgabe der gemessenen Intensität und der Zeile und Spalte in der Rohdatenmatrix erweitert.

4. Eweiterung

Die Möglichkeit einer freien Intensitäts- und Farbskalierung in Bitmapdarstellungen (Raw-Matrix, RL Bitmap) wurde mit dem neuen Dialog User-Intensitätsskalierung und dem zugehörigem Fenster User-Skalierung Farbwahl geschaffen. Hier können Stufungen zur Intensitäts- und Farbdarstellung vom Nutzer innerhalb der Programmoberfläche frei vergeben werden, um vielleicht spezifische Intensitätsverläufe besser sichtbar zu machen.

5. Erweiterung

Im Zuge der Weiterentwicklung des Softwareprodukts wurde die Funktionalität um die Visualisierung von erstellten Bitmapschnitten ergänzt. Dazu wurde es notwendig, das Datenformat in der zugehörigen dtn-Datei zu ändern und gleichzeitig eine Möglichkeit der Auswahl der zu speichernden Daten hinsichtlich der Koordinatenart (normale Theta-Winkel, Omega-Winkel Angaben oder reziproke Einheiten qx und qz) zu bieten.

2. Funktionale Beschreibung

Zur Durchführung von Experimenten zur Diffraktometrie / Reflektometrie sowie zur Auswertung der gewonnenen Meßdaten benötigt man natürlich auch eine grafische Darstellung der Daten. Diese erleichtert die Auswertung der Experimente durch gezielte Darstellung von Abhängigkeiten der Parameter. Grundsätzlich wird auf eine Darstellung der Parameter in einem Koordinatensystem zurückgegriffen.

2.1 Anzeige und Analyse von Meßdaten

Die Analyse von Meßdaten ist mit mehreren Hilfsmitteln möglich - sinnvoll allerdings nur mit einer bereits durchgeführten Messung oder bereits nachgeladenen Meßdaten.

Mit der Überarbeitung des Dialogs Einstellungen für die Darstellung wurden weitere Funktionen in diesen Dialog integriert.

Der Dialog Einstellungen für die Darstellung.

Die Anzahl der vertikalen / horizontalen Hilfslinien und Achsbeschriftungen kann man sowohl im Linescan-Modus als auch im Areascan-Modus mit Hilfe der Texteingabefelder Einteilung für die Koordinatenachsen wählen (siehe auch nächste Abbildung).

Die weiter beschriebenen Funktionen sind nur im Areascan-Modus bei Bitmapdarstellungen auswählbar. Die Schaltfläche User-Skalierung ruft den Dialog User-Intensitätsskalierung und das Fenster User-Skalierung Farbwahl auf. Die Länge der Abzisse und Ordinate läßt sich mittels zweier Scrollbalken ändern, die Länge in Pixeln gibt ein zugehöriges Textausgabefeld an. Zwischen Graustufen- und Buntdarstellung der Intensitätsstufen kann man mit Hilfe des Checkbuttons Graustufen umschalten.

Ein Areascan-Fenster mit angeschalteter Graustufendarstellung der Intensitätssufen und Abzissen- und Ordinatenlänge von jeweils 350 Pixeln, der Darstellung von 8 Hilfslinien und Achsbeschriftungen.

Zur Analyse der im Koordinatensystem dargestellten Daten (alle Darstellungsarten) sind die Statuszeilenausgaben bezüglich der Mauscursorposition eine Hilfe. Da aus technischen Gründen an den Koordinatensystemachsen nur wenige Werte ausgegeben werden, ist die aktuelle Mauscursorposition, nach einem Klick der linken Maustaste im Koordinatensystem, in der Statuszeile ausgegeben. Durch das Drücken / Festhalten der linken Maustaste lassen sich Abstände im Koordinatensystem ermitteln, diese Werte werden in der Statuszeile ausgegeben. Durch die meist relativ feine Koordinatensystemaufteilung und der meist nur grob steuerbaren Maus, sind diesem Verfahren aus technisch / physikalischen Gründen Grenzen gesetzt.
Eine beträchtliche Erweiterung der Mauscursorfunktionalität stellen die neu hinzugefügten Statuszeileninformationen in Bitmapdarstellungen dar. In Raw-Matrix und RL-Bitmap Darstellungen kann an beliebiger Stelle mit dem Mauscursor innerhalb des Meßgebietes geklickt werden. In der Statuszeile erscheint die Information zur genauen Position im dargestellten Koordinatensystem.

In der Darstellungsart Raw-Matrix werden der Theta-Winkel und der Omega-Winkel ausgegeben (wobei in Klammern hinter dem jeweiligen Wert der Abstand vom Mauscursor zum nächstgelegenen Meßpunkt angegeben wird). Des weiteren werden der genaue Intensitätswert des Meßpunktes und die Zeile und Spalte des Meßpunktes in der Rohdaten-Matrix ausgegeben (siehe auch nächste Abbildung).

Das XCTL-Programm mit geöffnetem Areascan-Fenster im Darstellungsmodus Raw Matrix und Statuszeilenausgabe.

In der Darstellungsart RL-Bitmap werden qx und qz ausgegeben. Außerdem werden die zu dem Bildpunkt gespeicherten Werte für den Theta-Winkel, Omega-Winkel, die zum Meßpunkt zugehörige Intensität und die Zeile und Spalte des Meßpunktes in der Rohdaten-Matrix ausgegeben (siehe auch nächste Abbildung).

Das XCTL-Programm mit geöffnetem Areascan-Fenster im Darstellungsmodus RL-Bitmap und Statuszeilenausgabe.

In den beiden letzten Abbildungen ist der Umstieg auf eine Darstellung mittels 256 Farben und Farbkreis deutlich zu erkennen (die entsprechenden Bilddarstellungen des Ausgangssystems liegen in der Verhaltensspezifikation vor). Entsprechend den neuen Gegebenheiten hat sich die Intensitätslegende von einzeln abgebildeten Intensitätsstufen hin zu einem kontinuierlichem Farbverlauf verändert. Die Farbe eines Koordinatenpixels wiederspiegelt die an die Meßpunkt gemessene Intensität, zur Orientierung sind an die Farbverlauflegende einer Farbe entsprechende Intensitäten angegeben. Durch die Erhöhung der verfügbaren Farben wurden die Bilddarstellungen bezüglich des Intensitätsverlaufs deutlich lesbarer.

2.2 Freie Wahl von Intensitäts- und Farbstufungen

Der Dialog User-Intensitätsskalierung, die vergebenen Intensitäts- und Farbwerte entsprechen der Darstellung in der nächsten Abbildung

In obiger Abbildung ist der neue Dialog User-Intensitätsskalierung zu sehen. Der Dialog wird über die Schaltfläche User-Skalierung im Dialog Einstellungen für die Darstellung aufgerufen, welche nur in Bitmapdarstellungen verfügbar ist. Mit diesem Dialog ist eine benutzerspezifische Wahl von Intensitätsverlaufs- und Farbverlaufsstufungen möglich. Der Inhalt des Dialogfensters teilt sich in eine linke und rechte Spalte von benutzerspezifisch zu vergebenen Stufungen. Auf der linken Seite sind das Minimum und das Maximum der darzustellenden Intensität angegeben, dazwischen kann man 8 Grenzen von Intensitätsstufungen vergeben. Dabei muß eine kontinuierlich größer werdende Stufung gewährleistet sein. Es ist eine dem linearen Verlauf ähnliche Intensitätsstufung vordefiniert, die der Nutzer auch stets über die Schaltfläche Int. skalieren aufrufen kann.

Auf der rechten Seite des Dialogs sind Minimum und Maximum von zu vergebenen Farbwerten angegeben, dazwischen kann man 8 Grenzen von Farbstufungen vergeben. Die vergebene Zahl entspricht einem Farbwert aus dem generiertem Farbverlauf. Die entsprechende Grenze von Intensitätsstufungen wird mit dem vergebenen Farbwert in Bitmapdarstellungen dargestellt. Zwischen vergebenen Grenzen des Intensitäts- und Farbverlauf werden die Bereiche linear skaliert.

Um eine bessere Übersicht über die benutzerspezifisch gewählten Intensitäts- und Farbbereiche zu haben, wurde das Fenster User-Skalierung Farbwahl eingeführt.

Das Fenster User-Skalierung Farbwahl, die dargestellten Intensitäts- und Farbverläufe korrespondieren zu den Werten in der vorigen Abbildung.

Dieses Fenster öffnet sich automatisch beim Öffnen des Dialogs User-Intensitätsskalierung.

Auf der linken Seite des Fensters ist der generierte Farbverlauf für die Darstellung von Intensitätsverläufen zu sehen. An der linken Seite des Verlaufs sind die Grenzen des benutzerspezifischen Farbverlaufs angezeichnet, an der rechten Seite die Grenzen für reine Farben.

Auf der rechten Seite des Fensters sind die benutzerspezifisch gesetzten Farbgrenzen, mit zugehörigen Intensitätswerten explizit noch einmal gelistet.

Eine Raw-Matrix Bitmap Darstellung der Probe m4680 mit benutzerspezifisch vergebenen Intensitäts- und Farbstufungen, die eingestellten Werte zum Intensitäts- und Farbverlauf ersieht man aus den beiden vorigen Abbildungen.

2.3 Erstellen von Intensitätsverlaufsschnitten in Bitmapdarstellungen, Nachladen und Darstellen der Verlaufskurve

Die Problematik des Erstellens von Intensitätsverlaufsschnitten (Bitmapschnitten) ist im Programm noch einmal überarbeitet worden. Im Zuge der Fehlerbehebung und der Bereitstellung der Möglichkeit des Nachladens solcher Verlaufskurven im Linescan-Fenster wurde das Datenformat der dtn-Datei (enthält die archivierte Datenbasis eines Bitmapschnitts) umgestellt und der Dialog Daten-Erhebung um die Auswahl der zu speichernden Koordinatenart (normale Theta-Winkel / Omega-Winkel oder reziproke Einheiten qx und qz) erweitert.

Der Dialog Daten-Erhebung.

Der Dialog Daten-Erhebung ist nur im Areascan-Modus bei dargestellter Bitmap verfügbar, zu erreichen über einen Klick der rechten Maustaste im Areascan-Fenster. Die Anzahl der Meßpunkte gibt an, wieviel Meßpunkte auf der Geraden des Schnitts zu berechnen sind. Die Umgebung gibt an wie breit die Meßgerade sein soll, bzw. wieviel Intensitätsmeßpunkte in der Umgebung des errechneten Meßpunktes auf der Meßgeraden mit in die Berechnung der Intensität des Meßpunktes genommen werden (die berechnete Intensität wird über die Umgebungsmeßpunkte gemittelt). Im Punkt Datei kann man einen Dateinamen der Meßdatei im aktuellen Verzeichnis spezifizieren. Mit Hilfe Checkbuttons dX=0 und dY=0 kann man jeweils eine horizontale oder vertikale Meßgerade spezifizieren, egal wie später der Nutzer mit Hilfe des Mauscursors die Gerade abmisst. Dabei wird der x-Wert / y-Wert des Startpunktes der Geraden festgesetzt. Der Checkbutton RL Koor. dient zur Wahl der Reihenfolge der Koordinatenart in der Meßdatei. Bei angewählter Checkbox werden zuerst die reziproken Einheiten gespeichert, so kann man im Linescan-Fenster sich eine Intensitätsverlaufskurve mit reziproken Einheiten als Abzissenbeschriftung ansehen. Bei nicht angewählter Checkbox werden zuerst normale Theta-Winkel und Omega-Winkel Angaben gespeichert, so kann man im Linescan-Fenster sich eine Intensitätsverlaufskurve mit Omega-Winkel und Theta-Winkel als Abzissenbeschriftung ansehen.

Wenn man die Einstellungen an der Dialogbox beendet hat, wählt man die Schaltfläche OK. In der Statuszeile erscheint die Aufforderung zur Festlegung einer Meßgeraden. Mit gedrückter linker Maustaste fährt man vom gewünschten Start- zum Endpunkt und läßt die Maustaste wieder los. Unterstützende Informationen bezüglich der Position des Mauscursors im Koordinatensystem werden in der Statuszeile ausgegeben. Bei Erfolg oder Fehler wird eine entsprechende Dialogbox ausgegeben.

Zu beachten ist, das die Ordinatenwerte (Omega-Winkel oder qz) stets aufwärts sortiert und die Meßpunkte in dieser Reihenfolge in die Datei gespeichert werden (unabhängig vom gewählten Start- bzw. Endpunkt), dies ist nötig um eine korrekte Darstellung der nachgeladenen Intensitätsverlaufsschnitte im Linescan-Fenster zu gewährleisten.

Nun kann man im Linescan-Modus die generierte Datenbasis nachladen uns sich ein Bild des Intensitätsverlaufs machen. Dazu wählt man den Hauptmenüpunkt Datei->Nachladen und wählt seine gewünschte Datei aus.

Ein Linescan-Fenster mit Darstellung eines Intensitätsverlaufsschnitts.

Die Beschriftung der Abzisse erfolgt jeweils mit einem Koordinatenpaar. In der oberen Zeile steht der Omega-Winkel und in der unteren Zeile der zugehörige Theta-Winkel. Bei der Arbeit mit dem Mauscursor ist zu beachten, daß in der Stauszeile nur der Omega-Winkel (x-Achse) und die Intensität (y-Achse) ausgegeben wird.

3. Benutzerschnittstelle

3.1 Dialogbox 'Einstellungen für die Darstellung' beim Linescan

Im XCTL-Programm ist ein leeres Linescan-Fenster geöffnet, durch klicken mit der rechten Maustaste innerhalb des Fensters wird ein Untermenü aufgerufen. Über den Menüpunkt Darstellungs-Optionen kommt man zur Dialogbox Einstellungen für die Darstellung.

DIALOGBOX:

Der Modaldialog Einstellungen für die Darstellung im Linescan-Modus.

Steuerung

Die Dialogbox ist mausgesteuert, der Wechsel zwischen den Dialogelementen ist mittels TAB-Taste möglich. Eine Bestätigung der geänderten Werte innerhalb der Dialogbox ist mittels Return-Taste, Schaltfläche Neuzeichnen oder Schaltfläche OK möglich. Die Dialogbox schließt sich nach Betätigen der Schaltfläche OK, bzw. der Schaltfläche Abbrechen. Falls Bedienfehler auftreten wird eine entsprechende Fehlermeldung in einer einfachen Dialogbox ausgegeben, der als falsch erkannte Wert wird durch einen Standardwert ersetzt.

Eingabe/Ausgabe und Prüfung

- [Textfeld]: Maximum und Minimum der Intensität

Diese Textfelder sind durch den Nutzer editierbar. Beim Bestätigen der eingegebenen Werte wird eine Prüfung hinsichtlich der maximal und minimal zulässigen Werte (maximal 109, minimal 10-4) vorgenommen, des weiteren muß das Maximum größer als das Minimum sein. Die vergebenen Werte beeinflussen die dargestellte Intensitätsskala, das Minimum schließt die Intensitätsskala nach unten hin, das Maximum nach oben hin ab. Falls das Maximum kleiner als das Minimum ist, bzw. das Minimum größer als das Maximum, werden für das Maximum standardmäßig 104 und für das Minimum 10-3 vergeben.

- [Combobox]: Intensitätsskalierung

Mögliche Einstellungen sind Logarithmic und Linear. Die Einstellung Logarithmic bewirkt eine log10 verteilte Darstellung der Intensitätsskala und Linear bewirkt eine linear verteilte Darstellung der Intensitätsskala.

- [Pushbutton]: User-Skalierung

Diese Funktion ist im Linescan-Modus nicht anwählbar und ist für den Areascan-Modus vorgesehen.

- 2*[Radiobutton]: Abzisse umschalten

Diese Funktion ist im Linescan-Modus nicht anwählbar und ist für den Areascan-Modus vorgesehen. Die Abzisse wird stets mit den Winkelgrößen der Scanachse beschriftet.

- [Textfeld]: Bildpunkte X

Diese Funktion ist im Linescan-Modus nicht anwählbar und ist für den Areascan-Modus vorgesehen. Die Änderung der Größe des Anzeigefensters kann mittels gedrückter linker Maustaste auf dem Fensterrand und dem gleichzeitigem Ziehen der Maus erfolgen.

- [Textfeld]: Einteilung

Hier wird die Anzahl der vertikal gezeichneten Hilfslinien eingegeben, gleichzeitig wird an jeder Hilfslinie eine Achsbeschriftung vorgenommen. Gültig sind hier Werte von 2 bis15.

- [Textfeld]: Bildpunkte Y

Diese Funktion ist im Linescan-Modus nicht anwählbar und ist für den Areascan-Modus vorgesehen. Die Änderung der Größe des Anzeigefensters kann mittels gedrückter linker Maustaste auf dem Fensterrand und dem gleichzeitigem Ziehen der Maus erfolgen.

- [Textfeld]: Einteilung

Hier wird die Anzahl der horizontal gezeichneten Hilfslinien eingegeben, gleichzeitig wird an jeder Hilfslinie eine Achsbeschriftung vorgenommen. Gültig sind hier Werte von 2 bis15.

- [Combobox]: Darstellung als

Für den Linescan-Modus ist ausschließlich Curve zulässig.

- 3*[Checkbutton]: Größere Punkte , X-Y Skalierung , Graustufen

Diese Funktionen sind im Linescan-Modus nicht anwählbar und sind für den Areascan-Modus vorgesehen.

- 2*[Pushbutton]: Neuzeichnen und OK

Bewirkt eine Übernahme der eingestellten Werte in der Dialogbox und veranlasst ein Neuzeichnen des Koordinatensystems und des dargestellten Intensitätsverlaufs, bei Neuzeichnen bleibt das Dialogfenster geöffnet und bei OK wird es geschlossen. Da unsinnige Kombinationen von Einstellungen schon während des Einstellvorgangs selbst ausgeschlossen werden, braucht hier nichts weiter überprüft zu werden.

- [Pushbutton]: Abbrechen

Das Dialogfenster wird geschlossen, veränderte Werte werden nicht übernommen.

3.2 Dialogbox 'Einstellungen für die Darstellung' beim Areascan

Im XCTL-Programm wird ein leeres Areascan-Fenster geöffnet, durch klicken mit der rechten Maustaste innerhalb des Fensters wird ein Untermenü aufgerufen. Über den Menüpunkt Darstellungs-Optionen kommt man zur Dialogbox Einstellungen für die Darstellung.

DIALOGBOX:

Der Modaldialog Einstellungen für die Darstellung im Areascan-Modus.

Steuerung

Die Dialogbox ist mausgesteuert, der Wechsel zwischen den Dialogelementen ist mittels TAB-Taste möglich. Eine Bestätigung der geänderten Werte innerhalb der Dialogbox ist mittels Return-Taste, Schaltfläche Neuzeichnen oder Schaltfläche OK möglich. Die Dialogbox schließt sich nach Betätigen der Schaltfläche OK, bzw. der Schaltfläche Abbrechen. Falls Bedienfehler auftreten wird eine entsprechende Fehlermeldung in einer einfachen Dialogbox ausgegeben, der als falsch erkannte Wert wird durch einen Standardwert ersetzt.

Eingabe/Ausgabe und Prüfung

- [Textfeld]: Maximum und Minimum der Intensität

Diese Textfelder sind durch den Nutzer editierbar. Beim Bestätigen der eingegebenen Werte wird eine Prüfung hinsichtlich der maximal und minimal zulässigen Werte (maximal 109, minimal 10-4) vorgenommen, des weiteren muß das Maximum größer als das Minimum sein. Die vergebenen Werte beeinflussen die dargestellte Intensitätsskala, das Minimum schließt die Intensitätsskala nach unten hin, das Maximum nach oben hin ab. Falls das Maximum kleiner als das Minimum ist, bzw. das Minimum größer als das Maximum, werden für das Maximum standardmäßig 104 und für das Minimum 10-3 vergeben.

- [Combobox]: Intensitätsskalierung

Mögliche Einstellungen sind Logarithmic, Linear und User. Die Einstellung Logarithmic bewirkt eine log10 verteilte Darstellung der Intensitätsskala, Linear bewirkt eine linear verteilte Darstellung der Intensitätsskala und User bewirkt eine benutzerspezifisch verteilte Darstellung der Intensitätsskala. Zur Einstellung User wird auf im Dialog User-Intensitätsskalierung definierte User-Level zurück gegriffen, wenn hier keine Definition erfolgte wird eine vordefinierte Einstellung übernommen, welche dem linearen Intensitätsskalaverlauf ähnlich ist. Die hier auswählbaren Skalierungsarten werden automatisch angepaßt. Nur im Falle von Raw Matrix und RL-Bitmap als Darstellungstyp ist eine Wahl von User als Intensitätsskalierung sinnvoll und zulässig. Die Wahl von Logarithmic und Linear ist immer möglich. Im Falle von Curve als Darstellungstyp muß die Intensität auf der Ordinate skaliert werden, ansonsten wird die Intensität als Farbe der Koordinatenpixel skaliert.

- 2*[Radiobutton]: Abzisse umschalten

Die Umschaltung zwischen beiden Möglichkeiten folgt dem entweder / oder Prinzip. Die Umschaltung bewirkt, eine Umrechnung der Scan-Achse in Kanäle, bzw. umgekehrt. An der Abzisse werden Kanäle des Detektors, bzw. Winkel der Scan-Achse angetragen. Eine Umschaltung auf die Kanaldarstellung kann nur bei einer mit einem 1-dimensionalen Detektor aufgenommenen Probe erfolgen. Die Information hierzu wird aus dem Header der archivierten Datei übernommen.

- [Textfeld] / [Scrollbar]: Bildpunkte X

In Darstellungsmodus Curve sind diese Felder inaktiv, da sie nur für Bitmapdarstellungen relevant sind. Dann kann hier mittels des Scrollbalkens die Länge der Abzisse in 50er Schritten aufwärts bzw. abwärts geändert werden. Der voreingestellte Startwert ist 350, das mögliche Minimum liegt bei 200, das Maximum bei 700 Bildpunkten.

- [Textfeld]: Einteilung

Der hier vergebene Wert gibt die Anzahl der vertikalen Beschriftungen und Hilfslinien im Koordinatensystem an. Der Defaultwert ist 5, das Minimum liegt bei 2 Beschriftungen der Abzisse, bzw. vertikalen Hilfslinien. Das Maximum liegt bei 15 Beschriftungen der Abzisse, bzw. vertikalen Hilfslinien.

- [Textfeld] / [Scrollbar]: Bildpunkte Y

In Darstellungsmodus Curve sind diese Felder inaktiv, da sie nur für Bitmapdarstellungen relevant sind. Dann kann hier mittels des Scrollbalkens die Länge der Ordinate in 50er Schritten aufwärts bzw. abwärts geändert werden. Der voreingestellte Startwert ist 350, das mögliche Minimum liegt bei 200, das Maximum bei 700 Bildpunkten.

- [Textfeld]: Einteilung

Der hier vergebene Wert gibt die Anzahl der horizontalen Beschriftungen und Hilfslinien im Koordinatensystem an. Der Defaultwert ist 5, das Minimum liegt bei 2 Beschriftungen der Ordinate, bzw. horizontalen Hilfslinien. Das Maximum liegt bei 15 Beschriftungen der Ordinate, bzw. horizontalen Hilfslinien.

- [Combobox]: Darstellung als

Entsprechend dem hier eingestellten Modus müssen die Möglichkeiten der Intensitätsskalierung angepaßt werden (siehe Intensitätsskalierung). Für den Areascan-Modus ist Curve, Raw Matrix und RL-Bitmap zulässig.

- [Checkbutton]: Größere Punkte

Die Anwahl bewirkt eine vergrößerte Darstellung der Pixel innerhalb der Bitmap, da u. U. ansonsten Pixel nicht richtig zu erkennen sind. In der Darstellungsart Curve ist dieses Feld inaktiv.

- [Checkbutton]: X-Y Skalierung

Die Anwahl von X-Y Skalierung bewirkt die Streckung des dargestellten Untersuchungsareas, entweder voll auf Abzissen- bzw. auf Ordinatenlänge. In der Darstellungsart Curve und Raw Matrix ist dieses Feld inaktiv.

- [Checkbutton]: Graustufen

Die Anwahl bewirkt in einer Bitmapdarstellung eine Graustufendarstellung der Intensitätsverteilung, die Abwahl schaltet wieder zur farbigen Darstellung der Intensitätsverteilung um. Diese Funktion ist also nur in den Darstellungsarten Raw Matrix und RL-Bitmap verfügbar. Die Voreinstellung richtet sich nach dem Eintrag swPalette in der ini-Datei.

- 2*[Pushbutton]: Neuzeichnen und OK

Bewirkt eine Übernahme der eingestellten Werte in der Dialogbox und veranlasst ein Neuzeichnen des Koordinatensystems und des dargestellten Intensitätsverlaufs, bei Neuzeichnen bleibt das Dialogfenster geöffnet und bei OK wird es geschlossen. Da unsinnige Kombinationen von Einstellungen schon während des Einstellvorgangs selbst ausgeschlossen werden, braucht hier nichts weiter überprüft zu werden.

- [Pushbutton]: Abbrechen

Das Dialogfenster wird geschlossen, veränderte Werte werden nicht übernommen.

3.3 Der Modaldialog 'User-Intensitätsskalierung'

DIALOGBOX:

Der Modaldialog User-Intensitätsskalierung.

Diese Dialogbox öffnet sich nach Anklicken der Schaltfläche User-Skalierung im Modaldialog Einstellungen für die Darstellung. Sie ist nur im Areascan-Modus mit aktivierter Bitmap-Darstellungsart verfügbar. Sie dient zur freien Bearbeitung von Intensitätstufen (müssen zwischen Min- und Maxintensität liegen), die einer Farbe (0 entspricht Weiß und 255 entspricht Schwarz) zugeordnet werden. Zur besseren Veranschaulichung öffnet sich gleichzeitig mit diesem Modaldialog das Fenster User-Skalierung Farbwahl. Hier werden die im Dialog eingestellten Werte visualisiert. Zwischen den einzeln vergeben Intensitäts- und Farbstufen werden die Werte jeweils linear verteilt.

Steuerung

Die Dialogbox ist mausgesteuert. Der Wechsel zwischen den Dialogelementen ist mittels TAB-Taste möglich. Eine Bestätigung der geänderten Werte innerhalb der Dialogbox ist mittels Return-Taste oder der Schaltfläche OK möglich. Die Dialogbox schließt sich nach Betätigen der Schaltfläche OK, bzw. der Schaltfläche Abbruch.

Eingabe/Ausgabe und Prüfung

- [Textfeld]: Minimum Intensität

Dieses Feld ist nicht editierbar und hier ist der Wert des im Dialog Einstellungen für die Darstellung vergebenen Intensitätsminimums eingetragen.

- [Textfeld]: Minimum Farbwert

Dieses Feld ist nicht editierbar und hier steht stets der Wert 0.

- 8*[Textfeld]: Bereich 1-8 Intensität

Hier können Intensitätsstufen vergeben werden, wobei die Stufung der Größe nach erfolgen muß. Die hier vergebene Intensität wird einem Farbwert im generierten Farbkreis zugeordnet. Dazu steht rechts neben dem Intensitätstextfeld stets ein Farbwerttextfeld.

- 8*[Textfeld]: Bereich 1-8 Farbwert

Hier können Farbstufen vergeben werden, wobei die Stufung der Größe nach erfolgen muß. Die hier vergebene Farbwert wird einer Intenstät zugeordnet. Dazu steht links neben dem Farbwerttextfeld stets ein Intensitätstextfeld.

- [Textfeld]: Maximum Intensität

Dieses Feld ist nicht editierbar und hier ist der Wert des im Dialog Einstellungen für die Darstellung vergebenen Intensitätsmaximums eingetragen.

- [Textfeld]: Maximum Farbwert

Dieses Feld ist nicht editierbar und hier steht der Wert der maximal gleichzeitig zur Verfügung stehenden Farben. (i.A. 255 - 256 Farbwerte)

- [Pushbutton]: Int. skalieren

Bewirkt eine Neugenerierung des Inhalts der editierbaren Textfelder für die Intensitätsstufung. Dabei wird auf einen linearen Verlauf zwischen Intensitätsminimum und Intensitätsmaximum gezielt. Diese Funktion dient zur einfachen Überarbeitung der Intensitätsstufen, falls ein neues Intensitätsmaximum oder Intensitätsminimum im Dialog Einstellungen für die Darstellung vergeben wurde.

- [Pushbutton]: OK

Bewirkt eine Übernahme der eingestellten Werte in der Dialogbox und veranlasst ein Neuzeichnen des Inhalts des Fensters User-Skalierung Farbwahl und der Dialog wird geschlossen. Unsinnige Kombinationen von Einstellungen sind nicht zulässig, so müssen die vergebenen Werte stets aufsteigend zwischen Minimum und Maximum liegen. Ansonsten wird der vergebene Wert durch den vorher eingstellten Wert wieder überschrieben.

- [Pushbutton]: Abbrechen

Das Dialogfenster wird geschlossen, veränderte Werte werden nicht übernommen.

3.4 Dialogbox 'Daten Erhebung'

Die Dialogbox ist über das Untermenü (Klick rechte Maustaste -> Funktion Daten Erhebung) im Areascan-Fenster bei dargestellter Bitmap erreichbar. Mit Hilfe dieser Funktion kann man Intensitätsverlaufsschnitte in Bitmaps generieren und die errechneten Daten werden in einer Datei gespeichert. Diese Datei kann dann im Linescan-Modus nachgeladen werden und die gewonnenen Daten werden visualisiert.

DIALOGBOX:

Die Dialogbox Daten-Erhebung.

Steuerung

Die Dialogbox ist mausgesteuert. Eine Bestätigung der geänderten Werte innerhalb der Dialogbox ist mittels Return-Taste oder der Schaltfläche OK möglich. Die Dialogbox schließt sich nach Betätigen der Schaltfläche OK, bzw. der Schaltfläche Abbruch.

Eingabe/Ausgabe und Prüfung

- [Textfeld]: Meßpunkte

Dieses Textfeld ist für den Nutzer editierbar. Nach der Aufforderung zum Festlegen des Start- und Endpunktes der zu erstellenden Meßgeraden (erfolgt nach Betätigung des OK-Buttons) wird eine Meßgerade zwischen den Punkten erstellt, die Anzahl der Punkte wird hier festgelegt.

- [Textfeld]: Umgebung

Falls der Nutzer hier einen Wert ungleich 0 eingibt, werden zur Berechnung der gemessenen Intensitätswerte jeweils die Intensitätswerte von Umgebungspunkten links / rechts oder oben/unten (je nach Auflösung in Abzissen- / Ordinatenrichtung) hinzugezogen und zwischen ihnen das arithmetische Mittel gebildet.

- [Textfeld]: Datei

Der Name der zu erstellenden (zu überschreibenden) Datei (im aktuellen Verzeichnis) wird festgelegt.

- [Checkbox]: dx=0

Wenn die Checkbox angewählt ist, entsprechen alle x-Werte der Meßgeraden dem x-Wert des festgelegten Startpunktes. Dies entspricht einer Meßgeraden parallel zur Abzisse.

- [Checkbox]: dy=0

Wenn die Checkbox angewählt ist, entsprechen alle y-Werte der Meßgeraden dem y-Wert des festgelegten Startpunktes. Dies entspricht einer Meßgeraden parallel zur Ordinate.

- [Checkbox]: RL Koor.

Wenn die Checkbox angewählt ist, werden im generierten Meßdatenfile zuerst die RL-Koordinaten anstatt des Theta- und Omega-Winkels gespeichert. In der später möglichen Auswertung des Meßdatenfiles mit Hilfe des Linescan-Fensters werden an der Abzisse die RL-Koordinaten ausgegeben, wenn die Checkbox angewählt war. Ansonsten werden Theta- und Omega-Winkel ausgegeben.

- [Pushbutton]: OK

Die Dialogbox wird geschlossen, es folgt die Prozedur zur Festlegung von Start- und Endpunkt der benutzerdefinierten Meßgeraden (Information in der Statuszeile).

- [Pushbutton]: Abbruch

Das Dialogfenster wird geschlossen, veränderte Werte werden nicht übernommen.

4. Dateien

4.1 ini-Datei

Die Vergabe der Stufungen für eine benutzerspezifische Intensitäts- und Farbskalierung erfolgt jetzt über Dialoge im XCTL-Programm und nicht mehr über die ini-Datei. Dadurch sind folgende Einträge im Abschnitt [Areascan] überflüssig geworden:

Folgender Abschnitt ist komplett neu hinzugekommen.

Beispiel:

[UserScal]
xo=39
yo=12

Erklärung:

4.2 dtn-Datei

Eine dtn-Datei wird über die Dialogbox Daten Erhebung über die Teilfunktion Daten-Erhebung erstellt und enthält die Datenbasis eines benutzerdefinierten Intensitätsverlaufsschnitts.

Beispiel:
[Header]
Gerade zwischen 2 Punkten
FileType=3
Source = E:\DIPLOM\TEST\m4680.PSD
Omega Intens. Theta RLY RLX Delta
Omega aufsteigend geordnet
[Data]
0.06840000 1.60800004 0.25362092 0.01806014 -0.00001841 0.00343925
0.08182666 1.67999995 0.30164968 0.02148021 -0.00002587 0.01466073
0.09525333 2.51399994 0.34967843 0.02490028 -0.00003459 0.00926660
0.10868000 2.59430003 0.39770719 0.02832035 -0.00004457 0.00604571
0.12210667 4.41580009 0.44573594 0.03174040 -0.00005582 0.00687156
0.13553333 6.48269987 0.49376470 0.03516045 -0.00006833 0.00305743
0.14896000 22.66600037 0.54179345 0.03858048 -0.00008211 0.00482759
0.16238667 169.52000427 0.58982221 0.04200051 -0.00009715 0.01984608
0.17581334 11.55599976 0.63785096 0.04542052 -0.00011345 0.01771706
0.18924000 8.84780025 0.68587972 0.04884053 -0.00013102 0.00176713
0.20266667 9.71710014 0.73390847 0.05226051 -0.00014985 0.00397791
0.21609334 10.48799992 0.78193723 0.05568049 -0.00016995 0.01610732
0.22952000 15.68500042 0.82996598 0.05910044 -0.00019131 0.00110540
0.24294667 18.61899948 0.87799474 0.06252039 -0.00021393 0.00659621
0.25637334 59.69400024 0.92602350 0.06594031 -0.00023782 0.01266627
 

Erklärung:

5. Qualitätsbestimmung

Produktqualität

Sehr gut

Gut

Normal

Nicht relevant

Funktionalität

 

*

 

 

Zuverlässigkeit

 

 

*

 

Benutzbarkeit

 

*

 

 

Effizienz

 

 

*

 

Änderbarkeit

 

 

*

 

Übertragbarkeit

 

 

*

 

Die Qualitätsfaktoren Änderbarkeit, Übertragbarkeit und Effizienz lassen sich nur noch sehr bedingt beeinflussen. Denn auf ein gutes Architekturdesign und Programmimplementation läßt sich nur teilweise bei Neuimplementierung Rücksicht nehmen, hier muß man allzu oft auch bisherige Interna berücksichtigen.

Die Zuverlässigkeit der neuen Programmfunktionalität sollte normalen Qualitätsansprüchen genügen, es besteht keinerlei Gefahr für die Hardware oder Laborapparatur bei unzuverlässigem Verhalten.

Die Funktionalität und Benutzbarkeit sollte "Gut" sein, die neue Funktionalität sollte sich gut in die bisherige Funktionalität eingliedern.

6. Anmerkungen

Dieses Pflichtenheft stellt eine Weiterentwicklung der Verhaltensspezifikation aus dem Reverse Enginnering Prozeß dar (ürsprüngliche Verhaltensspezifikation). Der zur Erarbeitung der Pflichten benötigte Zeitraum beläuft sich von November 2000 bis Juni 2001. Die Definition wurde von mir erstellt, in Konsultationen und in Korrespondenz mit Hilfe von E-Mail wurden Anforderungen mit den Physikern besprochen.

Eine erste Zusammenkunft mit Mitarbeitern des Physik-Fachbereiches fand am 19.7.2000 statt. Hier kristallisierte sich die zukünftige Zusammenarbeit mit den Physikern Dr. M. Schmidbauer und T. Panzner heraus. Es wurden Fehler seitens der grafischen Darstellung und mehrere Wünsche zur Funktionalitätserweiterung diskutiert.

Das nächste Treffen fand am 23.11.2000 statt. Hier präsentierte ich die von mir behobenen Fehler seitens der grafischen Darstellung, weiterhin wurde noch einmal tiefgründiger nach den Erweiterungswünschen gefragt. Meine Gesprächspartner waren Dr. Schmidtbauer und Dr. Hanke. Die Verhaltensspezifikation für das ursprüngliche System wurde im Januar 2001 fertig gestellt.

Am 11.12.2001 schrieb ich eine E-Mail an Dr. Schmidtbauer, mit der Bitte mir geeignete Testdaten und zugehörige, von Physikern auf Richtigkeit überprüfte, grafische Darstellungen der Meßdaten zu schicken. Am 6.2.2001 erhielt ich die Antwort von T. Panzner. Eine Programmversion, die meine Erweiterungen beinhaltete wurde am 17.5.2001 an Dr. Schmidtbauer übergeben, gleichzeitig lieferte ich eine meinen Programmteil betreffende Dokumentation ab. Hierbei handelte es sich um vorläufige Versionen, die von Physikern hinsichtlich ihrer Funktionalität und Korrektheit überprüft werden sollten. Am 6.6.2001 fand ein Treffen statt, um Ergebnisse eines Integrationstests und den Inhalt der Nutzerdokumentation zu diskutieren. Meinen Problembereich betreffend brachte diese Besprechnung allerdings keine Ergebnisse. Da es Probleme mit dem Test des XCTL-Softwarepakets auf einem Laborrechner gab, fand am 12.7.2001 ein Treffen im Labor des Physikinstituts mit T. Panzner statt. Ich installierte das Modul XC010701 mit Datum vom 11.7.2001 und wies noch einmal auf die Wichtigkeit eines abschließenden Integrationstests hin.

Am 19.7.2001 traf die Projektgruppe zur Diffraktometrie / Reflektometrie und ich noch einmal mit T. Panzner zusammen. Es wurde ein erster Integrationstest durchgeführt, der ein positives Ergebnis hervorbrachte. Am 21.8.2001 wurde das korrekte Verhalten der Software durch einen umfassenden Integrationstest bestätigt. Es wurden noch 2 kleinere Fehler gefunden, die noch behoben wurden (siehe Fehlerliste). Am 30.8.2001 erfolgte die offizielle Übergabe des Programmpakets an die Physik-Arbeitsgruppe.

 

7. Verwandte Dokumente