[Mapserver-DE] Layerkontrolle
Oliver Wesp
wesp at gdv.com
Mon Feb 16 15:47:19 CET 2004
Hallo,
das mit dem Layerstatus ist ein ziemlicher Klassiker. Aber Du hast die
Sachlage im Prinzip richtig erkannt. Alle Layer die Du über eine
Layersteuerung ansprechen willst sollten den Status ON bekommen. Damit
sind sie für den Nutzer an- und abzuschalten. Die Frage welche dieser
Layer beim ersten Kartenaufruf sichtbar sein sollen, steuerst Du über
den ersten Request.
Status DEFAULT ist gut für Layer, die sich der Userkontrolle entziehen
aollen. Zum Beispiel Hintergrundkarten, die der Nutzer nicht abschalten
soll. Da du diese auch nicht explizit anfordern musst, würde ich die aus
der Layersteuerung rausnehmen. Macht ja keinen Sinn, werden ja eh' immer
angezeigt. Weshalb diese Layer auch umgekehrt bei der Steuerung der
Checkboxen ignoriert werden.
Und den tieferen Sinn von Status OFF wissen wenn überhaupt nur die
Mapserver-Götter. Und auch die vermutlich nicht so genau. Mit einem
abgeschalteten Layer kann man nämlich genau gar nichts mehr tun. Nicht
anzeigen, nicht abfragen, nichts. Ist allerdings in der Tat ganz
praktisch, wenn man mal einen Layer rausschmeißen will ohne gleich den
ganzen Mapfile-Code zu löschen oder auszukommentieren.
Das ganze sollte konsistent funktionieren. Genaueres zu den von Dir
beschriebenen Phänomenen kann man bestimmt sagen, wenn Du uns einen
Blick auf Dein Mapfile und Dein Template erlauben würdest.
gruß
Oliver
Thomas Lynen wrote:
> Hallo zusammen
> Ich bin gerade dabei das MapServer Tutorial ( http://hypnos.cbs.umn.edu/cgi-bin/mapserv40?map=/data/projects/tutorial/example2-2.map&layer=states&mode=browse ) durchzuarbeiten und bin auf folgenden "Auffälligkeit" gestossen.
>
> Wenn ich eine Layerkontrolle einbauen so ich jeden einzelnen Layer im HTML Template eintragen den ich benutze bzw den ich in der Layerkontrolle drin haben will.
>
> <input type="checkbox" name="layer" value="POLY1" [POLY1_check]>
>
> Im Mapfile geb ich den entsprechenden Layer den Namen POLY1
>
> Wenn ich nun im MapFile im Layerbereich STATUS OFF eintrage, so wird beim starten der Layer nicht angezeigt und ich kann ihn mir bei Bedarf "dazuholen".
> Aber wenn ich STATUS DEFAULT Eintrage dann sehe ich ihn zwar beim starten aber
> 1. Kann ich ihn nicht mehr ausschalten und
> 2. Wird die Checkbox beim starten nicht "gechecked"
>
> Wenn alle Layer als STATUS OFF eingetragen werden, funktioniert alles so wie es sollte ( naja aber wenn will man schon beim starten alle Layer nicht anzeigen ? ), die Layer aber die mit STATUS DEFAULT gestartet werden, können nicht ausgeschaltet werden und der Checkbox bleibt beim start immer ungechecked.
>
> Wenn ich STATUS ON benutze wird es noch merkwürdiger.
> Je nachdem ob ein Layer oberhalb oder unterhalb eines anderen Layers in der Map Datei steht wird es angezeigt oder auch nicht.
> D.h. manchmal lässt er sich garnicht anzeigen, manchmal wird er immer angezeigt und manchmal funktionieren bestimmte Kombinationen einwandfrei.
> Es scheint aber ein gewisses Schema dahinterzustecken. Es ist aber nicht so das die gleiche Kombination mal läuft und mal nicht läuft.
>
> Gibts es da bestimmte Dinge die man da beachten muss bzw hat jemand ähnliche Erfahrungen gemacht oder liegt der Fehler bei mir ?
> ( so überschaubar wie mein Test Mapfile ist schliesse ich das eigentlich aus, aber man weiss ja nie )
>
> Gruss
>
> Thomas
>
>
>
>
> _______________________________________________
> Mapserver-DE mailing list
> Mapserver-DE at freegis.org
> https://freegis.org/mailman/listinfo/mapserver-de
>
>
>
--
Dipl.-Geogr. Oliver Wesp
Gesellschaft fuer geografische Datenverarbeitung
Binger Strasse 49-51
D-55218 Ingelheim
fon: +49 6132 714818
fax: +49 6132 714828
http: www.gdv.com
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)