<br><br><div class="gmail_quote">2010/9/29 Andrea Peri 2007 <span dir="ltr">&lt;<a href="mailto:aperi2007@gmail.com">aperi2007@gmail.com</a>&gt;</span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Trovo le geometrie errate.<br>
<br>
<br>
A questo punto qual&#39;è la strada migliore per correggere gli errori?<br>
<br>
Le devo riguardare una a una, per trovare tipo nodi sovrapposti,<br>
intersezioni su se stesso, ecc?<br>
</blockquote>
<br>
La scelta dipende da una serie di fattori.<br>
<br>
Per prima cosa occorre sapere che versione di postgis hai, cosi&#39; si capisce che strumenti hai a disposizione.<br></blockquote><div> </div><div>Sono su un server Linux installatomi da terzi, come anche postgres 8.4. A memoria ho postgis 1.4.</div>
<div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Poi quante sono le geometrie da correggere, perhce&#39; se sono poche comunque conviene farlo a mano, se tale soluzione e&#39; ammissibile.<br>
Infine valutare che margine di correzione si ha. Infatti, correggendo le geometrie spesso si spostano vertici, se ne creano di nuovi o si rimuovono<br>
alcuni dei vertici esistenti.<br>
Questo pero&#39; comporta degli spostamenti che potrebbero inficiare certe esigenze (eventuali) di precisione oppure di coerenza topologica, di completa copertura del territorio,<br></blockquote><div><br></div><div>Dunque, le mie geometrie sono poligoni che riprendono strati archeologici, quindi sono muri, buche, pavimenti, strati di terra, ecc., che si sovrappongono ovviamente tra di loro. Qui le geometrie non valide sono circa 60, quindi me la cavo bene.</div>
<div>Un altro invece contiene caratterizzazioni degli strati, ciottoli, grumetti di calce, piccoli carboni, che essendo per lo più simboli convenzionali, vengono copiati e incollati, sparpagliando eventuali errori della geometria. Infatti qua ho qualcosa come 900 poligoni errati. </div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
e cosi&#39; via...<br>
<br>
Se fosse possibile farsi un dump della tabella con le geometrie incriminate (non e&#39; detto che postgis lo consenta essendoci geometrie invalide).<br>
Io proverei a fare cosi&#39;:<br>
<br>
Io mi installarei in pochi minuti una istanza di pg con sopra la postgis 2.0.0 (trovi un compilato della 2.0.0 per windows nella sezione sperimentale del sito postgis).<br>
Ci caricherei sopra la tabella via dump.</blockquote><div><br></div><div>Siccome il backup della tabella si ferma appena trova le geometrie errate, ho notato che posso incollare tutto il mio livello su uno shape e salvarlo tranquillamente. A questo punto basta che ricarichi con spit lo shape in pg e fare le prove che mi consigli tu con postgis 2.0.0 su un PC.</div>
<div><br></div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">poi lancerei il comando</blockquote><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<br>
create table geom_corrette as<br>
select<br>
        st_makevalid(geom) as geom_new<br>
from tabella<br>
where<br>
        st_isvalid(geom)=false<br>
;<br>
<br>
e dovrei aver finito.<br>
<br>
infatti tale comando trasformerebbe i self-intersection in multipolygons e li butterebbe in tale tabella.<br>
Mi esporto la tabella (che ora e&#39; buona) con qhis e il gioco e&#39; fatto.<br></blockquote><div><br></div><div>Ok, nei prossimi giorni proverò e vedo cosa ricavo; ovviamente posterò qua i risultati. Avere un metodo in lista (ma anche nel wiki) per correzioni future potrebbe fare comodo ad altri dummy come me.</div>
<div><br></div><div>Ciao e grazie! </div></div>