Improved locations (boundaries instead of pin points)

I think it would be nice if Gramps locations / maps could support GML / GeoJson / WKT geometries instead of only simple longitude / latitude points.
E.g. for an event with the place Australia it would look a lot better to mark whole Australia on the map instead of a single point in a desert somewhere in the middle of Australia.
(In a perfect world there would also be a tool allowing you to draw place borders directly on the map.)

2 Likes

See Adding places from KML [Keyhole Markup Language] files in case that helps.

1 Like

I like the idea that a place like Australia - or more modestly a city - is represented by a KML representing its surface rather than by a simple GPS coordinate of the center of this place. GPS coordinates are adapted to a singular point like an address in a city while the KML is rather better for the city itself.

Apart from the fact that obtaining the KML is a little less simple, other questions will arise in Gramps. For filters for example.

Some allow comparisons around GPS coordinates by searching for this value in other places but as far as I know it does not look at whether all or part of what is being searched is included in the surface represented by the KML (if it is a KML representing a surface, which is not necessarily always the case, it can represent a path that may or may not be within the perimeter around the search point). It would therefore probably take a lot of adaptations to use either GPS coordinates or a KML to represent a place indistinctly in Gramps.

And yet I suppose I am only seeing the tip of the iceberg.

I have started to add an Internet link to Place records. I am doing this using Google Maps. To facilitate this, I modified the standard Google map link to ignore any existing GPS in the record and instead to open the link with the KML map (if it exists) and made it an addon.

Just added it to my Gramps addons on GitHub

1 Like

Once upon a time I worked with spatial data. Within spatial data you have 3 data types: points, lines (represented by 2 points) and areas or polygons (represented by a series of points). With these data types it is possible to make a large number of calculations, e.g. distance, size etc, but also more advanced like nearest-neighbour, contained-within, crossing and so on.
I can see several use cases for spatial data, but I think it will be a tremendous job to implement, even with different Python spatial libraries available.
And to make the iceberg even bigger - there’s a variant of spatial data called spatio-temporal, where a time data is added to the spatial data.

2 Likes