seasketch / next

A modernization version of the SeaSketch platform, released in 2022.
https://seasketch.org
BSD 3-Clause "New" or "Revised" License
7 stars 0 forks source link

Support for creating sketches other than by drawing #616

Open twelch opened 1 year ago

twelch commented 1 year ago

Request for discussion cc @underbluewaters, @avmey, @wmcclin, @petermenzies

I know the legacy shapefile import hasn't found it's way to next, and there are reasons we don't like it. But I believe import of sketches has real need, and could be tweaked to support some additional use cases we have:

Requirements:

Simplest implementation, the UX could be:

This is a "thar be dragons" type feature that would be for powerusers only. Limiting access will limit misuse.

I'm not suggesting this is a high priority now. But at some point I think it will be.

underbluewaters commented 1 year ago

I agree this will be essential to have, primarily for existing MPAs. This has lead to a lot of grief in the past and it's worth listing out why.

  1. We end up with shapes that cannot be practically edited. This is obviously problematic for a collaborative design process if shapes can't be iterated on. The Simple Shape -> Complex Geometry Product design pattern needs to be preserved somehow and often that's just impossible for shapefile uploads. (For use-cases like drawing a circle, we could address that with digitizing tools instead of uploads).
  2. People often create shapes that are clipped to the shoreline... a different shoreline. If we perform clipping again that creates even more needlessly complex shapes.
  3. These more complex shapes often can't be analyzed as efficiently and reports may time out. This often hits us and our users unexpectedly, creating an urgent problem to sort out. I've seen 25MB+ sketches uploaded in the past and when that happens there really isn't any practical solution.

Power users and project admins are the ones who usually cause these issues, so limiting these features to just admins wouldn't likely help.

For existing MPAs I think we need to have some sort of workflow that addresses issue 1. In principal everything that is a "sketch" ought to be editable by end users. I'm not sure how to get there though.

twelch commented 1 year ago

I would be okay with it only being possible by a superuser, so that you have to work with someone that understand the nuances (SeaSketch team member), and it's only used for use cases that make sense.

twelch commented 1 year ago

Another option to get going might be documenting an API we can hit to publish sketches and sketch collections. Which might have looser requirements than the drawing (e.g. allow for multipolygons). Unclear how authn/authz might work.

Then we could for example, script out looping through and creating a bunch of sketches, then a collection and putting the sketches into it.