Once upon a time, there was a man called Giovanni (totally fictional name, by any means related to NaturalGIS ’s CEO and Open Source advocate, Giovanni Manghi ). He was a daily QGIS power user and he loved the software, but he had an itch… Something was troubling him. As any other main character of the traditional tales, instead of looking away, he decided to accept the quest and solve it.…
As a self-taught PyQGIS developer, one of my main hurdles has always been to prepare the development environment for PyQGIS. An environment that allow me to run PyQGIS scripts, helps me code faster by providing PyQGIS highlighting and autocompletion, enables me to debug my plugins and scripts as they run, etc… I have been a user (and even a… “cof cof”… maintainer)…
As I was preparing a QGIS Project to read a database structured according to the new rules and technical specifications for the Portuguese Cartography , I started to configure the editing forms for several layers, so that: Make some fields read-only, like for example an identifier field. Configure widgets better suited for each field, to help the user and avoid errors. For example, date-time files…
QGIS recipes have been available on Conda-forge for a while, but now, that they work for the three main operating systems, installing QGIS from Conda is s starting to become a very reliable alternative to other QGIS distributions. Anyway, let’s rewind a bit… What is Conda? Conda is an open source package management system and environment management system that runs on Windows, macOS…
A year ago I have asked QGIS’s community what were their favourite QGIS new features from 2015 and published this blog post . This year I decided to ask it again. In 2016, we add the release of the second long-term release (2.14 LTR), and two other stable versions (2.16 and 2.18). 2016 was again very productive year for the QGIS community , with lots of improvements and new features landing…
(aka Features that ArcGIS Desktop users might not know that exists) From time to time, I read articles comparing ArcGIS vs QGIS. Since many of those articles are created from an ArcGIS user point of view, they invariably lead to biased observations on QGIS lack of features. It’s time for a QGIS user perspective, so bare with me on this (a bit) long, totally and openly biased post . "Hello,…
With the release of the first long term release (2.8 LTR), and two other stable versions (2.10 and 2.12), 2015 was a great (and busy) year for the QGIS community , with lots of improvements and new features landing on QGIS source code. As a balance, I have asked users to choose wich were their favorite new features during 2015 (from the visual changelogs list). As a result I got the following Top…
Today I needed to create a view in PostGIS that returned the vertexes of a multi-polygon layer. Besides, I needed that they were numerically ordered starting in 1, and with the respective XY coordinates. It seemed to be a trivial task – all I would need was to use the ST_DumpPoints() function to get all vertexes – if it wasn’t for the fact that PostGIS polygons have a duplicate vertex (the…
Now and then I get too many map symbols (points) in the same place, and I thought how nice it would be if we could drag n’ drop them around without messing with their geometries position, just like we do with labels. That thought gave me an idea for a cool hack. Choose your point layer and start by creating two new fields called symbX and symbY (Type: Decimal number; Size: 20; Precision: 5).…
I had the need to add columns with the coordinates of polygons centroids. I came up with the following expressions to calculate X e Y, respectively: [code] xmin(centroid($geometry)) ymin(centroid($geometry)) [/code] The expression seems quite simple, but it toke me some time before I realize that, not having a x(geometry) and y(geometry) functions, I could use the xmin() and ymin() to get the…
Recently I had the need to add labels to features with very close geometries, resulting in their collision. Using data-defined override for label’s position (I have used layer to labeled layer plugin to set this really fast) and the QGIS tool to move labels, it was quite easy to relocate them to better places. However, in same cases, it was difficult to understand to which geometry they…
In my last post , I have tried to show how I used QGIS 2.6 to create a map series where the page’s orientation adapted to the shape of the atlas features. This method is useful when the final scale of the maps is irrelevant, or when the size of the atlas elements is similar, allowing one to use a fixed scale. On the other hand, when using a fixed scale is mandatory and the features size are…
As always, the new QGIS version (QGIS 2.6 Brigthon) brings a vast new set of features that will allow the user to do more, better and faster than with the earlier version. One of this features is the ability to control some of the composer’s items properties with data (for instance, size and position). Something that will allow lots of new interesting usages. In the next posts, I propose to…
Some time ago in the qgis-pt mailing list , someone asked how to show the coordinates of a map corners using QGIS . Since this features wasn’t available (yet), I have tried to reach a automatic solution, but without success, After some thought about it and after reading a blog post by Nathan Woodrow , it came to me that the solution could be creating a user defined function for the…
It’s not the first time I see people that, to select feature by their fields values, use expressions like this: [code language=“SQL”]“field” = ‘value1’ OR “field” = ‘value2’ OR “field” = ‘value3’ [OR …][/code] A more practical and pretty way of doing this is by using the IN operator instead. [code…
Inspired in a post by Anita Graser, I’ve tried to use QGIS to create a Cascais ’s old looking map, as if it have been drawn by hand in a methodical way. Defining the styles I have started by defining the styles for each elements to represent. Buildings To fill the buildings, I have tried to use a color that reminds me the portuguese roofs , similar to the color commonly used in old…
This QGIS plugin Multipart Split allows the user to, during edition, split the active layer’s selected multipart features into single part features. Unlike the “Multipart to single part” from the Vector > Geometry Tools menu, the plugin only splits the selected elements, and does not need to create new files. Installation The plugin is available in the QGIS official repository, therefore the…
I have finally “finished” my new plugin. I uses some quotation marks, since I believe that there is still space for a few improvement. This plugin arised with the need to calculate the travel time for the Cascais oficial pedestrian routes, and started as a simple python script. I have then decided to create a graphic interface and publish it as a plugin in the hope that someone else…
The Walking time is a QGIS python plugin that uses Tobbler’s hiking function to estimate the travel time along a line depending on the slope. The input data required are a vector layer with lines and a raster layer with elevation values (1). One can adjust the base velocity (on flat terrain) according to the type of walking or walker. By default, the value used is 5 km h (2). The plugin update…
Hoje, ao rever uma camada vectorial de distribuição de fauna com interesse para a conservação com a nossa bióloga de serviço, Sara Saraiva, tive necessidade de corrigir (em todas as linhas de determinado atributo) o nome “Aquila fasciatus”, substituindo-o por “Aquila fasciata”. Devido à opção tomada na organização dos dados, cada polígono continha uma listagem de espécies…
Felizmente parece que algumas coisas vão mudando no nosso país no que toca ao acesso a dados. A Base Geográfica de Referenciação da Informação (BGRI), que outrora foi paga (e bem paga), está agora disponível a todos até ao nível da subsecção estatística e com um total de 122 variáveis dos censos 2011 (organizados por população residente, população presente, famílias, alojamento e edifícios). A…
Como está muito bem descrito neste artigo do Duarte Carreira, a criação de catálogos virtuais (vrt) e respectivas pirâmides (overviews) usando o GDAL , permite facilitar e melhorar a performance de visualização de mosaicos de imagens. Usando o comando gdalbuildvrt para criar o catálogo virtual, as áreas sem valor (NoData) são, por defeito, substituídas pelo valor 0. Em certos caso, o efeito pode…
During my professional and personal life, I have worked with much different software, with all kinds of licenses. Most of them would be proprietary, closed and / or commercial code. So why devote my time and learning “exclusively” to Open Source? Without going into detail about the differences between open source software and free software, there are several reasons why FOSS (Free and…
The blog “GIS Unchained” have borne devoid of any grandiose aspirations. The main objective will be to register my experiences with Open Source software while addressing challenges related to geographic information systems (GIS), spatial analysis, cartography and everything else that it might entail. Following the same principle of openness and sharing of the open source, I hope that…