[Mapserver-DE] point-layer mit mysql, php/mapscript und versch. symbolen?
Katja Friebel
k.friebel at gmx.de
Fre Dez 1 13:54:26 CET 2006
Hallo Kai,
das klappt wunderbar!
Allerdings habe ich noch zwei kurze Fragen:
- Warum ist die Darstellung von (z.B.gif-) Bildern, die als Symbol
definiert werden, möglich, nicht aber von eigens definierten Symbolen?
(in diesem Fall wird zwar ein Legendeneintrag erzeugt, aber in Karte und
Legende erscheint kein Symbol)
- Und warum wird für jedes Objekt ein Legendeneintrag erzeugt, und nicht
nur für jede Klasse? Verstehe ich es richtig, daß an dieser Stelle:
$that_layer[i]=ms_newLayerObj($map);
für jedes Objekt ein neues Layerobjekt erzeugt wird und das der Grund ist?
Danke und viele Grüße, Katja
>Hallo Katja,
>
>
>>Da ich sehr viele Kategorien vorliegen habe, ist das vermutlich die
>>kürzere Variante.
>>
>>
>
>Wenn Du sehr viele Kategorien in der mysql-Datei vorhälst, dann kannst Du die
>Ausgabe mittels unterschiedlicher Symbole auch automatisiert über ein Array
>erstellen.
>Das Skript dafür sieht dann wie folgt aus:
>
>function AddPoints ( $map, $qresult ) {
>
> $i = 0;
> foreach($qresult as $row) {
> $poi[$i] = ms_newPointObj();
> $ln[$i] = ms_newLineObj();
> $shp[$i] = ms_newShapeObj(MS_SHAPE_POINT);
> $poi[$i]->setXY($row[3],$row[2]);
> $ln[$i]->add($poi[$i]);
>
> $shp[$i]->add($ln[$i]);
> $shp[$i]->set(index, $row[0]);
>
>
> $array_kategorieeintraege=$row[7];
>
>
>
> if ($row[7]=="$array_kategorieeintraege") {
> $that_layer[i]=ms_newLayerObj($map);
> $that_layer[i]->set('status',MS_ON);
> $that_layer[i]->set ("name",$array_kategorieeintraege);
> $that_layer[i]->set ("type",point);
> $newclass=ms_newClassObj($that_layer[i]);
> $newclass->set ("name",$array_kategorieeintraege);
> $newstyle=ms_newStyleObj($newclass);
> $newstyle->set("symbolname", $array_kategorieeintraege);
> $that_layer[i]->addFeature( $shp[$i] );
>}
> $i++;
> }
>
> return;
>
>}
>
>Auf diese Art und Weise muss man nicht statisch die Symbole festlegen und
>spart jede Menge Arbeit.
>
>Viele Grüße, Kai
>--
>Dipl.-Geogr. Dipl.-Umweltw. Kai Behncke
>
>Institut für Geoinformatik und Fernerkundung (IGF)
>Universität Osnabrück
>Kolpingstr. 7
>49074 Osnabrück
>
>Raum: 01/308
>Tel.: +49 541 969-4450
>E-Mail: mailto:kbehncke at igf.uni-osnabrueck.de
>Web: http://www.igf.uni-osnabrueck.de
>
>_______________________________________________
>Mapserver-DE mailing list
>Mapserver-DE at freegis.org
>https://freegis.org/mailman/listinfo/mapserver-de
>
>
>
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: http://www.intevation.de/pipermail/mapserver-de/attachments/20061201/95c92d30/attachment.html
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)