Uhr: Stundenverlauf abgeflacht, Lichtkante auf die richtige Achse gedreht

Filipe: "kontrollier bitte nur noch einmal ab dass keine striche krum
sind, kein runder kreis der schief verlaeuft oder so, perfektionier die
stunden noch bissl auch bitte."

Nachgemessen statt nachgesehen. Drei Funde, zwei davon echt.

1. DIE LICHTKANTE LAG AUF DER FALSCHEN ACHSE.

   Das SVG `.uhr__ring` traegt `rotate(-90deg)`, damit die Ringe oben
   beginnen. Diese Drehung gilt auch fuer einen `translate` darin --
   ein `translateY` erscheint auf dem Bildschirm deshalb als "links".
   Gemessen an den Kaesten stand bei allen vier Lagen dy = 0: Kante
   nach links, Schlagschatten nach rechts, waehrend die Kachel selbst
   ihren Schatten mit `0px 14px` nach unten wirft. Zwei Lichter in
   einem Koerper.

   Sichtbar war es als heller Strich, der bei den oberen Balken LAENGS
   durchlief statt auf der Oberkante zu sitzen -- der "Kratzer", der an
   den Stunden schon zweimal gestoert hat. Die Kante war vorher
   verschmaelert worden; das hat ihn gedaempft, aber nicht beseitigt,
   weil die Ursache die Richtung war und nicht die Breite.

   Jetzt translateX. Nachgemessen: dx = 0, Kante nach oben, Schatten
   nach unten -- dieselbe Lichtrichtung wie der Kachelschatten. Die
   hellste Stelle im Querschnitt liegt bei r = 34,1; rechnerisch soll
   sie bei 31,5 + 2,6 = 34,1 liegen.

2. DIE ZWOELF STUNDENBALKEN WAREN UNTERSCHIEDLICH HELL.

   Ein Verlauf laeuft diagonal ueber die ganze Zeichnung. Auf einem
   durchgehenden Bogen ist das Material; auf zwoelf getrennten Balken
   bekommt jeder eine andere Farbe. Gemessen, beide Faehrten im selben
   Lauf:

     alt   75 bis 145, Faktor 1,93
     neu  114 bis 147, Faktor 1,29

   Der tiefe Stopp #a81f2c traf die Plaetze 0 bis 3 -- die Stunden 1
   bis 4, also genau die Balken, die als erste gezeichnet werden. Ein
   75er neben einem 145er sieht nicht nach Licht aus, sondern nach
   Ausfall. Minute und Sekunde behalten ihren vollen Verlauf: Bei 60
   Gliedern liegen die Nachbarn dicht genug, dass der Wechsel als
   Politur gelesen wird.

3. VIER TOTE BREITENREGELN, die 620 Zeilen spaeter ueberschrieben
   wurden (2,6/3/3,6 statt der gezeichneten 3,2/5/5,8). Sie haben
   nichts kaputtgemacht, aber sie haben mich beim Nachrechnen des
   Kantenversatzes in die Irre gefuehrt -- entfernt, mit Verweis auf
   die eine lebende Stelle. Dabei fiel auf, dass der Versatz der Stunde
   noch mit einer Kantenbreite von 0,9 rechnete, obwohl sie laengst
   0,6 ist: 2,05 statt 2,20.

NICHT KRUMM war der Rest, auch das gemessen: 9 runde Elemente, 0 Eier;
alle 15 Kreise der Uhr auf demselben Mittelpunkt; Kasten exakt
quadratisch; Umfaenge stimmen auf 0,01 Einheiten zum Muster. Die 30
gefundenen Drehungen sind samt und sonders gewollt (Chilis, Husky,
Wasserzeichen -8 Grad).

