Blog


  • GNU Octave
    During my studies in geodesy and surveying, we did a lot of linear algebra computations, as adjustment theory requires matrix computations. Naturally, Matlab was used a lot – although I preferred to stick with C++ most of the time, which necessitated writing my own matrix library. But there’s no denying that Matlab is extremely powerful ...
  • Notepad++
    A decent text editor is one of the most important programs on your computer. I use it for coding, for looking at the results, and sometimes simply for taking notes. Since Windows still only comes with crappy Notepad, you need to find something else. Luckily, there’s Notepad++, a free text editor that I have used ...
  • Downsampling point clouds with CloudCompare in batch mode
    Most laser scanners produce point clouds with irregular spacing – surfaces close to the laser scanner are scanned in much more detail than surfaces that are further away. This leads to huge point counts and file sizes, where a somewhat lower but regular spacing would be sufficient in many cases. This can be achieved by ...
  • CloudCompare
    For my job I deal with point clouds almost daily – in fact, much of my programming revolves around point clouds and how to extract information from them automatically. This means that it is very important to me to be able to quickly view a point cloud and all information contained in it. In my ...
  • Sharp Looper, a C# program for slowing down and looping music
    One of my hobbies is playing the guitar. When learning new songs, especially solos, it is very useful when you can slow down playback and repeatedly loop certain parts of a song. YouTube can slow down playback, but has no looping feature. There are commercial programs available that can do this, but they cost money. ...
  • Publishing GIS data on the web with Leaflet
    When I was looking for a simple way to publish GIS data on the web, a colleague suggested Leaflet. This is an easy to use Javascript library that is ideal for publishing e.g. the content of a view shapefiles. Based on one of the examples, I’ve written a script that loads data stored in the ...
  • How to use large objects in C#
    So you’ve got 64-bit Windows, lots of RAM, compiled your C# program as 64 bit application, and you still get the message that an object is too large? That’s because there’s a default 2GB limit to the size of objects. Luckily, there’s a way to disable this. You need to add the following lines to ...
  • Useful XYZ tiles for QGIS
    One of the data types supported by QGIS are XYZ tiles, i.e. tiled image data in a Pseudo-Mercator projection. By default, QGIS only has OpenStreetMap as tile provider. To do so, you right click on XYZ Tiles in the Browser window and choose Add Connection. You need an URL for each data set that you ...
  • Settings the QGIS default coordinate system
    By default, QGIS asks you which coordinate system to use when a layer that you add does not have a coordinate system mentioned in its metadata. Unfortunately, this is quite often the case, and can become quite annoying. Chances are that you are using the same coordinate system most of the time, probably the projected ...
  • Overriding the QGIS default language
    By default, QGIS uses your Windows language as language for the user interface. While this might be desirable to some users, this may also cause two issues: Sometimes, the localization isn’t of the best quality, making it difficult to understand what e.g. a function actually means. If you look for information online, this is most often given ...