Re: AW: AW: [Mapbender-users] Probleme mit dem Maßstab

Frank Glandorf f.glandorf at gmx.de
Wed Nov 22 13:19:37 EST 2006


Hallo Andreas,

ich muss noch einmal nerven :-(

Hab den Quellcode nun genau so übernommen und an die korrekten Stellen 
kopiert.

zu 2.) die Stelle wo ich das genau hinschreibe ist doch eigentlich egal, 
es wird ja nur ne Variable zugewiesen. Es muss nur irgendwo im 
JavaScript-Abschnitt geschehen

zu 3.) mit meiner ursprünglichen Stelle war ich dann ja doch etwas 
falsch. Das Problem ist bei mir, dass ich gar nicht in den if-Teil 
komme, da in document.overview.un_image bzw. 
document.overview.overview_image nix drin ist. Per alert-Ausgabe hab ich 
festgestellt, dass ich nur ein document-Objekt habe. Ich hab nicht 
einmal document.overview-Objekt. Hast du das irgendwie selber angelegt?

Mfg
Frrank

****

Fischer, Andreas schrieb:
>
> Hi Frank,
>
> zu 2.) Du hast natürlich recht. Nur hatte ich den neuen Teil zwischen 
> vorhandene script-tags eingefügt (s.u.; Ergänzungen in fett).
>
> Es ist m.E. notwendig, den JavaScript-Block zwischen den html-tags 
> einzufügen. Bei mir steht's im head. Etwa nach Zeile 56 (MB2.2.3). 
> Vielleicht ist Deine Variable immer leer, weil Dein JavaScript-Block 
> eben aus diesem Grund nicht ausgeführt wird
>
> <?php
> $gui_id = $_SESSION["mb_user_gui"];
> $con = db_connect($DBSERVER,$OWNER,$PW);
> db_select_db(DB,$con);
> $sql = "SELECT e_width,e_height, e_target FROM gui_element WHERE e_id 
> = 'overview' AND fkey_gui_id = '".$gui_id."'";
> $res = db_query($sql);
> $cnt = 0;
> echo "<script type='text/javascript'>";
> while($row = db_fetch_array($res)){
> echo "var mod_overview_width = " . $row["e_width"].";";
> echo "var mod_overview_height = " . $row["e_height"].";";
> echo "var mod_overview_target = '" . $row["e_target"]."';";
> $cnt++;
> }
> echo "var mod_overview_rank = ".$rank.";";
> if($cnt > 1){ echo "alert('overview: ID not unique!');";}
>
>
> *//Ersetzung des Overview durch ein Image
> if(isset($_REQUEST["un_image"])){
> echo "var un_image = '" . $_REQUEST["un_image"] ."';";
> }
> // Ende*
>
> echo "</script>";
> ?>
>
> zu 3.)  Bei mir habe ich die Einfügung hinter Zeile 360 (MB2.2.3) 
> vorgenommen. Könnte sein, dass die Zeilenangabe bei Dir nicht ganz 
> passt, da ich mitunter schon davor etwas verändert habe. Unmittelbar 
> davor steht aber das folgende CodeFragment (Ergänzungen in fett):
>
>     if(mb_log){
>     var tmp = eval(mb_log + "('" + newMapURL + "','" + ts + "')");
>     }
>     if(proxy){
>     newMapURL = proxy + escape(newMapURL) + "&" + <?php echo
>     "'".SID."'" ?>;
>     }
>
>     *//Ersetzung des Overview durch ein Image, sofern an un_mapOV.php
>     als GetVariable übergeben
>     if(mb_mapObj[i].frameName=='overview' && document.overview.un_image){
>     newMapRequest += document.overview.un_image;
>     }else{
>     newMapRequest += newMapURL;
>     }
>     //Ende - else-Bedingung ist Standard*
>
> ** 
> Ich hoffe, so klappt's jetzt.
> Gruß
> Andreas
>  
> Kreis Unna
> Dezernat II - Projektteam GIS
> (02303) 27-2507
> andreas.fischer at kreis-unna.de
>
> ** 
>
> -----Ursprüngliche Nachricht-----
> *Von:* Frank Glandorf [mailto:f.glandorf at gmx.de]
> *Gesendet:* Mittwoch, 22. November 2006 15:23
> *An:* users at mapbender.osgeo.org
> *Betreff:* Re: AW: [Mapbender-users] Probleme mit dem Maßstab
>
>     So, habs mal ausprobiert:
>
>     zu 1.) mein src Eintrag sieht nun so aus:
>     ../php/mod_mapOV.php?wms=0&overview_image=../daten/data/overview_image.png&sessionID
>
>     zu 2.) hab die Datei mapOV.php bearbeitet die sieht so aus: (Die
>     "script-type"-Zeilen waren glaub ich notwendig)
>
>         session_start();
>         require_once("../../conf/mapbender.conf");
>         if(isset($_REQUEST["wms"])){
>             $rank = $_REQUEST["wms"];
>         }
>         else{
>             $rank = 0;
>         }
>         *if(isset($_REQUEST["overview_image"])){
>             echo "<script type='text/javascript'>";
>             echo "var overview_image = '" .
>         $_REQUEST["overview_image"] ."';";
>             echo "</script type='text/javascript'>";
>             }*
>         ?>
>
>     zu 3.)  Könntest du mir vielleicht noch einmal schreiben wo genau
>     das eingefügt werden muss function setMapRequest(frameName) hab
>     ich gefunden und geht bei mir in Zeile 270 los. Ich denke mal, das
>     vor die letzte der drei schließenden Klammern (Zeile 353 oder?).
>     Aber egal wo ich das einfüge, in
>     "document.overview.overview_image" ist nix drin.
>
>     MfG
>     Frank
>
>
>     Fischer, Andreas schrieb:
>>     Hallo Frank,
>>     ich habe das Modul 'overview' genau in diese Richtung etwas abgewandelt.
>>     1. Im Aufruf (Datenfeld SRC) hänge ich den folgenden Paramter
>>     &un_image=../kreisunna/img/un_intranetOverview.gif& an den Eintrag
>>     ../php/mod_mapOV.php?wms=0&sessionID an
>>     2. Das Modul mapOV.php habe ich dahingehend ergänzt, dass eine Variable
>>     un_intranet gesetzt wird, wenn der entsprechende Paramter übergeben wurde
>>     	if(isset($_REQUEST["un_image"])){
>>     		echo "var un_image = '" . $_REQUEST["un_image"] ."';";
>>     	}
>>     3. Im  Modul setMapRequest(frameName) der Datei map.php bewirken die
>>     folgenden Zeilen, dass im Falle des Overviews und (!) der gesetzten Variable
>>     un_image nicht ein WMS angesprochen, sondern einfach der Pfad zur Bilddatei
>>     übergeben wird.
>>     	if(mb_mapObj[i].frameName=='overview' &&
>>     document.overview.un_image){
>>     		newMapRequest += document.overview.un_image;
>>     	}else{
>>     		newMapRequest += newMapURL;
>>     	}
>>     Vielleicht geht das alles auch schicker, aber es funktioniert und ist
>>     insofern flexibel als zwischen Bilddatei und WMS-Aufruf bei Bedarf und je
>>     nach GUI frei gewechselt werden kann.
>>
>>     Gruß
>>     Andreas 
>>
>>     Kreis Unna
>>     Dezernat II - Projektteam GIS
>>
>>     (02303) 27-2507
>>     andreas.fischer at kreis-unna.de
>>
>>
>>     -----Ursprüngliche Nachricht-----
>>     Von: Frank Glandorf [mailto:f.glandorf at gmx.de]
>>     Gesendet: Dienstag, 21. November 2006 17:45
>>     An: users at mapbender.osgeo.org
>>     Betreff: Re: [Mapbender-users] Probleme mit dem Maßstab
>>
>>
>>     Danke erstmal für die schnelle Antwort,
>>
>>     das mit dem eingebetteten Maßstab hab ich hinbekommen. Die 
>>     Maßstabsleiste wird nun also angezeigt und im "scalsselect"-Modul wird 
>>     nun einfach statt bei 1:100 eben 1:xxxxxx eingetragen, das sollte 
>>     hinhauen. Zwar so nicht ganz korrekt aber egal, darauf kommt es bei der 
>>     Anwendung nicht an.
>>
>>     Leider hab ich nun aber auch in der Übersichtskarte eine Maßstabsleiste 
>>     und das sieht ziemlich bescheiden aus. Es wäre ja nicht das Problem das 
>>     "overview"-Modul einfach wegzulassen und stattdessen eine simple Grafik 
>>     einzubinden, aber dann hab ich ja auch nicht die Funktionen die das 
>>     "overview"Modul bereitstellt.
>>
>>     Daher meine Frage: Kann ich das Modul irgendwo überlisten? Zum Beispiel 
>>     in der Form, dass ich in der "mod_mapOV.php" oder "mod_box1.js" enfach 
>>     statt der vom Mapserver abgefragten Karte eine feste Tiff-Datei 
>>     verlinke? Hab mir die Dateien gerade mal angeschaut, bin aber nciht so 
>>     schnell darauf gekommen welchen Befehl ich ändern muss.
>>
>>     MfG
>>     Frank
>>
>>
>>
>>     Uli Rothstein schrieb:
>>       
>>>     Hallo,
>>>
>>>     das clientseitig Maßstab-Modul kann bisher nur mit metrischen 
>>>     Projektionssystemen umgehen. Für die Anzeige des Maßstabs in 
>>>     Grad/Minuten besteht noch die Möglichkeit, den UMN serverseitig den 
>>>     Maßstabsbalken in die Karte zu rendern.
>>>
>>>     Viele Grüße
>>>     Uli Rothstein
>>>
>>>     Frank Glandorf schrieb:
>>>         
>>>>     Hallo,
>>>>
>>>>     ich denke ich habe einen Anfängerfehler in meinem Mapbender-Projekt:
>>>>
>>>>     Wenn ich meine map-Datei in einer Oberfläche einbinde, wird 
>>>>     Gesamtdeutschland im Maßstab 1:60 angezeigt. Auch der Maßstab unten 
>>>>     in der Karte ist dementsprechend falsch, sprich Deutschland ist nur 
>>>>     ein paar Meter breit. Als Koordinatensystem benutze ich WGS84 sprich 
>>>>     EPSG 4326. Hier mal der Ausschnitt aus meiner Mapdatei:
>>>>
>>>>           
>>>>>     # Start des Mapfiles
>>>>>
>>>>>     MAP
>>>>>
>>>>>     NAME "Deutschland"
>>>>>     IMAGETYPE PNG
>>>>>     EXTENT 5.5 47.0 15.2 55.5
>>>>>     UNITS DD
>>>>>     SIZE 480 480
>>>>>     STATUS ON
>>>>>     SHAPEPATH "data"
>>>>>     SYMBOLSET "symbols/symbols35.sym"
>>>>>     FONTSET "fonts/fonts.list"
>>>>>     CONFIG PROJ_LIB "C:/ProjektGIS/proj/nad/"
>>>>>
>>>>>       # Start des Web-Objektes
>>>>>       WEB
>>>>>         TEMPLATE  "template.html"
>>>>>         IMAGEPATH "../tmp/"
>>>>>         IMAGEURL  "../mapbender/tmp/"
>>>>>         MAXSCALE 1000000
>>>>>         MINSCALE 1
>>>>>         METADATA
>>>>>           "WMS_TITLE" "CarSIS-Deutschlandkarte"
>>>>>           "WMS_FEATURE_INFO_MIME_TYPE" "text/html"
>>>>>           "WMS_SRS" "epsg:4326"
>>>>>           "WMS_ONLINERESOURCE" 
>>>>>
>>>>>             
>>     "http://localhost/cgi-bin/mapserv?map=c:/ProjektGIS/mapbender/http/daten/map
>>     datei_deutschland.map&" 
>>       
>>>>>         END
>>>>>       END
>>>>>      
>>>>>       # Ende des Web-Objektes
>>>>>
>>>>>       # Start des Projektions-Objektes
>>>>>
>>>>>       PROJECTION
>>>>>         "init=epsg:4326"                                   # Karten 
>>>>>     sollen in WGS84 dargestellt werden
>>>>>       END
>>>>>
>>>>>       # Ende des Projektions-Objektes
>>>>>             
>>>>>     # Start der Referenzkarte
>>>>>
>>>>>     REFERENCE
>>>>>       IMAGE "img/ref.png"
>>>>>       EXTENT 5.5 47.0 15.2 55.5
>>>>>       STATUS ON
>>>>>       COLOR -1 -1 -1
>>>>>       OUTLINECOLOR 255 0 0
>>>>>       SIZE 150 117      END
>>>>>
>>>>>     # Ende der Referenzkarte
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>     # Start der Legendendefinition
>>>>>
>>>>>     LEGEND
>>>>>       STATUS ON
>>>>>       KEYSIZE 20 20
>>>>>       KEYSPACING 5 5
>>>>>       LABEL
>>>>>         TYPE TRUETYPE
>>>>>         FONT "ARIAL"
>>>>>         SIZE 8
>>>>>         COLOR 120 120 120
>>>>>       END # END OF LABEL
>>>>>     END
>>>>>
>>>>>     # Ende der Legendendefinition
>>>>>
>>>>>
>>>>>
>>>>>       # Start des Layer-Objektes des Deutschland-Tiff Bildes
>>>>>
>>>>>       LAYER
>>>>>       NAME 'Deutschland'
>>>>>       TYPE RASTER
>>>>>       DATA 'c:/ProjektGIS/mapbender/http/daten/data/deutschland_georef.tif'
>>>>>       STATUS ON
>>>>>       METADATA
>>>>>         "WMS_SRS" 'epsg:4326'
>>>>>         "WMS_EXTENT" '5.5 47.0 15.2 55.5'
>>>>>         "WMS_TITLE" 'Deutschland-Karte'
>>>>>         "WMS_FEATURE_INFO_MIME_TYPE" 'text/html'
>>>>>       END
>>>>>       END
>>>>>     END
>>>>>             
>>>>     Ich hoffe, jemand kann mir helfen.
>>>>
>>>>     MfG
>>>>     Frank
>>>>
>>>>
>>>>     ---------------------------------------------------------------------
>>>>     To unsubscribe, e-mail: users-unsubscribe at mapbender.osgeo.org
>>>>     For additional commands, e-mail: users-help at mapbender.osgeo.org
>>>>
>>>>           
>>>         
>>
>>     ---------------------------------------------------------------------
>>     To unsubscribe, e-mail: users-unsubscribe at mapbender.osgeo.org
>>     For additional commands, e-mail: users-help at mapbender.osgeo.org
>>
>>     ---------------------------------------------------------------------
>>     To unsubscribe, e-mail: users-unsubscribe at mapbender.osgeo.org
>>     For additional commands, e-mail: users-help at mapbender.osgeo.org
>>
>>       
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/mapbender_users/attachments/20061122/1d8aa5a6/attachment.html


More information about the Mapbender_users mailing list