[Gfoss] spatialite

a.furieri a lqt.it a.furieri a lqt.it
Lun 28 Maggio 2018 10:50:22 CEST


On Mon, 28 May 2018 00:09:47 -0700 (MST), pigreco wrote:
> Ho fatto tante prove e tra queste ho utilizzato anche il casting con 
> esito
> negativo,
>

negativo in che senso ? che ti tornava dei NULL ?
puoi essere piu' preciso ?


> in questo caso e con questo database funziona bene. grazie
>
> deduco che il dataset di partenza può far cambiare l'esito del 
> casting.
>

assolutamente no; il database di partenza non puo' avere nessuna 
influenza.
le funzioni di Casting lavorano in memoria; prendono un geometry-blob,
verificano se e' valido e di tipo coerente con il casting richiesto, 
dopo
di che ritornano un nuovo geometry-blob al cui interno e' stato 
cambiato
il valore del GeometryType conformemente alla richiesta.

naturalmente alcune operazioni di casting sono sempre proibite; non 
puoi
p.es. trasformare un Point in un Linestring o un Linestring in un 
Polygon,
perche' i due tipi non sono coerenti. e le operazioni di casting 
proibite
ritornano sempre un NULL.

puoi invece trasformare qualunque SinglePart nel corrispondente 
MultiPart,
cosi' come puoi trasformare qualsiasi roba in una GeometryCollection.
puoi anche provare a trasformare un MultiPart (o una Collection) in
un SinglePart, ma solo ed esclusivamente se contiene al suo interno
una singola geometria elementare del tipo indicato.

ciao Sandro


Maggiori informazioni sulla lista Gfoss