Skip to content

Claude/test parcel slope analyzer nmp7 i - #131

Open
catedm3112-cmyk wants to merge 8 commits into
openai:mainfrom
catedm3112-cmyk:claude/test-parcel-slope-analyzer-Nmp7I
Open

Claude/test parcel slope analyzer nmp7 i#131
catedm3112-cmyk wants to merge 8 commits into
openai:mainfrom
catedm3112-cmyk:claude/test-parcel-slope-analyzer-Nmp7I

Conversation

@catedm3112-cmyk

Copy link
Copy Markdown

merge into main

claude and others added 8 commits May 1, 2026 03:51
Self-contained HTML tool that:
- Prompts for Mapbox token at runtime (stored in sessionStorage only,
  never committed to git)
- Queries Sevier County ArcGIS FeatureServer trying both GISLINK and ID
  field formats across multiple candidate endpoints, reporting which one
  successfully returns the Foust parcel boundary polygon
- Samples elevation via Mapbox Terrain-RGB at a 10×10 grid across the
  parcel bounding box, with tile caching to minimise requests
- Calculates per-cell slope using finite differences; reports avg/max
- Renders parcel outline + slope heatmap (green→red) on a Mapbox
  satellite-streets map

https://claude.ai/code/session_01A8hTZVRcXuDPbKeUYNByt5
…ion bands

Architecture overhaul:
- Mapbox GL JS is rendering/interaction layer only (pk. token, runtime input)
- ArcGIS FeatureServer (services3.arcgis.com) is parcel data source — click any
  parcel to trigger spatial query (esriGeometryPoint / esriSpatialRelIntersects)
- USGS 3DEP EPQS replaces Terrain-RGB for elevation (per-point JSON API)
- City limits layer (services1.arcgis.com) drives jurisdiction detection

Jurisdiction-specific slope band profiles:
- Gatlinburg: 0-19 / 20-29 / 30-49 / 50%+ (geotech-trigger at 30%)
- Sevierville: 0-15 / 15-30 / 30-50 / 50%+ (critical-slope at 30%)
- Sevier County / Unincorporated: same as Sevierville

Key features:
- Click any parcel → ArcGIS query → highlight + fit bounds + attribute sidebar
- 10×10 EPQS elevation grid clipped to parcel interior via ray-casting PIP
- Finite-difference slope (%) and slope (°) per interior sample
- Slope band breakdown bars, % over 30% callout with jurisdiction label
- Background parcel outlines at zoom ≥ 13 via viewport bbox query
- sk. token blocked at entry; pk. token stored in sessionStorage only
- Planning-grade + not-a-survey disclaimers

https://claude.ai/code/session_01A8hTZVRcXuDPbKeUYNByt5
Remote had a partial USGS 3DEP update; this merge preserves the full
rewrite (click-any-parcel, jurisdiction detection, slope band profiles).

https://claude.ai/code/session_01A8hTZVRcXuDPbKeUYNByt5
requestAnimationFrame double-wrap ensures Mapbox measures the #map
container only after the browser has reflowed from display:none → flex.

https://claude.ai/code/session_01A8hTZVRcXuDPbKeUYNByt5
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants