Name:
nph-startgifcrossxy (CGI-Skript)

Syntax:
nph-startgifcrossxy

Beschreibung:

nph-startgifcrossxy ist ein CGI-Skript, das von einem WWW-Server gestartet wird. Es wird durch die Environment-Variable QUERY_STRING gesteuert. Die Variable wird vom WWW-Server entsprechend einer WWW-Anfrage gesetzt.

nph-startgifcrossxy liefert ein gif-Bild, das anhand eines Quadrantenbildes vom Ventricle- oder Atrium-Gel erzeugt wird. Das neue Bild zeigt den ursprünglichen Quadranten, wobei ein Bereich durch ein Rechteck markiert wird. Das Rechteck kann mit Text versehen und in einer beliebigen Farbe gezeichnet werden. Die Quadrantenbilder können durch make_quadrant_images erstellt werden. Sie haben die Namen: atrium.quadrant[1-4] bzw. ventricle.quadrant[1-4] ([1-4]: eine Zahl im Bereich 1 bis 4).

Um die Daten (Rechteck, Text) in das Quadrantenbild einzuzeichnen, verwendet nph-startgifcrossxy das Programm gifcrossxy.


Von nph-startgifcrossxy erstelltes Quadrantenbild.

Bei nph-startgifcrossxy handelt es sich um ein CGI-Skript, das den No-Parse-Headers-Mechanismus benutzt. Das Skript wird vom WWW-Server gestartet und gibt anschließend seine Daten unter Umgehung des Servers direkt an den Client aus. Daraus resultiert, daß das Skript einen HTTP-Header generieren muß, was sonst der Server erledigt. Zur Ausgabe des Headers nutzt nph-startgifcrossxy das Programm cgiutils. cgiutils ist Teil der WWW-Server-Distribution CERND vom Cern.

Parameterübergabe

In welches Quadrantenbild das bereichsmarkierende Rechteck eingetragen werden soll, wird dem Skript in der Environment-Variable QUERY_STRING mitgeteilt. QUERY_STRING muß folgenden Aufbau besitzen, die Angaben in eckigen Klammern [] sind optional:

QUERY_STRING = w=bild&q=quadrant&k=x1,y1,x2,y2[&c=r,g,b][&text=string][&trans=bool]

bild
Kann den Wert atr oder ven haben. Bei bild = atr wird atrium.quadrant?.gif, bei bild = ven wird ventricle?.gif als Originalbild benutzt. ? wird durch die in quadrant übergebene Quadrantennummer ersetzt.

quadrant
Gibt den Quadranten an, der bearbeitet werden soll. quadrant darf die Werte 1, 2, 3 und 4 annehmen.

x1,y1,x2,y2
Geben die Eck-Koordinaten des Rechteckes an. (x1,y1) ist die obere linke Ecke und (x2,y2) die rechte untere Ecke des Rechtecks. x1, y1, x2 und y2 sind durch Zahlen zu ersetzen.

r,g,b
Zeichnet das Rechteck in der angegebenen Farbe. r,g und b sind numerische Werte, die den Rot-, Grün- bzw. Blauanteil angegeben. Sie müssen im Bereich [0;255] liegen. Die Angabe einer Farbe ist optional, als Zeichenfarbe ist rot voreingestellt.

string
Gibt den Text an, mit dem das gezeichnete Rechteck versehen werden soll. Die Angabe ist optional. Sollen innerhalb des Textes string Sonderzeichen Verwendung finden, dann müssen diese gemäß der URL-Spezifikation kodiert werden. Unter anderem muß ' ' (SPACE) durch '+' kodiert werden!

bool
bool kann den Wert true oder false annehmen. Im Fall trans=false wird der ausgegebene Text string mit einem schwarzen Untergrund versehen. Dies ist die Voreinstellung. Wirkt der Schriftuntergrund störend, dann kann er durch trans=true abgeschaltet werden. Die Angabe ist optional.

WWW-Schnittstelle

nph-startgifcrossxy wird nicht vom Benutzer selbst, sondern von einem WWW-Server als CGI-Skript gestartet, wenn von einem WWW-Client eine entsprechende Anfrage in Form eines URLs kommt. Der Server setzt die Environment-Variable QUERY_STRING anhand des URLs. Der URL liefert die Information über die Bearbeitung von atrium.quadrant[1-4].gif bzw. ventricle.quadrant[1-4].gif. Damit QUERY_STRING, wie unter «Parameterübergabe» beschrieben, gesetzt wird, muß der URL die Form haben (Angaben in eckigen Klammern [] sind optional):

http://host/cgi-verzeichnis/nph-startgifcrossxy?w=bild&q=quadrant&k=x1,y1,x2,y2[&c=r,g,b][&text=string][&trans=bool]

host
Name des Rechners auf dem der WWW-Server läuft.

cgi-verzeichnis
Verzeichnis in dem sich die CGI-Skripte des Servers befinden. Der Server muß dazu passend konfiguriert sein.

bild
Kann den Wert atr oder ven haben. Bei bild = atr wird atrium.quadrant?.gif, bei bild = ven wird ventricle?.gif als Originalbild benutzt. ? wird durch die in quadrant übergebene Quadrantennummer ersetzt.

quadrant
Gibt den Quadranten an, der bearbeitet werden soll. quadrant darf die Werte 1, 2, 3 und 4 annehmen.

x1,y1,x2,y2
Geben die Eck-Koordinaten des Rechteckes an. (x1,y1) ist die obere linke Ecke und (x2,y2) die rechte untere Ecke des Rechtecks. x1, y1, x2 und y2 sind durch Zahlen zu ersetzen.

r,g,b
Zeichnet das Rechteck in der angegebenen Farbe. r,g und b sind numerische Werte, die den Rot-, Grün- bzw. Blauanteil angegeben. Sie müssen im Bereich [0;255] liegen. Die Angabe einer Farbe ist optional, als Zeichenfarbe ist rot voreingestellt.

string
Gibt den Text an, mit dem das gezeichnete Rechteck versehen werden soll. Die Angabe ist optional. Sollen innerhalb des Textes string Sonderzeichen Verwendung finden, dann müssen diese gemäß der URL-Spezifikation kodiert werden. Unter anderem muß ' ' (SPACE) durch '+' kodiert werden!

bool
bool kann den Wert true oder false annehmen. Im Fall trans=false wird der ausgegebene Text string mit einem schwarzen Untergrund versehen. Dies ist die Voreinstellung. Wirkt der Schriftuntergrund störend, dann kann er durch trans=true abgeschaltet werden. Die Angabe ist optional.

Beispiel:

http://www.chemie.fu-berlin.de/cgi-bin/dhzb/nph-startgifcrossxy?w=atr&q=2&k=20,20,130,140&text=Markierung&c=0,255,0

nph-startgifcrossxy wird innerhalb der HEART-2DPAGE vom CGI-Skript picture verwendet. Das Skript bindet das erstellte gif-Bild als HTML-Inline-Image ein. Dies geschieht durch das HTML-Tag <IMG> in der Form:

<IMG SRC = "http://host/cgi-verzeichnis/nph-startgifcrossxy?w=bild&q=quadrant&k=x1,y1,x2,y2">


Zurück zum Inhaltsverzeichnis

Stefan Sander, sanderst@cs.tu-berlin.de, 10/95