- Löcher werden über das Vorzeichen der Shoelace-Summe erkannt; die Stichprobe am
Konturmittelpunkt versagt bei einer Insel mit Lagune
- das Brückenfenster braucht einen Rand, sonst enthält es nur Straßenpixel und die
Erkennung löst nie aus
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Ruling 10: wasser war auf die tiles.py-Kompositionsfarbe (44,103,164) gesetzt statt auf die
tatsächlich gerenderte, im Tiefenverlauf variierende Wasserfarbe. Auf (48,144,192) korrigiert,
MAX_DELTA_E von 14 auf 22 angehoben, um den Verlauf abzudecken. Unbekannter Pixelanteil im
echten Mosaik faellt damit von 37,4 % auf 3,5 %, unter die 5-%-Abbruchschwelle aus Aufgabe 6.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Wasser ist #3090c0, nicht #2c67a4; der alte Wert war die Kompositionsfarbe aus tiles.py.
Mit Schwelle 22 fallen die unbekannten Pixel von 37,4 auf 3,5 Prozent. Die Sollanteile für
Straße und Gebäude stammten aus einer Messung mit anderer Klasseneinteilung und werden
auf die gemessenen Bänder gesetzt.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Aufgabe 6 braucht den Anteil für den Abbruch über 5 Prozent; die Signatur in Aufgabe 3
kannte ihn bisher nicht.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
- pyproject.toml braucht pythonpath, sonst ist das lokale Paket im Test nicht importierbar
- der Mosaik-Test prüft jetzt den exakten Zuschnitt-Versatz statt nur der Eckkacheln
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Einfarbige Fake-Kacheln erkannten nur die Herkunftskachel eines Pixels,
nicht den Versatz innerhalb der Kachel (72px Spielraum je Achse zwischen
3072px Kachelraster und 3000px Zuschnitt). fake_tile kodiert jetzt die
globale Pixelposition, ein neuer Test nagelt mosaic_origin_px() == (24, 60)
fest und prüft drei Pixel gegen den daraus berechneten globalen Index.
Produktionscode unverändert (Ruling 8).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
- controls ist eine Pflichtoption von player.init; der Beispielcode übergab sie nicht,
wodurch die App mit einem TypeError startete
- der git-add-Befehl hätte den Submodul-Pin still auf den lokalen Branch-Commit umgesetzt
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
player.init wirft ohne controls einen TypeError, da CameraSystem und
InputSystem intern auf controls.domElement/.target zugreifen (siehe
three-player-controller/src/systems/CameraSystem.ts,
three-player-controller/src/systems/InputSystem.ts). Eine
OrbitControls-Instanz auf renderer.domElement schließt die Lücke; der
Controller übernimmt die eigentliche Kamerasteuerung ohnehin selbst.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
12 Aufgaben mit 88 Schritten, von der Python-Extraktion über den
Geometrie-Baustein und das Chunk-Streaming bis zur Abnahme.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Ausschnitt A (X -1000..2000, Y -500..2500) aus der Community-Karte YANIS v15;
Kartendaten von map.gtadb.org unter CC BY 4.0. Die Spec beschreibt Rechtslage,
Koordinaten, Projektstruktur, die siebenstufige Extraktion, die Laufzeit mit
Chunk-Streaming, Aussehen, Fehlerbehandlung, Tests und Budgets.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>