[Gfoss] Come riaggregare tratti in contatto tra di loro.

Maurizio Trevisani maurizio.trevisani a gmail.com
Mer 13 Nov 2013 20:17:34 CET


Avevo fatto anche io le stesse prove, ottenendo gli stessi risultati.
Scrive Sandro Santilli

Mi risulta che se le linee non si "toccano" esattamente (ovvero
se hanno intersezioni interne, on non si toccano proprio) allora la
LineMerge non sara' in grado di giuntarle. E' un caso da considerare.

ma l'archivio in questione è correttamente "giuntato" (gli estremi snappano
correttamente): deriva da una vecchia coverage arc/info su cui erano
implementate routes, topologia, ecc.

Il risultato desiderato è stato raggiunto con il comando dissolve (
http://resources.esri.com/help/9.3/arcgisdesktop/com/gp_toolref/coverage_tools/dissolve_coverage_.htm)
in arcinfo workstation (lo strumento della mia gioventù :-)  )

Il fatto è che st_linemerge cerca di operare una dissolve senza sfruttare
una organizzazione dei dati topologica: l'obiettivo da perseguire è quello
di superare il concetto di tabella con geometrie, ed orientarsi verso una
serie di tabelle che implementino compiutamente la topologia: a partire da
quella (dove from-node, to-node, left-poly, right-poly sono informazioni
disponibili e calcolate a partire da dati "cleaned") diventa tutto
immensamente più semplice da affrontare.

Ciao,
Maurizio



Il giorno 12 novembre 2013 01:37, aperi2007 <aperi2007 a gmail.com> ha
scritto:

> Ciao Alessandro,
>
> ho provato con una variante del tuo suggerimento:
>
> usando spatialite ho provato a fondere tutto lo shapefile in un unico
> elemento multilinestring.
>
> con questo comando appunto:
>
> create table aggregato_all (pk_uid integer primary key);
> select AddGeometryColumn('aggregato_all','geometry',3003,'
> MULTILINESTRING','XY',1);
> insert into aggregato_all(geometry) select ST_Multi(ST_LineMerge(geometry))
> from tabella-dei-tratti;
>
> dopodiche' con la elemgeo li ho riscomposti.
> mi aspettavo che ritornasse le linee aggregate sui tratti in contatto per
> touch.
> Invece mi sono rispuntati i tratti originali. :/
>
> Qui forse fraintendo io il significato della LineMerge ?
>
> Ho provato anche con la ST_union, ma il risultato è analogo.
>
>
> Andrea.
>
>
> On 11/11/2013 22:01, a.furieri a lqt.it wrote:
>
>> On Mon, 11 Nov 2013 21:49:49 +0100, aperi2007 wrote:
>>
>>> Salve,
>>>
>>> Ho uno shapefile di tratti lineari,
>>>
>>> I quali tratti possono essere tra loro in contatto sugli estremi.
>>>
>>> Ad esempio:
>>>
>>>
>>> |----trattoA-----|-----trattoB------|--------trattoC-----|----trattoD---|
>>>
>>>
>>> Il risultato che vorrei ottenere è
>>> un nuovo tratto composto di
>>>
>>> |-----TrattoA + TrattoB + TrattoC + TrattoD -----|
>>>
>>> Conoscete un software o un plugin che riesca a riprodurre un tale
>>> risultato ?
>>>
>>>
>> Andrea,
>> questa l'hai provata ?
>>
>> SELECT ST_LineMerge(ST_Collect(geom))
>> FROM qualche_tavola
>> WHERE qualche_attributo IN ('TrattoA', 'TrattoB', 'TrattoC', 'TrattoD');
>>
>> ti dovrebbe funzionare tanto con PostGIS come con splite, visto che
>> e' supportata direttamente dalla GEOS.
>>
>> ciao Sandro
>> _______________________________________________
>> Gfoss a lists.gfoss.it
>> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
>> Questa e' una lista di discussione pubblica aperta a tutti.
>> I messaggi di questa lista non hanno relazione diretta con le posizioni
>> dell'Associazione GFOSS.it.
>> 666 iscritti al 22.7.2013
>>
>
> _______________________________________________
> Gfoss a lists.gfoss.it
> http://lists.gfoss.it/cgi-bin/mailman/listinfo/gfoss
> Questa e' una lista di discussione pubblica aperta a tutti.
> I messaggi di questa lista non hanno relazione diretta con le posizioni
> dell'Associazione GFOSS.it.
> 666 iscritti al 22.7.2013
>
-------------- parte successiva --------------
Un allegato HTML ? stato rimosso...
URL: <http://lists.gfoss.it/pipermail/gfoss/attachments/20131113/87598fe5/attachment.html>


Maggiori informazioni sulla lista Gfoss