Hi, As far I know the the Spatialite functions https://www.gaia-gis.it/gaia-sins/spatialite-sql-4.2.0.html by design work row by row and one input row returns one output row. Therefore DissolvePoints creates one row with a multipoint geometry, not several rows like ST_Dump does. You can discuss about that in the spatialite-users forum https://groups.google.com/g/spatialite-users. It is possible to extract the points from linestrings with SpatiaLite SQL by using NumPoints and then PointN in a loop, but such SQL is not possible to execute with ogrinfo/ogr2ogr. It is possible to do amazing things with ogr2ogr and SQL but it does make it the right tool for demanding ETL processes. Typically people turn to use Python at that point.
If you have a real need to extract points from a linestring by using only GDAL command line utilities, it should be possible to do in two steps. Create an interim file by using the Spatialite function DissolvePoints, and then run ogr2ogr with the -explodecollections option. -Jukka Rahkonen- -----Alkuperäinen viesti----- Lähettäjä: gdal-dev <gdal-dev-boun...@lists.osgeo.org> Puolesta Dan Jacobson via gdal-dev Lähetetty: perjantai 31. toukokuuta 2024 8.36 Vastaanottaja: Daniel Baston <dbas...@gmail.com> Kopio: gdal-dev@lists.osgeo.org Aihe: Re: [gdal-dev] OGR SQL CAST geometry example Alas, even for MULTIPOINT, as there are no facilities for extracting from aggregates, not even ST_Dump, in the end all one can do is $ ogrinfo 0.lines.kml -al | perl -nwle \ 'if(/LINESTRING.*\((.*)\)/){print for split /,/, $1}' -100.790056666679 36.3802233333333 1000 -100.790080000013 36.38531 1000 _______________________________________________ gdal-dev mailing list gdal-dev@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/gdal-dev _______________________________________________ gdal-dev mailing list gdal-dev@lists.osgeo.org https://lists.osgeo.org/mailman/listinfo/gdal-dev