ciao a tutti,
gentilmente volevo sapere se è stata implementata la funzione per calcolare la lunghezza 3d delle polilinee, almeno nelle ultime versioni... Ho provato con spatialite 4.4 scrivendo: "SELECT ST_3DLength(GeomFromText('LINESTRING(0 0 0,1 1 1)'))" ma ottengo NULL. Dove sbaglio? grazie! _______________________________________________ [hidden email] 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. 796 iscritti al 28/12/2017 |
Ho fatto un rapida prova con spatialite 4.4 e 4.5, stesso risultato:
SELECT ST_3DLength(GeomFromText('LINESTRINGZ(0 0 0,1 1 1)')) risultato: 1.732051 NB: devi uisare LINESTRINGZ saluti Il giorno 19 gennaio 2018 12:32, <[hidden email]> ha scritto: > ciao a tutti, > gentilmente volevo sapere se è stata implementata la funzione per > calcolare la lunghezza 3d delle polilinee, almeno nelle ultime versioni... > Ho provato con spatialite 4.4 scrivendo: > > "SELECT > ST_3DLength(GeomFromText('LINESTRING(0 0 0,1 1 1)'))" > ma ottengo NULL. > > Dove sbaglio? > grazie! > _______________________________________________ > [hidden email] > 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. > 796 iscritti al 28/12/2017 -- *Ing. Salvatore Fiandaca* *mobile*.:+39 327.493.8955 *m*: *[hidden email] <[hidden email]>* *C.F*.: FNDSVT71E29Z103G *P.IVA*: 06597870820 *membro QGIS Italia - http://qgis.it/ <http://qgis.it/>* *socio GFOSS.it - *http://gfoss.it/ *blog:* * https://pigrecoinfinito.wordpress.com/ <https://pigrecoinfinito.wordpress.com/> FB: Co-admin - https://www.facebook.com/qgis.it/ <https://www.facebook.com/qgis.it/>** <https://www.facebook.com/qgis.it/> * *FB: moderatore - **https://www.facebook.com/groups/GisItalia/ <https://www.facebook.com/groups/GisItalia/>** <https://www.facebook.com/groups/GisItalia/> * *TW: <http://goog_95411464>**https://twitter.com/totofiandaca <https://twitter.com/totofiandaca>* 43°51'0.54"N 10°34'27.62"E - EPSG:4326 “Se la conoscenza deve essere aperta a tutti, perchè mai limitarne l’accesso?” R. Stallman Questo documento, allegati inclusi, contiene informazioni di proprietà di FIANDACA SALVATORE e deve essere utilizzato esclusivamente dal destinatario in relazione alle finalità per le quali è stato ricevuto. E' vietata qualsiasi forma di riproduzione o divulgazione senza l'esplicito consenso di FIANDACA SALVATORE. Qualora fosse stato ricevuto per errore si prega di informare tempestivamente il mittente e distruggere la copia in proprio possesso. _______________________________________________ [hidden email] 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. 796 iscritti al 28/12/2017 |
On Fri, 19 Jan 2018 13:15:57 +0100, Totò Fiandaca wrote:
> Ho fatto un rapida prova con spatialite 4.4 e 4.5, stesso risultato: > la ST_3DLength() richiede il supporto della libreria librttopo, e quindi e' disponibile solo sulle versioni piu' recenti (appunto: 4.4 o 4.5) > SELECT > ST_3DLength(GeomFromText('LINESTRINGZ(0 0 0,1 1 1)')) > risultato: > 1.732051 > > NB: devi uisare LINESTRINGZ > forse qua e' opportuno puntualizzare: a differenza di PostGIS, SpatiaLite segue pedantemente le specifiche OGC, e queste prevedono che nelle espressioni WKT il tipo della geometria deve anche dichiarare esplicitamente le dimensioni supportate. n.b.: l'anomalia di PostGIS e' largamente giustificata dal fatto che e' nato prima che OGC formalizzasse definitvamente le specifiche per il WKT. giusto alcuni esempi banali: 2D (XY) ------------------- ST_GeomFromText('LINESTRING(0 0,1 1)') 3D (XYZ) ------------------- ST_GeomFromText('LINESTRING Z(0 0 0,1 1 1)') 2D + misura (XYM) ------------------- ST_GeomFromText('LINESTRING M(0 0 0,1 1 1)') 3D + misura (XYZM) ------------------- ST_GeomFromText('LINESTRING ZM(0 0 0 0,1 1 1 1)') naturalmente la regola si applica a tutti i tipi geometrici (POINT, POLYGON etc) n.b. secondo le specifiche OGC lo stile corretto e' quello che vede uno spazio tra il nome del tipo e le dimensioni, quindi p.es. "POLYGON ZM"; spatialite e' piu' tollerante, ed ammette un numero arbitrario di spazi (anche nessuno) tra i due elementi: "POLYGONZM" o "POLYGON ZM" sono perfetti sinonimi. ovviamente se c'e' conflitto tra la dichiarazione tipo+dimensioni ed il numero delle coordinate effettivamente presenti il parsing dell'espressione WKT fallira' tornando un bel NULL. esempio: SELECT ST_GeomFromText('LINESTRING(0 0 0,1 1 1)'); ----------- NULL ciao Sandro _______________________________________________ [hidden email] 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. 796 iscritti al 28/12/2017 |
Free forum by Nabble | Edit this page |