Brooks Groves
← All topics

🗺️ Maps & Flyovers

forge3d flights, lidar and cartography, from Yosemite to the Icefields Parkway.

14 posts · 3 live dashboards

Live dashboards

Posts

Oct 6, 2026

📖 Open the Hood: Notebooks for My forge3d Projects

Asked on X whether I use forge3d from notebooks or through agents, I made walkthrough notebooks for nine forge3d projects: Chaco Canyon, Serpent Mound, Yosemite, Humphreys Peak, the Icefields Parkway and four Washington animations, each running the project’s own code from raw data to a finished frame.

Oct 6, 2026

🛰️ Sentinel Stockpile, Revisited: Where Did the Wind Blades Go?

I came back to my satellite stockpile project, found two sites in the wrong place and a bug in every pixel, and rebuilt it: eight Pacific Northwest yards measured twice a week with a colour rule per cargo, checked against aerial photos, and a live dashboard. The first thing it showed me: the wind blades at Terminal 5 are gone.

Oct 2, 2026

🏔️ Up the Icefields Parkway

A 95-second flight up the Icefields Parkway on a September evening: Lake Louise, Bow Lake, a slow pass over Peyto Lake, and the Columbia Icefield. Satellite elevation and Sentinel-2 imagery, rendered with forge3d 1.40.1, plus why the lakes first came out grey.

Oct 2, 2026

🏔️ Down Yosemite Valley and Back

A 73-second flight through Yosemite Valley on a June evening: down Half Dome’s face, past El Capitan to Tunnel View and back. USGS lidar and aerial imagery, rendered with forge3d 1.40.1’s new flythrough tools, plus what’s real and what’s painted.

Sep 29, 2026

🗻 Once Around Humphreys Peak

Back in April my favourite forge3d image had no camera flythrough. This one is nothing but: one slow orbit of Arizona’s highest summit, built from USGS elevation and aerial imagery, with a sky and labels added in plain Python. Plus three things I got wrong, starting with a blank white screen.

Sep 29, 2026

⛰️ Where the Trail Runs Out

A researcher asked why two of my numbers didn’t match. The answer: roads named after mountains had pinned 1,560 city calls to the wrong preserves, and blurred addresses had hidden most of the real rescues. Fixing it put 1,489 Phoenix mountain rescues on the map, added Scottsdale and Boulder, tested whether Phoenix’s heat closures explain the drop in rescues (mostly, they don’t), and mapped 20,058 national park rescues.

Sep 10, 2026

🎲 I Wanted to Play Star Frontiers Again. I Accidentally Built a Game Engine.

It started with a photo of the 1983 Star Frontiers Referee’s Screen on Instagram. Four browser games and roughly two thousand lines of JavaScript later: a shared engine where a new module is content plus a config object, dice rendered with real per-type silhouettes in CSS clip-path, and every sound synthesized in Web Audio with no files to host. The fourth game, Railroad Valley: Nine Litres, runs on genuine USGS topo tiles of Nye County, Nevada — 37 locations on real coordinates, walking times computed from terrain pace plus a Naismith climb penalty, and a water model where 38°C costs 1.33 litres an hour walking against the nine litres you started with. Also three failures documented in public: dice checks that could never succeed because the modifier spread was wider than the die, atmosphere written where information was needed, and death clocks the player could not see. The standing fix was tools/audit-dice.js, which boots every game headlessly and flags impossible checks — it has caught five real bugs, two of them already live.

2026

🌲 Finding the Trees

A stretch project into airborne LiDAR and point clouds — PDAL pipelines, ground classification, canopy height models, individual tree detection — built end to end from a synthetic Finnish boreal stand through to real national data. The detector scored 78.4% recall against 450 trees whose positions I set myself, then recall rose as the point cloud thinned, a +0.00 m ground calibration concealed a canopy bias, two definitions of mean height landed on opposite sides of the truth, and a 100% harvest-targeting precision turned out to be structurally guaranteed. Validated against 1,295 stands from the Finnish Forest Centre inventory: height to within 1.19 m at r = 0.962, roughly one stem in six recovered.

2026

🌿 Eight Years Later — A 2018 Volunteer GIS Project Gets Its Answer

Rebuilding a 2018 Google Earth Engine NDVI prototype as a modern Python remote-sensing pipeline. Forty-two years of Landsat, a Sentinel-1 SAR cross-check, and real statistics on three ONDA riparian restoration sites in eastern Oregon — with one two-sensor disagreement that turned out to be the signal.

Other topics