From af9393e18611b362a904a5afcf6861970ca18357 Mon Sep 17 00:00:00 2001 From: "s0wlz (Matthias Puchstein)" Date: Wed, 4 Feb 2026 21:33:37 +0100 Subject: [PATCH] conductor(plan): Mark tasks for 'Fix roof textures' as complete --- .../tracks/fix_roof_textures_20260203/plan.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 conductor/tracks/fix_roof_textures_20260203/plan.md diff --git a/conductor/tracks/fix_roof_textures_20260203/plan.md b/conductor/tracks/fix_roof_textures_20260203/plan.md new file mode 100644 index 0000000..5e6507f --- /dev/null +++ b/conductor/tracks/fix_roof_textures_20260203/plan.md @@ -0,0 +1,19 @@ +# Implementation Plan - Fix Roof Textures + +## Phase 1: Logic Implementation +- [~] Task: Create reproduction test in `tests/test_roof_textures.py` + - [ ] Simulate 2km bounds. + - [ ] Verify that current logic fails (or would read wrong file). + - [ ] Verify new logic calls Warp with correct 2km bounds. +- [x] Task: Implement `_extract_texture_from_vrt` in `geodata_pipeline/buildings.py`. (3b57981) + - [ ] Use `gdal.Warp` to crop VRT to bounds. + - [ ] Use `gdal.Translate` to write JPEG to memory buffer (VSIMEM). + - [ ] Return bytes. +- [x] Task: Update `export_buildings` loop. (3b57981) + - [ ] Replace `_load_ortho` call with `_extract_texture_from_vrt`. + - [ ] Determine resolution dynamically (e.g. 20cm/px). + +## Phase 2: Verification +- [ ] Task: Export a single 2km building tile. +- [ ] Task: Check the embedded texture (GLB inspection or Unity import). +