Skip to content

Custom Basemaps

amplifi edited this page Jun 29, 2017 · 1 revision

Ability to have additional basemaps by projects.

Detailed Feature Description

By default Cadasta provides users with OpenStreetMap and Digital Globe imagery as a basemap. Custom basemaps can be added by a project manager to allow other background basemaps to be used. Those basemaps must be hosted as TMS or WMS.

User Stories

  • As a project manager I want to add custom basemaps to my project
  • As a project manager I want to remove custom basemaps that I've already added
  • As a project manager I want to select the default basemap to use
  • As a project manager I want to add custom basemaps previously added in other projects within my organization, so I can reuse those basemaps
  • As a project user I want to be able to select the basemap that I'm using at any moment (enabling and disabling those basemaps)

Requirements

Adding a custom basemap to my project

  1. A new entry in the Project Dashboard will be added for "Basemap customization". This will be integrated with the Project Creation Wizard.
  2. Project manager go to "Basemap customization" page and select "add custom basemap" (or similar)
  3. Interface for adding the basemap appears. Interface has fields for:
  • basemap name
  • basemap description
  • basemap source (do we need this?)
  • basemap url
  • basemap type (WMS/TMS)
  • a map where the basemap extent can be created
  • if authentication is supported/required, username and password
  1. Once the project manager adds the basemap URL it is loaded onto the map. The project manager can add the other fields at anytime. Once the basemap is loaded they can use polygon tools to select the area of the basemap.
  2. Once the project manager has added the basemap information they then press save and are returned to the "Basemap customization" page. The new basemap is listed there by name and description.
  3. This added custom basemap will be also selectable in other projects within the organization.

Note: Point 6 will require a change in the permissions policy. Project managers will be able to add custom basemaps to their projects, but these will be also available within the organization, so other project managers will be able to select this basemap to be used in different projects. The reason for doing this is that project managers (and not the org admins) are going to be the usual responsibles to define the basemaps, and these basemaps are going to be useful for other projects within the organization as well.

Removing a custom basemap

  1. Project manager goes to "Basemap customization" page
  2. Project manager then scrolls down to the custom basemap they would like to remove.
  3. Project manager clicks a delete button and Cadasta asks "Are you sure you want to delete this basemap? It will not be available to any users on this project".
  4. Project manager confirms deletion and the basemap is removed from the project
  5. If the "removed" custom basemaps are being used (enabled) in other projects within the organization, then will not be really removed but only detached from this project.

Selecting default basemap

  1. Project manager goes to "Basemap customization" page
  2. Project manager then scrolls down to the custom basemap they would like to set as default
  3. Project manager click on "Make default" button close the basemap.
  4. A confirmation message "BasemapName is now the default basemap for your project" is shown to the user.

Viewing Custom Basemaps

  1. Custom basemaps are listed in the basemap layer radio-button menu in the map
  2. Users can switch on the map between different basemaps (OSM, DigitalGlobe, and the custom ones).

Authentication

  • WMS: OGC spec only mandates the use of HTTP, and it does not specifies authentication. Authentication is usually handled at HTTP level with HTTP Basic or Digest. As a reference, QGIS is offering the following authentication methods for WMS:
    • Basic authentication
    • PKI PKCS#12 authentication
    • PKI paths authentication
    • PKI stored identity certificate
  • TMS: Equally TMS also relies on HTTP, so any authentication will be handled at HTTP level as well.

For a complete description of QGIS authentication check this reference

Ancillary Information

  • For the initial release only web mercator projections will be supported.
  • There needs to be a fallback to the default layers when outside of the custom basemap extent.
  • There needs to be basic validation to determine if the URL the user put in is valid
  • At this point we will not worry about tiles that require authentication
  • WMS specification from OGC is available here
  • TMS spec can be found here
  • WMTS spec from OGC is available [here] (http://portal.opengeospatial.org/files/?artifact_id=35326)

Wireframes

Clone this wiki locally