Other posts

  1. Thu 23 June 2022

    Web Mercator OS Vector Tile API in OpenLayers

    Adding a Vector Tile layer of Ordnance Survey data from the OS Data Hub to an OpenLayers map in Web Mercator is a little more work than expected as the JSON style document and associated JSON source document include paths for the default British National Grid tiles. The following is …

    comments. read more

  2. Wed 22 June 2022

    Writing small text filters for the shell and Vim

    Text filters are command-line programs that take text as input, transform it then output the results. An example of a common built in text filter is sort which when passed newline separated text will sort each line:

    printf 'b\nc\na' | sort

    You can write your own text filter scripts …

    comments. read more

  3. Fri 20 September 2019

    MapServer PostGIS Performance

    Recently I was looking at improving the performance of rendering a Space Syntax OpenMapping layer in MapServer. The openmapping_gb_v1 table is in a PostGIS database with an index on the geometry column. The original MapServer DATA configuration looked like this:

    DATA "wkb_geometry from (select meridian_class_scale * 10 as line_width, * from openmapping …

    comments. read more

  4. Tue 26 April 2016

    OpenLayers 2 Custom Build

    A bit of a blast from the past now that OpenLayers 3 has been released but it may be useful for someone who is working on or maintaining an OpenLayer 2 project.

    Create a list of OpenLayers 2 classes used within a code base suitable for including in a custom …

    comments. read more

  5. Thu 20 November 2014

    Loading PostGIS

    Notes from a talk at PostGIS Day, London 20th Nov 2014.

    The options

    All support basic options such as specifying table names, schema, SRS etc.


    Graphical interface to shp2pgsql tool shipped with PostGIS to load ESRI Shapefiles via pgAdmin III.
    Graphical interface to ogr2ogr command line utility …

    comments. read more

  6. Sun 07 September 2014

    Practical OpenLayers 3 & Leaflet

    I ran a 2 hour workshop at OSGIS 2014 introducing OpenLayers 3 and Leaflet.

    A hands on introduction to using OpenLayer 3 (OL3) and Leaflet to display spatial data on the web. The workshop will introduce the two libraries, the underpinning concepts and strengths of each, and take delegates through …

    comments. read more

  7. Thu 17 July 2014

    GNU Parallel all the things!

    I've been doing a lot of data processing recently and have been looking for a way of running bulk data loads into PostGIS in parallel to make use of all available cores. The work has mainly revolved around loading national cover of Ordnance Survey OS MasterMap and VectorMap Local for …

    comments. read more

  8. Fri 18 October 2013

    Custom GeoServer GetFeatureInfo Template

    The default GeoServer GetFeatureInfo Freemarker template is a simple table and doesn't work very well when displaying the content in a web map popup. It's a common requirement to change the GetFeatureInfo template to an unordered list, to capitalise the title and attribute names. Here is a sample content.ftl …

    comments. read more

  9. Thu 02 February 2012

    Greyscale maps with MapServer

    There have been a few times in the past (such as when I was preparing the base mapping for My Wycombe) when I've wanted to create greyscale base mapping using MapServer. Previously I've experimented with various processing options for raster images (with varying degrees of success), converting the source images …

    comments. read more

  10. Thu 24 November 2011

    Disaggregate MultiLineStrings using ST_Dump PostGIS

    PostGIS the spatial extension to the PostgreSQL database provides a host of functions for querying, creating and manipulating geometries within the database. ST_Dump allows you to disaggregate collection and multi geometries such as MultiPolygon and MultiLineSting easily. The example below demonstrates starting with a table that contains one row with …

    comments. read more

  11. Mon 28 March 2011

    Recursively delete empty directories

    To recursively delete all empty directories from the command prompt in Windows. Open command prompt and change to the desired directory then enter the following:

    for /F "tokens=*" %f in ('dir /AD /S /B ^| sort /R') do echo rd "%f"

    This command generates a list of all directories and sub …

    comments. read more

  12. Sun 19 December 2010

    Build OGR 1.8 with GML, WFS and PostGIS support on Ubuntu 10.04

    OGR 1.8 introduces support for reading GML with feature attributes expressed as nested elements as found in Ordnance Survey's OS MasterMap as well as support for accessing WFS. This is a brief script for building OGR (GDAL) 1.8 from source as it's not currently released: Download latest daily …

    comments. read more