Geprueft: pruef-start-ansicht, pruef-css-klassen, pruef-buehne -- alle
gruen. Jede Messung mit Gegenprobe.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-09-09 03:42:00 +02:00
co-authored by Claude Opus 5
parent 6676998af8
commit 74ae4c292e
2 changed files with 104 additions and 17 deletions
+53 -9
View File
@@ -5475,9 +5475,17 @@ body[data-fremde-sicht="ja"]::after {
vertauschte Umfaenge sieht aus wie eine haengende Uhr: Der Bogen
endet dann nie dort, wo er soll. U = 2 * pi * r, ausgerechnet und
nicht geschaetzt. */
/* DIE BREITEN STEHEN NICHT HIER, SONDERN IM ABSCHNITT "Der Ring wird
dunkel" WEITER UNTEN (Sekunde 3,2 / Minute 5 / Stunde 5,8).
Bis zum 09.09.2026 standen an dieser Stelle noch 2,6 / 3 / 3,6 --
Werte, die seit dem Umbau vom selben Tag nie mehr gezeichnet wurden,
weil die spaeteren Regeln bei gleicher Spezifitaet gewinnen. Sie sind
entfernt statt korrigiert: Zwei Zahlen fuer dieselbe Sache sind der
Fehler, nicht die falsche von beiden. Wer die Breite aendert, aendert
sie unten -- und muss dann auch den Kantenversatz oben nachziehen. */
.uhr__sekunde {
stroke: url(#uhr-sekunde-farbe);
stroke-width: 2.6;
stroke-dasharray: 285.88; /* r = 45.5 */
stroke-dashoffset: 285.88;
}
@@ -5485,7 +5493,6 @@ body[data-fremde-sicht="ja"]::after {
den beiden farbigen Bahnen. */
.uhr__minute {
stroke: url(#uhr-minute-farbe);
stroke-width: 3;
stroke-dasharray: 241.90; /* r = 38.5 */
stroke-dashoffset: 241.90;
}
@@ -5493,7 +5500,6 @@ body[data-fremde-sicht="ja"]::after {
sie bewegt sich in fuenf Minuten um ein halbes Grad. */
.uhr__stunde {
stroke: url(#uhr-stunde-farbe);
stroke-width: 3.6;
stroke-dasharray: 197.92; /* r = 31.5 */
stroke-dashoffset: 197.92;
}
@@ -5507,7 +5513,6 @@ body[data-fremde-sicht="ja"]::after {
stroke-width: 4.6;
}
.uhr__schatten .uhr__sekunde { stroke-width: 3.8; }
.uhr__schatten .uhr__minute { stroke-width: 4.2; }
/* DIE BELEUCHTETE OBERKANTE. Duenner, hell, nach oben versetzt: Sie
schaut oben hervor und verschwindet unten -- genau das tut eine
@@ -5555,7 +5560,17 @@ body[data-fremde-sicht="ja"]::after {
Sekunde (3,2 - 0,9) / 2 = 1,15 -> noch 0,75
Minute (5,0 - 0,9) / 2 = 2,05 -> noch 1,65
Stunde (5,8 - 0,9) / 2 = 2,45 -> noch 2,05
Stunde (5,8 - 0,6) / 2 = 2,60 -> noch 2,20
DIE STUNDE RECHNET MIT 0,6, NICHT MIT 0,9 (nachgezogen 09.09.2026).
Ihre Kante wurde weiter oben auf 0,6 verschmaelert ("ein Hauch, kein
Strich") -- der Versatz hier blieb aber auf dem Wert stehen, der zu
0,9 gehoerte. Das ist genau der Fehler, der in dieser Datei schon
mehrfach vorkam: Eine Zahl wird geaendert, die zweite Zahl, die aus
ihr folgt, nicht. Folge waren 0,15 Einheiten (0,37 px) zu wenig
Versatz -- der Lichtstrich lag knapp INNERHALB der Oberkante statt
auf ihr. Wer die Breite der Kante wieder anfasst, aendert diese
Zeile mit.
`px` in einem SVG-Transform sind Einheiten des viewBox, keine
Bildpunkte -- die Uhr skaliert damit mit, ohne dass sich das
@@ -5564,10 +5579,39 @@ body[data-fremde-sicht="ja"]::after {
Dass die Kante immer NACH OBEN versetzt ist und nicht senkrecht zum
jeweiligen Balken, ist Absicht: Es ist ein Licht von oben, kein
aufgemalter Rand. Oben streift es die Oberkante, unten die
Unterkante -- genau das tut Licht. */
.uhr__kante .uhr__sekunde { transform: translateY(-0.75px); }
.uhr__kante .uhr__minute { transform: translateY(-1.65px); }
.uhr__kante .uhr__stunde { transform: translateY(-2.05px); }
Unterkante -- genau das tut Licht.
ES MUSS translateX SEIN, NICHT translateY (09.09.2026, gemessen).
Das SVG `.uhr__ring` traegt `transform: rotate(-90deg)`, damit die
Ringe oben beginnen und nicht rechts. Diese Drehung gilt fuer ALLES
darin -- auch fuer einen Versatz. Ein `translateY` innerhalb des
SVG erscheint auf dem Bildschirm deshalb nicht als "oben", sondern
als "links".
Nachgemessen an den Kaesten (`getBoundingClientRect`, also in
Bildschirmkoordinaten) stand bei allen vier Lagen dy = 0:
Schatten Stunde dx 1,25 dy 0 -> nach RECHTS
Kante Sekunde dx -2,62 dy 0 -> nach LINKS
Kante Minute dx -4,67 dy 0 -> nach LINKS
Kante Stunde dx -5,93 dy 0 -> nach LINKS
Das Licht kam also von der Seite, waehrend die Kachel selbst ihren
Schlagschatten mit `0px 14px` nach UNTEN wirft -- zwei Lichter in
einem Koerper. Sichtbar war es als heller Strich, der bei den
Balken oben LAENGS durchlief statt auf der Oberkante zu sitzen;
genau der "Kratzer", der an den Stunden gestoert hat. Die
Verschmaelerung der Kante auf 0,6 hat ihn gedaempft, aber nicht
beseitigt -- weil die Ursache die Richtung war, nicht die Breite.
Die Drehung bildet SVG-x auf Bildschirm-"oben" ab, deshalb steht
hier jetzt ein POSITIVES translateX. Die Betraege bleiben, sie
waren nie das Problem. Wer die Drehung des Rings anfasst, muss
diese vier Zeilen und die zwei `transform` im HTML mitdrehen. */
.uhr__kante .uhr__sekunde { transform: translateX(0.75px); }
.uhr__kante .uhr__minute { transform: translateX(1.65px); }
.uhr__kante .uhr__stunde { transform: translateX(2.2px); }
/* DIE ZIFFERNINSEL (07.09.2026).