QGIS

Opening and visualizing Fmask in QGIS using a Python Console simple code

Today, I am going to present a gist that I developed that separates the masking information contained in a Fmask layer into different bands, to be visualized separately, in QGIS, using the Python Console of QGIS, also known as PyQGIS.

How to use a Virtual Layer instead of mosaicking rasters on QGIS

Today, I am presenting an alternative to raster mosaicking. It's all about the creation of a virtual raster. The main reason is that a virtual raster file uses much less hard disk space than a raster mosaic. If my rasters are 80KB then that is not a problem, but what if my rasters are each 1GB?

Splitting many polygons into (almost) equal parts using a simple script in PyQGIS, the Python Console of QGIS

Whatever is your geo-thing, you may have come across a Polygon which needed to be split in half, three parts, five parts (a hundred parts?). Possible applications of the split polygons are performing zonal statistics and terrain parceling (agriculture).

The wedge tool: drawing circular quadrants, rings, and related geometries in QGIS

The input layer should be a point layer, in which there should be a point. The coordinates of this point should be the center of the circle (or wedge, or semi-circle). The default width of the wedge is 45°, or one-eight of a circle and the default azimuth of the wedge is 0°. The outer radius is what we are used to simply call a radius of a circle, and the inner radius variable will only be filled when we want to draw a ring or donut-like geometry.

Saving temporary scratch layers using PyQGIS and visualizing them in your QGIS Project

Since, I have been saving the generated files in scratch layers whenever they are intermediate products, of auxiliary nature to the process I am running. This way, they are automatically deleted, and I don’t have to worry about them after executing my code. So, I decided to summarize how I save PyQGIS tool outputs in scratch layers, in case this is useful to someone out there!

Quick workaround for PyQGIS error “file is not a directory” when saving files

This error is especially common when you are re-running a code you have already ran in the past. Sometimes, as I am coding, I run an incomplete version of my code, just to know if the compiler/interpreter accuses any errors. The codes frequently include open and saving items. I thought that the mentioned file would be overwritten every time I ran a file saving in the QGIS Python Console.

Solved: QGIS 3.20 Python Console shows an error when running Clip Vector by Extent tool

ERROR 1: Attempt to write non-multipoint (POINT) geometry to multipoint shapefile. ERROR 1: Unable to write feature 0 from layer points_layer. ERROR 1: Terminating translation prematurely after failed translation of layer points_layer (use -skipfailures to skip errors)

Sampling raster values in predetermined points on QGIS

In this post, I show how to perform this process using two different tools, one of them is native of QGIS, and the other is a plugin available on the plugin repository. Then, I comment on how to sample the original raster using an interpolation such as cubic, cubic spline, or bilinear for the sampled value.

Trick to fix broken polygon geometries in QGIS 3.X

First, I will create a purposefully invalid geometry to apply the fix. Then, I will show you two ways to fix it. In one of them, I simply apply the “Fix geometries” native tool of QGIS. The second option I will show here is using the buffer tool. In this simple trick, I will show you how to create an infinitesimal buffer around my broken geometry, which ends up fixing it, but has its perks as well.

How to use QGIS 3.20+ to generate outstanding river and drainage net map representations

The first thing I thought when I saw the “Interpolated Line” symbology (I described this functionality in another post) was that it would be useful to represent drainage networks. Today, that is what we are exploring. Innovative ways to represent your river network to depict the watershed in an even more elegant and informative way, using the “Interpolated Line” functionality.