c6f3b2d6e33afaadf65683a3d9219b102a1df5e6
2
Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
4349641ee9 |
fix(startseite): durchgehendes Basel-Panorama, Kreise ohne Stühle
Vier Korrekturen aus der Nachprüfung. **Naht in der linken Fensterfront.** Sie stammte von zwei getrennten Fotoflächen — vorne und links. Eine Stossstelle lässt sich nicht wegblenden; sie verschwindet nur, wenn es keine zwei Bilder mehr gibt. Die Kulisse ist jetzt eine gekrümmte Fläche mit einer einzigen Panoramadatei: auf einem durchgehenden Zylinder ist eine Naht geometrisch unmöglich. Das Panorama entsteht einmalig aus den beiden Referenzfotos (`scripts/build-basel-panorama.mjs`), jede Quelle genau einmal — kein Kacheln, kein Spiegeln. Das gute Motiv vom Tischende bleibt in Ausschnitt und Farbe unverändert und steht weiterhin in der Frontscheibe; die Panoramaaufnahme setzt es nach links fort, helligkeitsangeglichen und über 320 Pixel überblendet. Aus der Fortsetzung wird nur der Abschnitt östlich des Münsters verwendet — beide Vorlagen zeigen es, nebeneinander stünde es zweimal im Bild. Himmel und Wasser sind aus den Randzeilen gestreckt, damit oben und unten keine Bildgrenze bleibt. **Stühle und Körper entfernt.** Sitzmöbel, Rümpfe, Schultern, Hälse, Arme und Hinterköpfe sind ersatzlos weg. Die Agenten bestehen nur noch aus ihrem runden Porträt mit weissem Ring. **Positionen neu.** Ferdi und Bruno sind die direkten Nachbarn links und rechts vorne, die übrigen gestaffelt dahinter, Thomas unverändert vis-à-vis. Die Kreise liegen deutlich über der Blickachse: lagen sie auf Augenhöhe, projizierten alle fünf auf fast dieselbe Bildhöhe und die hinteren verschwanden hinter den vorderen — seitliches Auseinanderziehen half dagegen nicht, weil ein tieferer Platz in der Perspektive zur Mitte wandert. Dazu ein echter Fehler, der dabei auffiel: die grosszügigen Trefferquader der vorderen Kreise fingen die Strahlen der hinteren ab, ein Klick auf Livia landete bei Ferdi. Die Trefferfläche ist jetzt eine Kugel knapp um den sichtbaren Kreis. **Bildschärfe.** Die Textur wird auf einen mittigen quadratischen Ausschnitt begrenzt — ohne das zieht die Kreisgeometrie ein liegendes Foto in die Breite, was Gesichter verzerrt und Schärfe kostet. Dazu anisotrope Filterung und Mipmaps. Höher aufgelöste Originale der fünf Agenten waren nicht auffindbar: die Porträts in `Agenten_Verwaltung_Fotos.html` liegen zwar in 256×256 vor, gehören aber zu einer anderen Belegschaft — geprüft und verworfen, statt Gesichter zu vertauschen. **Ortsangabe** unten rechts entfernt. **Menü** liegt bündig an der rechten Fensterkante: der Spalt kam vom Anker am eingerückten Menüsymbol, jetzt ist das Klappmenü an eine Bildschirmstelle gebunden. Geprüft: 422 Tests, Typecheck, Build, ESLint, Token-Schwelle (884/925). Im Browser 1280 und 1600 px: sechs Beschriftungen ohne Überlappung, sechs Kreise ohne Überlappung, alle sechs per Maus auf der richtigen Subpage, Menü bündig ohne waagrechten Scrollbalken, keine Konsolenfehler. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |
||
|
|
bf453d2b69 |
feat(startseite): echter 3D-Meetingraum, Navigation in die Topbar
Anpassungsrunde 6. Die Kartendarstellung aus Runde 5 ist ersetzt: die Startseite zeigt oben einen räumlichen Meetingraum aus der Sicht des Betrachters, der selbst am Kopfende des Tisches sitzt. **3D statt Kulisse.** Zwei Versuche mit CSS-Flächen sind daran gescheitert, dass gezeichnete Wände neben fotografierten Porträts erkennbar gezeichnet bleiben. Diese Runde nutzt three.js — die einzige neue Abhängigkeit, und §19 lässt sie ausdrücklich zu, wenn eine schlanke 3D-Lösung die Anforderung trägt. Keine Engine darüber hinaus: kein React-Three-Fiber, keine Physik, keine Shader, keine Post-Processing-Kette, keine Orbit-Steuerung. Der Raum: Boden, Decke, rechts eine geschlossene Wand mit Eichenpaneel und einem schmalen Streifen im Markenblau, links und gegenüber bodentiefe Glasfassaden mit Pfosten. Draussen tragen die beiden Referenzfotos aus dem Auftrag die Basler Aussicht — vorne Rhein, Altstadt und Münster, links der Rheinverlauf mit der Wettsteinbrücke. Die Wasserlinie beider Kulissen liegt auf derselben Welthöhe, damit der Blick nach vorne und nach links zusammengehört und nicht wie zwei zusammengesetzte Bilder wirkt (§4). Am Tisch sitzen alle fünf bestehenden Agenten mit ihren bestehenden Porträts, Namen, Funktionen und Zielseiten — alles aus `AGENT_WORKSPACES`, damit nichts doppelt gepflegt wird (§24, Schritt 7). Neu ist Thomas, Personalverwalter, vis-à-vis am gegenüberliegenden Kopfende; sein Klick führt in die bestehende Ansicht «Meine Agenten». Gerendert wird nur bei Anlass — Grösse, Maus, Hover. Ein Dauerloop wäre für eine feste Szene verschwendete Rechenzeit (§21). Die Kamera folgt der Maus um wenige Zentimeter, mehr nicht (§20). Die Beschriftungen sind HTML über dem Bild, nicht Textur in der Szene: als Textur wären sie bei Tiefe unlesbar. Ein Entzerrungsdurchgang nach der Projektion hebt Plaketten so weit an, bis keine mehr überlappt — gerechnet und nicht handverlesen, damit es auf jeder Fenstergrösse hält. Bei Hover kommt eine Zeile mit der aktuellen Auslastung dazu; ruhend bleiben es Name und Funktion. **Navigation.** Die linke Seitenleiste ist gelöscht, nicht ausgeblendet: samt Breitenreservierung, Einklapplogik und mobilem Drawer. Der Inhalt beginnt überall bei x=0. An der Stelle des früheren Profilsymbols steht neben der Glocke ein Menüsymbol; das Klappmenü öffnet rechts an der Kopfzeile nach unten und führt Startseite, Meine Agenten samt aller Agenten als eingerückte, rechtsbündige Unterpunkte, und Profil mit Profil, Einstellungen, Produkttour und Abmelden. Alle Aktionen und Routen sind die bestehenden. Entfallen sind die Kartenkomponenten aus Runde 5 samt Präsenzschicht. Geprüft (§25): 422 Tests, Typecheck, Build, ESLint, Token-Schwelle (884/925). Im Browser 430–2560 px: keine alte Sidebar, kein leerer Streifen links, sechs Beschriftungen ohne Überlappung, alle sechs Agenten per Maus und per Tastatur erreichbar und auf der richtigen Subpage, Menü öffnet und schliesst per Klick und Escape, alle Menürouten korrekt, alle bestehenden Seiten laden, kein horizontaler Overflow, keine Konsolenfehler. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> |