I'm trying to calculate viewshed from a set a points (gpkg). From what I can understand, I first need to run the "create Viewpoints" algorithm. After I do it, a new layer named "output" is created, but I don't understand what my next step should be. If I try to simply run the viewshed command (from the visibility analysis plugin), it does not work, indicating that no viewpoints exist in that area.

What am I missing here? This used to be quite a simple task in versions 2.14 and 2.18.

As a workaround, I've tried manually creating observ_hgt and radius fields in the points layers and then runing the Viewshed command. It seemed to be working, but in the end I got the following error:

Traceback (most recent call last):
File "C:/Users/tiago/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\ViewshedAnalysis\algorithms\viewshed_raster.py", line 231, in processAlgorithm
interpolate = precision > 0)
File "C:/Users/tiago/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\ViewshedAnalysis\algorithms\modules\visibility.py", line 159, in viewshed_raster
dem.open_window (point["pix_coord"])
File "C:/Users/tiago/AppData/Roaming/QGIS/QGIS3\profiles\default/python/plugins\ViewshedAnalysis\algorithms\modules\Raster.py", line 347, in open_window
self.rst.ReadAsArray(*self.gdal_slice ).astype(float)
File "C:\PROGRA~1\QGIS3~1.2\apps\Python36\lib\site-packages\osgeo\gdal.py", line 1944, in ReadAsArray
callback_data = callback_data )
File "C:\PROGRA~1\QGIS3~1.2\apps\Python36\lib\site-packages\osgeo\gdal_array.py", line 263, in DatasetReadAsArray
callback_data = callback_data )
File "C:\PROGRA~1\QGIS3~1.2\apps\Python36\lib\site-packages\osgeo\gdal_array.py", line 339, in BandReadAsArray
buf_obj = numpy.empty([buf_ysize,buf_xsize], dtype = typecode)
ValueError: negative dimensions are not allowed


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.