Workshop map - Overlay geometric areas and allow dynamic intersection selections

How do I build an workshop map-based app that allows users to

a) see the intersection of locations with circular areas (each called a “blast zone”) with predefined centroids

b) select a blast zone to see aggregated metrics about the locations it intersects

I have a map with layer for the locations using Geopoint types in my OT.

Now I want to overlay 10 blast zones with predefined centroids and 10km radius.

AIP Assist recommends using “vector layers and add your circle data as a GeoJSON File or Dataset GeoJSON File”, also noting that PB has a geometry buffer function handy for calculating the geojson properties.

That’s a lot for me to discover and experiment with, so I want to make sure I am on the right track.

You’re on the right track. I’d do the heavy lifting in Pipeline Builder rather than in Workshop:

  1. Make a blast zone dataset (zone id + centroid). Use “Geometry buffer” to turn each centroid into the 10km circle - that’s your shape for the map layer.
  2. Use a “Geometry distance join” between locations and zone centroids (10km) to get a location ↔ zone table. Careful with units - with epsg:4326 the distance is in degrees, so use a meter-based CRS. Also the join won’t take GeoPoint directly, so convert the points to geometry first.
  3. In the Ontology, make Blast Zone an object type with the buffered shape as a geoshape property, and use the join table as a many-to-many link to Location.
  4. In Workshop, show zones as a map layer. When a user selects a zone, search around to its linked locations and feed that into your metric cards.

Precomputing the intersections means the app doesn’t do geo math at runtime.