gentilmente pongo un quesito, si tratta di splitting.
ho provato a splittare (tagliare) una serie di polilinee continue con un layer puntuale via SQL.
Ho due tabelle spatialite: edit_tubi(Linestring) ed edit_siti(Point)
Scritto la formula sottostante, prima faccio snappare le polilinee ai punti con una tolleranza, in seguito splitto:
UPDATE edit_tubi
SET geom= ST_SPLIT(ST_SNAP(edit_tubi.geom, (SELECT ST_COLLECT(geom) AS geom FROM edit_siti), 3), (SELECT ST_COLLECT(geom) AS geom FROM edit_siti));
La formula funziona però mi fa perdere la geometria… dove sbaglio?
gentilmente pongo un quesito, si tratta di splitting.
ho provato a splittare (tagliare) una serie di polilinee continue con un
layer puntuale via SQL.
Ho due tabelle spatialite: edit_tubi(Linestring) ed edit_siti(Point)
Scritto la formula sottostante, prima faccio snappare le polilinee ai
punti con una tolleranza, in seguito splitto:
UPDATE edit_tubi
SET geom= ST_SPLIT(ST_SNAP(edit_tubi.geom, (SELECT ST_COLLECT(geom) AS
geom FROM edit_siti), 3), (SELECT ST_COLLECT(geom) AS geom FROM
edit_siti));
La formula funziona però mi fa perdere la geometria... dove sbaglio?
r
Ciao,
usi Postgis o spatialite?
poi, imho, cerchi di aggiornare la geometria spezzandola?
spezzando una geometria si ottengono nuove geometrie, usando update cosa
aggiorna?
Ciao!
Uso Spatialite,
In effetti è vero, usando UPDATE aggiorna solo gli ID esistenti, mentre
spezzando, giustamente si devono generare nuovi ID. Non sono più riuscito a
creare la formula SQL giusta, ho dovuto fare "a manina" lo Spezza elementi.
La formula per lo Snap funziona a meraviglia se si devono snappare i vertici
delle polilinee ai punti, aggiornando la geometria lineare stessa.
In teoria il concetto è far prima snappare i vertici delle polilinee, e POI,
splittare. Perchè ST_SPLIT da solo non funziona.