Quite often, I have come across the question: How can I use the georeferenced rasters (raster + map file) from OziExplorer in QGIS? In order to use such data in a GIS, it is usually necessary to convert them first, e.g., with GlobalMapper. With the release of GDAL 1.7.1, there is no need for proprietary software, as GDAL now supports OZI map files.
Just three hours ago, a patch by Nathan Woodrow was added to QGIS that allows expression-based feature labelling.
Expressions support basic arithmetic operators, parentheses, string functions, type conversion functions, etc. There is also an expression builder dialogue where you can:
search functions by their names
check expression validity as you type
preview expression results in real-time
read a short description of the selected function (currently only available for some functions)
load the first 10 unique values or all field values from the context menu
Julien Malik has announced the release of a new plugin for QGIS that provides an interface to the Orfeo Toolbox tools. The new plugin is based on the Processing Framework and requires the OTB libraries and Python bindings in the system. For Windows, you can get the necessary files here. For Linux users, it is a bit more complicated, but the author promises to prepare packages for Ubuntu soon.
Over time, the list of available tools will be expanded.
As you know, GDAL 1.9 now supports ESRI ArcObjects (read only) and File Geodatabase (read and write). This means that after rebuilding QGIS with the latest version of GDAL, you will be able to work with these data sources. For Linux users, there is no need to rebuild QGIS; it is enough to make the correct symlinks.
Nathan Woodrow made another nice video showing the activity of the QGIS developers between versions 1.6 and 1.7 (1265 commits were made during this time). The spike in activity in November is a hackfest.
A few months ago, the question of integrating OSSIM into QGIS was raised. The discussion was interesting and active, the OSSIM developers even published some experimental code, but it all fizzled out.
One of the reasons, in my opinion, is that the developers of the OSSIM data provider published the code not as a normal patch but as a set of modified files. Moreover, all this was done not on the latest master but based on outdated SVN sources. Another reason is that, at the same time, we had an active discussion about a new Processing Framework, and its development started. And the possibility of integrating OSSIM through this framework was also considered.
I didn’t feel like writing a report for my contest work today, and I didn’t feel like working on an Android app either. So I decided to see what the guys from OSSIM had written. In general, it doesn’t look too bad, although there are a few questionable solutions. For example, for some reason, they invented their own class for saving settings, even though there is QgsOptions and a settings dialogue. I have tried to integrate their code into master. The results are in my fork on GitHub, branch ossim_provider. I haven’t tested it myself yet, as I haven’t found a pre-built OSSIM package, and it will take quite some time to build it on my laptop.
Giuseppe Sucameli has successfully completed his GSoC 2011 project — the DB Manager plugin for QGIS.
DB Manager combines the functionality of the PGManager, SLManager and RT_Sql_Layer plugins and supports SQLite/SpatiaLite and PostgreSQL/PostGIS databases (including raster support). With this plugin, you can:
view a list of database tables
view detailed information about the selected table
view data in tabular form and on a map
rename and delete tables using a graphical interface
execute SQL queries
drag and drop database tables (both spatial and geometryless) into your QGIS project
In addition, while working on the module, Giuseppe implemented the ability to import layers from one data source to another (commit 1a70dddca1). This allows you to easily import data from a shapefile into a PostGIS or SpatiaLite database, and vice versa. This functionality is available in both C++ and Python.
Following the news of the successful cross-compilation of QGIS on Android, QGIS was launched on the ASUS Transformer tablet (Android 3.2) and the Samsung Galaxy phone (CyanogenMod 7RC1).
At the moment, QGIS runs without some features (e.g., no Python support, not all providers are available, etc.), but the GUI is fully functional, although there are some problems using it on mobile phones due to the small screen size.
If you want to give it a try, there is a pre-built APK (note that you need to install Ministro and Qt first; the total download size is ~130 MB). There is also a compilation guide on the wiki.
Video of installing and running QGIS on ASUS tablet
I can’t stop being pleased with the popularity of RasterCalc. It is a very useful and, above all, functional tool. Today, the calculator has two new functions (the initial patch was provided by Ludovic Mercier): composeRgb and extract.
The composeRgb function creates a 3-band raster from individual channels. Example of use:
The output will be a 3-band raster: band 1 of the clearcuts raster will be used as the first output band, band 5 of the clearcuts raster will be used as the second output band, and the third output band will be the average of bands 5 and 6 of the clearcuts raster.
The extract function extracts a subset of bands from a multiband raster and saves it as another raster. Example of use (assuming the Clearcuts raster has 10 bands):
extract([clearcuts]@1, 3, [5,7], 10)
The output will be a multi-band raster consisting of channels 3, 10 and all channels from the interval [5, 7]. I.e. the output image will have 5 bands (bands 3, 5, 6, 7 and 10 of the input raster).
The implementation (even with my changes) is far from optimal, but I don’t have time for proper refactoring and optimisation. Maybe I will rewrite it completely later.