Coder Social home page Coder Social logo

mulxcode / listonmapapplication Goto Github PK

View Code? Open in Web Editor NEW

This project forked from nationallibraryofscotland/listonmapapplication

0.0 1.0 0.0 1.05 MB

Map viewer for browsing the travels of Robert and Henrietta Liston, 1796-1817

CSS 8.62% JavaScript 91.38%

listonmapapplication's Introduction

ListonMapApplication

This map application uses OpenLayers v 3.5, and GeoJSON sets of points and lines to form a geographical interface for the Travels of Henrietta Liston, 1796-1817.

There are Help Notes about the map application, explaining its basic use.

This map viewer was originally put together in 2018 to show the North American and Canadian tours of Henrietta and Robert Liston (1796-1801). In 2020 the map viewer was updated to include the three tours to Constantinople / Istanbul (1812-1817). At the same time, some improvements were made to the functionality as well as better responsive styling.

All the map specific Javascript written for this application is in the liston-map.js file with comments explaining the functions.

The left-hand map panel allows a set of modern background maps to be displayed, and the lines and points of each tour. The right-hand map panel shows three georeferenced historical maps from the 1790s, which display at different zoom levels. These maps were generated using MapTiler.

The map application allows searching by a 'Search Places Visited' button, bringing up a gazetteer of places (presented using Bootstrap Nav Tabs). Selecting a place initiates a zoomMap(x,y) function which closes the gazetteer div, zooms to the selected place on the map using pan and bounce animation, and selects it. It is also possible to search directly by zooming in on the map.

Some of the functionality of the dual-map viewer, including the cross-hair slave pointer, is taken from the National Library of Scotland Side-by-Side viewer.

The lines and points of each tour, appearing as coloured overlays on the left map panel, are generated from GeoJSON files. These have been styled using a stylefunction to change their display at different zoom levels, with directional arrows at higher zoom levels. There are 8 tours, with separate point and line GeoJSON files for each tour, with each grouped together as an ol.layer.Group for selection and display of each tour separately.

When tour points are selected, eg. Bladensburg they are styled to appear in orange, the details of the place and link to its appearance in the Liston Journals are shown to the upper right. This uses the OpenLayers forEachFeatureAtPixel functionality.

The URL of the application changes dynamically to show the particular zoom level and centre of the map, as well as if a place or tours is selected. You can save this specific URL to return to a specific map view or selected place.

View the complete working version of the application on the National Library of Scotland website.

listonmapapplication's People

Contributors

chrisfleet avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.