AW: [Mapserver-DE] [PHP] Query von Shapes
Claudia Rodat
claudia at rodat.de
Fre Nov 12 12:50:22 CET 2004
Hallo Herr Broniewski,
leider habe ich für Ihr Problem auch noch keine 100% befriedigende Antwort,
aber bisher behelfe ich mir wie folgt :
- Anlage eines neuen "virtuellen" layer mit phpMapScript
- Aufbau eines "Expression"-Strings und Zuordnung zur neuen
"Ergebnis-Klasse" :
$expression="[dbfID]=1 or [dbfID]=2 or [dbfID]=n ..";
$newClassObj->setExpression($expression);
$newStyleObj=ms_newStyleObj($newClassObj);
$newStyleObj->color->setRGB(255 255 0);
$newStyleObj->outlinecolor->setRGB(0 0 0);
- Map zeichnen
Bisherige Erfahrungen zeigen, dass mindestens bis zu 200 Einzelobjekte recht
gut und schnell zu verarbeiten sind. Allerdings, und das ist jetzt meine
Frage an die mapserver-Gemeinde, konnte ich bei einem polygon-Layer keine
flächenhafte Kolorierung erzielen. Vielleicht fehlen mir da noch einige
Tricks bei den styles.
Ich hoffe, trotzdem geholfen zu haben.
Claudia Rodat
< // ____________________
dcr geoinformatic
Claudia Rodat
claudia at rodat.de <mailto:claudia at rodat.de>
mobil +49 (171) 49 23 225
fax +49 (7531) 45 41 20
fon +49 (7531) 73 145
Gabelsbergerstr. 11
D 78467 Konstanz
__________________________________ >
> -----Ursprüngliche Nachricht-----
> Von: Frank Broniewski [mailto:Frank.Broniewski at mnha.etat.lu]
> Gesendet: Donnerstag, 11. November 2004 13:34
> An: mapserver-de at freegis.org
> Betreff: [Mapserver-DE] [PHP] Query von Shapes
>
>
> Hallo zusammen
>
> Ich bekomme aus einer Datenbank Id's geliefert, die ihre Entsprechung in
> einer Spalte des .dbf's eines Shapefiles finden. Nun möchte ich mir die
> Shapes mit den passenden Id's mittels drawQuerymap() hervorheben lassen.
>
> Mein bisheriger Lösungsansatz fragt mittels queryByAttribute() das Layer
> nach den Id's ab. Dadurch kann ich mit drawQuerymap() mir _ein_ Shape
> hervorheben lassen, leider nur genau das letzte Shape, das dem Suchmuster
> entsprach.
>
> Ein Beispiel zur Verdeutlichung:
> Ich bekomme die ID's 4 und 5 von der Datenbank geliefert. Mittels
> queryByAttributes durchsuche ich das Layer nach id 4 und danach
> nach id 5 ->
> lediglich das Shape mit Id 5 ist hervorgehoben durch drawQueryMap().
>
> Gibt es eine Möglichkeit, dem Querystack Shapeids oder FeatureIds
> hinzluzufügen? Oder kann man mit queryByAttributes auch regular
> Expressions
> benutzen? Was bewirkt in diesem Zusammenhang SaveQuery beim Mapobjekt?
>
>
> Frank Broniewski
> Musée National d'Histoire et d'Art
> Section Préhistoire / Projet EPC
> Tél: +352 260 281-21
> 241, Rue de Luxembourg
> L-8077 Bertrange
>
>
>
____________
Virus checked by G DATA AntiVirusKit
Version: AVK 15.0.967 from 11.11.2004
Virus news: www.antiviruslab.com
This site is hosted by Intevation GmbH (Datenschutzerklärung und Impressum | Privacy Policy and Imprint)