Cadasta / cadasta-platform

[DEPRECATED] Main repository of the Cadasta platform. Technology to help communities document their land rights around the world.
https://demo.cadasta.org
GNU Affero General Public License v3.0
53 stars 81 forks source link

Ability to Manually Enter Latitude and Longitude via web UI #1414

Open wonderchook opened 7 years ago

wonderchook commented 7 years ago

Update:

Problem Statement

There is an increasing number of partners using the web UI to transcript data from paper. They are frequently using hand-held GPS devices to get the coordinates (a point) of a location.

Context / Use case

When adding a location via the web UI, in addition to the drawing tools we need to provide an option to manually include the coordinates (latitude and longitude) of a point.

In the future this could be extended to polygons or polylines (using WKT format, for instance).

User Story

As a data collector, I would like to include manually the latitude and longitude of points (not polygons or polylines) using the web UI.

Description

There will be two text boxes in the web UI when adding a location for entering the latitude and longitude (@clash99 working on the wireframes).

We will be supporting the following formats:

In addition, we will also be accepting using the + and the - signs as synonyms of N and E (plus +) or S and W (minus -) for the DMM and DD formats. The reason behind is that people that are not used to maps usually don't remember if + or - means West or East.

And we should also not consider the blank spaces between:

L10N for N, S, W, E will not be considered at this point (i.e. using "N, S, O, E" instead of "N, S, W, E" in Spanish for instance).

As a nice to have, it'd be useful for the user to preview the position of the point on the map before submitting the coordinates. That'd help to avoid typical errors with +/- with lat/long, etc.


Currently to add a location you have to digitize the geometries. Users should be able to manually enter the latitude and longitude.

For an initial feature release this should only apply to points, but we can see later then if there is desire for me.

SteadyCadence commented 7 years ago

Useful feature since it is related to the paper forms #1412!

dpalomino commented 7 years ago

Related to backlog item 37.00.

dpalomino commented 7 years ago

Assigning to me to write some requirements and do some research on this one (not for the actual implementation).

dpalomino commented 7 years ago

User Story

As a data collector, I would like to include manually the latitude and longitude of points (not polygons or polylines) using the web UI.

Description

There will be two text boxes in the web UI when adding a location for entering the latitude and longitude (@clash99 working on the wireframes).

We will be supporting the following formats:

In addition, we will also be accepting using the + and the - signs as synonyms of N and E (plus +) or S and W (minus -) for the DMM and DD formats. The reason behind is that people that are not used to maps usually don't remember if + or - means West or East.

And we should also not consider the blank spaces between:

L10N for N, S, W, E will not be considered at this point (i.e. using "N, S, O, E" instead of "N, S, W, E" in Spanish for instance).

dpalomino commented 7 years ago

I've updated the description (and title) with the specific requirements and to cover only the manual coordinates via the web UI. For ODK/GeoODK support I've created a new issue #1588.

Any feedback from our mappy friends will be very welcome :-)

clash99 commented 7 years ago

Wireframes

PDF of Map Coordinate Wireframes

Add location - initial page

add location

Input lat/long coordinates modal

add location_ input data points

Input lat/long coordinates with map preview modal

add location_ input data points with map

wonderchook commented 7 years ago

@clash99 How about just "input coordinates" the reason being that in some areas there are other coordinate systems we might use in the future that aren't lat/long. Though I guess we need a tooltip or something to explain things.

dpalomino commented 7 years ago

Great suggestion from @wonderchook, it'd be pretty useful to view the geometry position on the map when entering the coordinates manual via web UI.

Editing the description.

clash99 commented 7 years ago

@dpalomino - I've updated the wireframes to reflect new button text and option of map preview in modal. Let me know if I've missed anything.

clash99 commented 7 years ago

Related to #1613

dpalomino commented 7 years ago

Updating the initial description with the new agreed format.

oliverroick commented 7 years ago

I feel a bit uneasy about adding the coordinates via a pop-up. The reason is that we need to maintain two maps and transfer the coordinates to the main map and populate the form.

Wouldn't there be a way to integrate the form to add coordinates to the map's toolbar (I think, group means to add geometries together makes sense from a UX perspective)? That way, we can display the marker directly on the map. That would make the interface simpler and easier for us to maintain the state.

dpalomino commented 7 years ago

Hey @clash99, do you have any thoughts on Oliver's comment:

I feel a bit uneasy about adding the coordinates via a pop-up. The reason is that we need to maintain two maps and transfer the coordinates to the main map and populate the form.

Wouldn't there be a way to integrate the form to add coordinates to the map's toolbar (I think, group means to add geometries together makes sense from a UX perspective)? That way, we can display the marker directly on the map. That would make the interface simpler and easier for us to maintain the state.

clash99 commented 7 years ago

@oliverroick - Is the map on the popup what is making you uneasy? If so, we can eliminate it as shown in the second wireframe. My thoughts were that by using a popover to enter coordinates we are going to easily scale to when we can add more complex geometries this way, not just data points.

It would be easy enough to add the "enter coordinates" on a map toolbar but then I would suggest we also add the "upload" file option on the map toolbar too and eliminate the right panel buttons. Is that what what you had in mind?

I can take another look at this while I'm looking at the #1608.

oliverroick commented 7 years ago

So I thought about the whole interaction a little bit and also played with a few map editors to get a feel how other apps have implemented it. I don't mind the popup so much; it's more that we'd have two maps on this page and we need to maintain the state across both maps.

I think that introducing new means to add geometries requires some improvements to how people interact with the map to add geometries. By adding the buttons on the right-hand side, we add unnecessary steps to that process of drawing a geometry: 1. Click on the button, 2. Select your tool, 3. Draw the geometry. The button to activate a mode and to select the drawing tool are also visually separate.

I think we should put some work in to improve the drawing tools (something we have been discussing already) and the consider additional modes to add new geometries.

Here's how it's done in Mapbox Studio. You can either import data or draw a geometry using on of the three tools. Clicking on import will open a prompt to upload a file.

screen shot 2017-07-11 at 16 47 19

screen shot 2017-07-11 at 16 47 32

I think something similar would work for us as well. We could reword the drawing toolbar a bit and add options to enter coordinates and later to upload a file. Clicking on the input coordinates can open a popup. After entering the coordinates you click "save", the popup closes, and you see the position on the map where you could also make adjustments.

SteadyCadence commented 7 years ago

We need to make sure that it is clear we are using the "web mercator" projection. Some partners are not GIS experts and may not realize that the data could be collected in other projections.

Also, I think that many parts of Africa use the x,y coordinate format. I will add an example of what that looks like.