2

I’m trying to clean the snapping errors from my line layer. I have a problem with running the tool and the outputs. During the run, many errors and warnings arise. I tried to use the tool in both UTM and WGS84 CRM , and also change the threshold and tolerance parameters.

Working on QGIS 3.18.3 version.

the snap distance (0.028 meter)

this is the snap error (scale 1:2)

the log output:

QGIS version: 3.18.3-Zürich QGIS code revision: 735cc85be9 Qt version: 5.11.2 GDAL version: 3.1.4 GEOS version: 3.8.1-CAPI-1.13.3 PROJ version: Rel. 6.3.2, May 1st, 2020 Processing algorithm… Algorithm 'v.clean' starting… Input parameters: { '-b' : False, '-c' : False, 'GRASS_MIN_AREA_PARAMETER' : 0.0001, 'GRASS_OUTPUT_TYPE_PARAMETER' : 0, 'GRASS_REGION_PARAMETER' : None, 'GRASS_SNAP_TOLERANCE_PARAMETER' : 0.03, 'GRASS_VECTOR_DSCO' : '', 'GRASS_VECTOR_EXPORT_NOCAT' : False, 'GRASS_VECTOR_LCO' : '', 'error' : 'TEMPORARY_OUTPUT', 'input' : 'Lines.shp', 'output' : 'TEMPORARY_OUTPUT', 'threshold' : '0.03', 'tool' : 1, 'type' : [0,1,2,3,4,5,6] }

