<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style>
</head>
<body class='hmmessage'><div dir='ltr'>
Rieccomi qui..<br>Dopo mezza giornata di "spippolamento", ricerche su internet e altri consigli sono arrivato a creare la tabella che volevo nella bellezza di pocomeno di un minuto!!<br>Intanto vi ringrazio a tutti per il supporto e i consigli e poi vi chiederei un'ulteriore indizio.<br><br>Per la cronaca l'intersect l'ho fatto su Postgis con ottimi risultati testati<br>La nuova tabella è composta da due colonne di valori numerici che vanno sommati o sottratti tra di loro a seconda dei casi.<br>Operazione che son sicuro si può fare tramite postgis ma che purtroppo non riesco a trovare l'operatore adatto.<br><br>Qualche indizio? :)<br><br><div>> Date: Tue, 15 Nov 2011 19:25:50 +0100<br>> From: aperi2007@gmail.com<br>> To: gfoss@lists.gfoss.it<br>> Subject: Re: [Gfoss] Intersezione Spaziale MOLTO Pesante<br>> <br>>  >Vorrei sapere se c'è qualche guida/sito su internet in grado di <br>>  >aiutarmi a migliorare<br>>  >Qualche consiglio?<br>> <br>> La migliore guida che io conosco è il libro<br>> "postgis_in_action"<br>> <br>> Purtroppo non e' disponibile open su internet.<br>> <br>>  >Ho provato a scrivere questa queri in Postgis ma mi restituisce un <br>>  >errore (vado a memoria su quanto ho scritto)<br>>  ><br>>  >SELECT *<br>>  >FROM vector1<br>>  >WHERE ST_Intersections('vector1.the_geom','vector2.the_geom')<br>> <br>> <br>> Va un po' risistemata,<br>> cosi' non va bene,<br>> <br>> La condizione va dichiarata con<br>> ST_Intersects(vector1.geom,vector2.geom)=true<br>> <br>> ricordati di dichiarare degli indici spaziali sulle tabelle vector1 e <br>> vector2 cosi e' piu' veloce.<br>> <br>> Poi per estrarre il taglio sulle singole celle,<br>> io userei qualcosa tipo questa:<br>> <br>> ST_Multi(ST_CollectionExtract(ST_Force_Collection(ST_Intersection(a.geom,b.geom)),2)) <br>> <br>> <br>> La ST_Intersection(), in punti sfortunati puo' generare una collection. <br>> Non sempre succede, ma a volte si' e questo genera delle eccezioni che <br>> "complicano" la vita.<br>> Non e' un errore, ma una "magia nera" insita nella matematica "finita" <br>> dei computers.<br>> Fatto sta' che per compensarlo senza farsi troppi patemi una strada <br>> comoda e' quella sopra indicata.<br>> <br>> Lo forzi a generare sempre una collection, poi estrai la componente <br>> lineare della collection e la forzi a essere Multi.<br>> Questo ultimo è essenziale perche' a volte viene multi a volte no, e te <br>> devi sempre avere il medesimo tipo (multi appunto).<br>> <br>> Alla fine di quella strana formula avrai buttato via tutti i valori <br>> spuri generati dalla aritmetica finita e rimarra solo in cuore della <br>> geometria. Quello buono.<br>> <br>> Caso mai se hai tempo, prova a farlo anche sul tuo software commerciale<br>> e confronta i risultati, il confronto potrebbe fornire<br>> spunti interessanti :)<br>> <br>> <br>> Saluti,<br>> <br>> Andrea.<br>> _______________________________________________<br>> Iscriviti all'associazione GFOSS.it: http://www.gfoss.it/drupal/iscrizione<br>> Gfoss@lists.gfoss.it<br>> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss<br>> Questa e' una lista di discussione pubblica aperta a tutti.<br>> Non inviate messaggi commerciali.<br>> I messaggi di questa lista non rispecchiano necessariamente<br>> le posizioni dell'Associazione GFOSS.it.<br>> 540 iscritti al 4.11.2011<br></div>                                    </div></body>
</html>