Ciao a tutti/e
ho creato una serie di mappe vettoriali (bacini idrografici) con tutta una serie di attributi (nome, area, quota media ecc...). Vorrei creare un'unica mappa con l'unione di tutti i vettoriali. La procedura che sto seguendo è la seguente: Lanciare “v. patch” settando “copy also the attribute table”. Alcune aree vettoriale possono presentare ai confini alcune sovrapposizioni, per cui alcune aree del “patch” risultante potrebbero presentare valori negativi. Per cui lanciare “v.clean” sul “patch” settando le seguenti modalità: type = point, line, boundary, centroid, area tool = break, rmdupl, bpol, rmarea thresh = 1,1,1,2000 Dopo di che lanciare "v.to.db" che ricalcolerà nuovamente le aree. Mi succede però che il "patch" risultante non mi "carica" alcune aree vettoriali da me create. Quando poi vado a lanciare il "clean", vedo che alcune aree che nel "partc" non sono presenti, nel "clean" sono presenti ed alcune aree presenti nel "patch", nel "clean" non mi risultano essere presenti. ...nono so se mi sono spiegato. qualcuno ha qualche idea?? grazie marco Cerchi la casa dei tuoi sogni? Consulta la mappa dei cantieri aperti su tiscali.casa.ithttp://tiscali.casa.it/vendita?partner=Tiscali _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 527 iscritti al 7.7.2011 |
Ambiente di lavoro: MS4W version 2.3.1mapscript 5.2.1Apache 2.2.10 PHP 5.2.6 pmapper 4.0 beta2Obiettivo:filtrare tutti i layer della mappa in base ai campi DAL(datainizio) e AL (datafine). Gestendo ormai lo storico di molti layer vogliamo che l'utente possa scegliere la data alla quale visualizzare la mappa. Tentativi: infiniti..... Abbiamo provato ad inserire un filtro all'interno del file globals.php: file che gestisce l'inizializzazione dell'oggetto $map. Il codice è il seguente: //Codice preesistente /** * INITIALIZE MAP */ $PM_MAP_FILE = $_SESSION['PM_MAP_FILE']; $map = ms_newMapObj($PM_MAP_FILE); //Codice aggiunto $datafiltro = $_REQUEST['datafiltro']; if(isset($datafiltro)){ $layer = $map->getLayerByName('edifici1'); $layer->setFilter("([DAL] <= $datafiltro AND [AL] >= $datafiltro )"); $map->save($PM_MAP_FILE);//Funzione che sovrascrive il .map; se viene omessa il filtro non funziona $map->draw(); } //Fine codice aggiunto Il codice funziona e filtra per date in base al parametro che gli viene passato da url. Il problema è che ad ogni richiesta sovrascrive il .map. Vorremmo fare in modo che si possa inoltrare il filtro senza che venga sovrascritto il .map, per evitare che si creino conflitti tra processi concorrenti. Pia Miccoli tecnico Gis Ufficio Sic Comune di Fano tel. 0721-887746 Comune di Fano - www.comune.fano.ps.it --------------------------------------------------------------------------------------------------------------- Questo messaggio è destinato unicamente alle persone sopra indicate e le informazioni contenute sono da considerarsi strettamente riservate. Se avete ricevuto questo messaggio per errore, siete pregati di rispedirlo al mittente. Grazie. _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 527 iscritti al 7.7.2011 |
è questo è il bello dello smanettamento ;) il discorso potrebbe essere giusto con qualche pecca nel senso che una volta che aggiornate la versione di pmapper dovete riaggiustare il global.php... ma male di poco :) l'oggetto $map che genera nel global.php pmapper se lo porta dietro in tutto il resto degli cript che usa... non c'è bisogno che salviate il map file tutte le volte e non dovete neanche lanciare il metodo draw() che lo lancia lui nello script cuore di pmapper pmap.php alla fine quando rende l'ìimmagine di mappa quindi il codice basta che sia così: $datafiltro = $_REQUEST['datafiltro']; if(isset($datafiltro)){ $layer = $map->getLayerByName('edifici1'); $layer->setFilter("([DAL] <= $datafiltro AND [AL] >= $datafiltro )"); } e il tutto dovrebbe funzionare... facci sapere se va ciao W -- Walter Lorenzetti phD email: [hidden email] skype: aiki74 Cell: (+39) 347-6597931 Tel+Fax: (+39) 0588 85021 Viale Giuseppe Verdi n. 24, 51016 Montecatini Terme,Pistoia P.IVA 01686280478 Italy _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 527 iscritti al 7.7.2011 |
Il 28 settembre 2011 09:16, Walter Lorenzetti <[hidden email]> ha scritto:
> Ciao Pia, > > Tentativi: infiniti..... > > è questo è il bello dello smanettamento ;) > > //Codice preesistente > /** > * INITIALIZE MAP > */ > $PM_MAP_FILE = $_SESSION['PM_MAP_FILE']; > $map = ms_newMapObj($PM_MAP_FILE); > > //Codice aggiunto > $datafiltro = $_REQUEST['datafiltro']; > if(isset($datafiltro)){ > $layer = $map->getLayerByName('edifici1'); > $layer->setFilter("([DAL] <= $datafiltro AND [AL] >= $datafiltro )"); > $map->save($PM_MAP_FILE);//Funzione che sovrascrive il .map; se viene > omessa il filtro non funziona > $map->draw(); > } > //Fine codice aggiunto > > il discorso potrebbe essere giusto con qualche pecca nel senso che una volta > che aggiornate la versione di pmapper dovete riaggiustare il global.php... > ma male di poco :) > > l'oggetto $map che genera nel global.php pmapper se lo porta dietro in tutto > il resto degli cript che usa... non c'è bisogno che salviate il map file > tutte le volte e non dovete neanche lanciare il metodo draw() che lo lancia > lui nello script cuore di pmapper pmap.php alla fine quando rende > l'ìimmagine di mappa > > quindi il codice basta che sia così: > > $datafiltro = $_REQUEST['datafiltro']; > if(isset($datafiltro)){ > $layer = $map->getLayerByName('edifici1'); > $layer->setFilter("([DAL] <= $datafiltro AND [AL] >= $datafiltro )"); > } > > e il tutto dovrebbe funzionare... Anche secondo me non serve risalvare il mapfile e ridisegnare la mappa. Il dubbio che mi viene è se Pmapper usa la keyword FILTER per altre cose.. Ciao L. -- Luca Casagrande twitter: lucacasagrande _______________________________________________ Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione [hidden email] http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss Questa e' una lista di discussione pubblica aperta a tutti. Non inviate messaggi commerciali. I messaggi di questa lista non rispecchiano necessariamente le posizioni dell'Associazione GFOSS.it. 527 iscritti al 7.7.2011 |
Free forum by Nabble | Edit this page |