The results of the project selection for GSoC 2015 have been announced. This year, the requirements for the projects were stricter and the number of slots was much smaller. Therefore, the fact that QGIS has been selected is even more gratifying. Marcus Santos will work on multithreading support in Processing, and Victor Olaya and I will be his mentors.
Two weeks ago, I went to Kyiv to apply for a visa again, this time for a Denmark one.
The actual process is practically the same as previously described, even the visa centers are located in the same building: Germany on the first floor and the Scandinavian countries on the second floor. The number of required documents is a bit lower: a written explanation of the purpose of the trip is not required. But the requirements for documents are stricter: the application form has to be filled out exclusively in English or Danish, all Ukrainian-language documents (certificates, etc.) must be accompanied by a translation into English or Danish. But at least a notarized translation is not required, so it is possible to translate them by yourself.
The processing time for an application is 10 days or more (if there is a need for additional information or consultation with the Danish Migration Service). But usually the process is faster, about a week.
On March 18–20, Kharkiv hosted the annual GIS-Forum “Education, Science, and Production”. It was the fourth conference and the second one I participated in (the first time was last year).
This year there were minor organisational issues: the opening on the first day was delayed for about half an hour due to some problems with the equipment and with the joining of remote participants; most of the speakers were hard to hear despite the presence of a microphone and speakers; and there was no Wi-Fi.
The talks were different: both outright trash and very interesting. This year, the works presented at the student competition and the results of the competition itself left a mixed feeling. Firstly, some works were presented for the second time without any improvements or changes. Secondly, the selection of the winner in the category “Best ideas for GIS application”… From my point of view, the selection process and criteria were not transparent, and the results were strange. Though, two strong presentations still won prizes.
This year’s workshops attracted more participants, but they were not active at all, just like last year. However, the discussion organized by Daria and me was quite lively. We didn’t even have enough time to cover all the planned topics.
I want to say thank you to the organizers for their hospitality and interesting program. Hopefully the next anniversary Forum will be even better.
2014 is over, and it’s time to recall how it went for me.
At the beginning of the year, I finally took the risk of becoming self-employed (read: freelancing). There was a lot of paperwork involved, and then I had to deal with some of the nuances of our “wonderful” legislation. But on the whole, I am still happy with the result.
I received an invitation to GIS-Forum 2014 in Kharkiv, where I went in March and gave two workshops. Together with Daria, we started working on an introductory training course on QGIS. I also translated the QGIS website and documentation and localised IntraMaps Roam. I gradually cleaned up the blog and started writing again, although not as often as before.
Together with Daria, we created a virtual Ukrainian QGIS user group on Facebook. In addition, we started and successfully completed the process of creating the first OSGeo research and education laboratory in Ukraine and the former USSR. Around the same time, I became an OSGeo Charter Member and an OSGeo Advocate. At the end of the summer, I got a German visa and started preparing to participate in the 12th QGIS Developer Meeting. In autumn, I went to Essen for my second QGIS developer meeting.
At the end of the year, I agreed to an ambitious project, but I’ll tell you about that later.
All in all, it has been a very active year, full of events, meetings, and new experiences. Some things were achieved and even surpassed, while others remained in the form of plans. I do not have any special plans for the next year, except that I would like to take part in the next QGIS developer meetings on a regular basis.
When viewing TMS layers in QGIS, as well as in any other GIS, the background map may be blurred if the current map scale does not match the scale of the tiles. The reason for this is a feature of TMS, namely the use of a fixed set of so-called “zoom levels”: tiles are generated only for certain scales defined by the data provider.
So to get a sharp image, you should only use the scales that correspond to the zoom levels of the selected TMS service. For OpenStreetMap, the formula for calculating the scale for each zoom level can be found on this page, and a similar approach can be used for other services.
Some time ago I added a special widget to QGIS to select a map scale from a given set. Later, it became possible to edit this list and define a set of scales on a global level as well as on a project level. So if your project uses TMS layers, you can create your own list of scales and switch between them. At the same time, you still have the option of using any intermediate scale values.
Another option is to install the Tile Map Scale plugin. This plugin allows you to easily connect popular TMS layers (remember about ToS!). It also monitors map scale changes and automatically sets the nearest correct TMS scale. Note that you will not be able to use intermediate scale values in this case.
Finally, QGIS has a built-in widget for changing the scale according to the layer’s scale list. It can be found in “View → Panels → Tile scale” or from the toolbar context menu.
When displaying spatial information, it is desirable to have a “context” — some additional data to help you navigate and make the information more readable. This can include administrative boundaries, hydrology, road networks, etc. Such additional layers are called “basemaps”. The term “basemap” is often used to refer exclusively to services such as Google Maps, BING Maps, OpenStreetMap and so on, but this is not correct.
So what is a basemap? It is a background layer (such as a digital elevation model or topographic map) on which thematic layers are overlaid. The basemap is often used for geographic reference and may include elements of the geodetic network. Very often, aerial or satellite imagery is used as a basemap.
At the same time, the widespread use of different map services as basemaps is explained by their accessibility: all that is needed to use them is an Internet connection and minimal GIS skills, whereas the use of other types of data may require some preparatory work, such as georeferencing.
Let’s see how we can use different map services in QGIS.
Imagine you could order books. Do you want a book about QGIS? If so, what level of knowledge do you think the reader should have and what topics should the book cover? Any other suggestions?
I have released a new version of the Photo2Shape plugin. This is a QGIS plugin that allows you to create a point vector layer from a set of geotagged photos.
Users now have the ability to recursively process directories and the option to append data to an existing file. The code has also been refactored, and instead of EXIF.py the more convenient and reliable exifread is now used.
I’m pretty sure that the heterogeneity of the Processing plugin’s graphical interface is not something that many people (if any) pay attention to. And it is very likely that the code responsible for the generation of the interface has never been seen by anyone other than the developers. Since everything works as expected, everyone is happy with it. And it does not matter what the windows or buttons look like. Let alone the code. In fact, both are important. A unified interface looks professional, is more convenient and pleasant to use, while clean, well-structured code is easier to maintain and extend.
My first thought was to do a crowdfunding campaign like Matthias, but then I changed my mind. So now I am slowly fixing it in my spare time. I’m hoping to get this done in time for the 2.8 release, which will be a long-term supported release.
The release of QGIS 2.6 “Brighton” has been announced. This release contains many new features, bugfixes and improvements.
The detailed changelog can be found here. For normal users, it is better to use the visual changelog. The most important and interesting changes are listed below:
implemented support for expression (virtual) fields
actions can now have an associated icon
more expression functions and variables have been added, including $currentfeature and $atlasfeature to get the current feature in different contexts, attribute() and getFeature() to get the attribute value of a feature or a feature with matching attribute, respectively
layer tree overhaul: new API, visibility groups, legend filter and more
syntax highlighting in all code editors (Python, expressions, HTML and CSS)
added support for custom colour palettes
new colour picker dialogue with a wide range of features
Processing Modeler overhaul
online repository for Processing models and scrips
item panel in Print Composer for quick access to all composer items
many properties of various composer items have been made data-defined
support for multiple overview maps for a composer map element
and much more
The source code and binary packages for Windows, Debian, and Ubuntu are available for download. Packages for other distributions and operating systems will appear as they are prepared by the maintainers.