Attempting to use v.external for direct layer read g.proj -c wkt="C:/Users/Hanita/AppData/Local/Temp/processing_jRqlra/976ace9cd85e46a9aab846203bb108ac/crs.prj" v.external input="Lines.shp" output="vector_60ace3585a3222" --overwrite -o g.region n=39.798470915721985 s=39.79419787555197 e=-104.70319073330543 w=-104.71076847379005 v.clean input=vector_60ace3585a3222 type="point,line,boundary,centroid,area,face,kernel" tool="snap" threshold="0.03" output=outputf19465d7dae74a13b455c5001ff252e0 error=errorf19465d7dae74a13b455c5001ff252e0 --overwrite v.out.ogr type="auto" input="outputf19465d7dae74a13b455c5001ff252e0" output="C:\Users\Hanita\AppData\Local\Temp\processing_jRqlra\8494e58144e3435b9ae50f92146715ce\output.gpkg" format="GPKG" --overwrite v.out.ogr type="auto" input="errorf19465d7dae74a13b455c5001ff252e0" output="C:\Users\Hanita\AppData\Local\Temp\processing_jRqlra\d474e62fedac469ca82d7feddbe2b7b9\error.gpkg" format="GPKG" --overwrite Starting GRASS GIS... WARNING: Concurrent mapset locking is not supported on Windows Cleaning up temporary files... Executing <C:\Users\Hanita\AppData\Local\Temp\processing_jRqlra\grassdata\grass_batch_job.cmd> ... C:\Users\Hanita\Documents>chcp 65001 1>NUL C:\Users\Hanita\Documents>g.proj -c wkt="C:/Users/Hanita/AppData/Local/Temp/processing_jRqlra/976ace9cd85e46a9aab846203bb108ac/crs.prj" Default region was updated to the new projection, but if you have multiple mapsets g.region -d should be run in each to update the region from the default Projection information updated C:\Users\Hanita\Documents>v.external input="Lines.shp" output="vector_60ace3585a3222" --overwrite -o ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. Over-riding projection check Building topology for vector map vector_60ace3585a3222@PERMANENT... Using external data format 'ESRI Shapefile' (feature type 'linestring') Registering primitives... 3 primitives registered 18 vertices registered v.external complete. Link to vector map <vector_60ace3585a3222> created. C:\Users\Hanita\Documents>g.region n=39.798470915721985 s=39.79419787555197 e=-104.70319073330543 w=-104.71076847379005 C:\Users\Hanita\Documents>v.clean input=vector_60ace3585a3222 type="point,line,boundary,centroid,area,face,kernel" tool="snap" threshold="0.03" output=outputf19465d7dae74a13b455c5001ff252e0 error=errorf19465d7dae74a13b455c5001ff252e0 --overwrite ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. WARNING: Column 'id' : type int8 (bigint) is stored as integer (4 bytes) some data may be damaged WARNING: Column 'id' : type int8 (bigint) is stored as integer (4 bytes) some data may be damaged Note: In latitude-longitude coordinate system specify threshold in degree unit -------------------------------------------------- Tool: Threshold Snap vertices: 0.03 -------------------------------------------------- Copying features... 33..66..100 WARNING: Unable to create index WARNING: Unable to copy table for layer 1 from vector_60ace3585a3222@PERMANENT to WARNING: Failed to copy attribute table to output vector map Rebuilding parts of topology... Building topology for vector map outputf19465d7dae74a13b455c5001ff252e0@PERMANENT... Registering primitives... -------------------------------------------------- Tool: Snap line to vertex in threshold Reading features... Snap vertices Pass 1: select points 0..33..66..100 Snap vertices Pass 2: assign anchor vertices 5..11..16..22..27..33..38..44..50..55..61..66..72..77..83..88..94..100 Snap vertices Pass 3: snap to assigned points 0..33..66..100 -------------------------------------------------- Rebuilding topology for output vector map... Building topology for vector map outputf19465d7dae74a13b455c5001ff252e0@PERMANENT... Registering primitives... -------------------------------------------------- Building topology for error vector map... Building topology for vector map errorf19465d7dae74a13b455c5001ff252e0@PERMANENT... Registering primitives... C:\Users\Hanita\Documents>v.out.ogr type="auto" input="outputf19465d7dae74a13b455c5001ff252e0" output="C:\Users\Hanita\AppData\Local\Temp\processing_jRqlra\8494e58144e3435b9ae50f92146715ce\output.gpkg" format="GPKG" --overwrite ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. WARNING: Unable to determine input map's vector feature type(s). ERROR: Key column <> not found C:\Users\Hanita\Documents>v.out.ogr type="auto" input="errorf19465d7dae74a13b455c5001ff252e0" output="C:\Users\Hanita\AppData\Local\Temp\processing_jRqlra\d474e62fedac469ca82d7feddbe2b7b9\error.gpkg" format="GPKG" --overwrite ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. ERROR 1: Can't load requested DLL: C:\OSGEO4~1\bin\gdalplugins\ogr_MSSQLSpatial.dll 126: The specified module could not be found. WARNING: No attribute table found -> using only category numbers as attributes Exporting 3 features... 33..66..100 v.out.ogr complete. 3 features (Line String type) written to (GPKG format). C:\Users\Hanita\Documents>exit Execution of <C:\Users\Hanita\AppData\Local\Temp\processing_jRqlra\grassdata\grass_batch_job.cmd> finished. Cleaning up default sqlite database ... Cleaning up temporary files... Execution completed in 1.65 seconds Results: {'error': 'C:\Users\Hanita\AppData\Local\Temp\processing_jRqlra\d474e62fedac469ca82d7feddbe2b7b9\error.gpkg', 'output': 'C:\Users\Hanita\AppData\Local\Temp\processing_jRqlra\8494e58144e3435b9ae50f92146715ce\output.gpkg'}

Loading resulting layers Algorithm 'v.clean' finished

2
  • 1
    Have you searched for the errors? If so, what did you find out? – Erik May 26 at 11:37
  • ... ogr_MSSQLSpatial.dll seems to be missing, perhaps an incomplete installation? – markusN Jun 10 at 7:20
2

If I understand, your Lines.shp is in Longitude/Latitude WGS84, so units are degrees. The threshold you chose, 0.03, is about 3 kilometers. The gap between the lines, that you showed in the screen shot, is less than 3 centimeters. So nothing to snap...

I suggest to reproject the Lines.shp to a new shapefile (or preferably geopackage) in UTM, then choose a snap threshold of 0.01 (= 1 cm)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.