Files
feuerwerk/todo-notes/done/sprite-size.md
T
root 37e1450fca Answer the sprite width/height note and file it under done/
Sprite width/height stay fractional. They are geometry, not counts: the
aspect-ratio buttons compute height * w/h and legitimately produce values like
9.090909090909092 (compared with a 1e-9 tolerance), and both axes are scrubbable.
Rounding them would break the ratio the buttons just established.

Only fields that are integral by meaning round (slice grid, frame rect, camera
view, font size) - that is what 1b16a55 fixed.
2026-09-09 10:35:49 +02:00

25 lines
1.3 KiB
Markdown

sprites haben das property width und height:
ist es hier auch sinnvoll auf integer umzuändern oder sollen wir .000 decimal dran lassen?
---
**Antwort (2026-09-09): nein, bleibt fraktional — ganzzahlig waere hier schaedlich.**
Sprite-Maße sind keine Zaehlwerte, sondern Geometrie. Zwei Stellen brauchen die Brueche:
- Die Aspect-Ratio-Knoepfe rechnen `fitAxisToAspect` (`height * w/h`). Das liefert echte
Brueche — der Code nennt selbst `9.090909090909092` als Beispiel. Auf ganze Zahlen
gerundet stimmt die Proportion nicht mehr, und der Knopf meldet danach, dass das
Seitenverhaeltnis nicht passt (Vergleich laeuft mit Toleranz `1e-9`).
- Am Objekt sind width/height ziehbar (Scrub), genau wie Position und Collider-Maße.
Ganzzahlig sind nur Felder, die ihrer Bedeutung nach ganzzahlig sind: Slice-Spalten/Zeilen,
Frame-Rect, Kamera-View, Font size. Die runden seit `1b16a55` auch wirklich (vorher war
`decimals` reine Kosmetik — getippte `640.5` wurden als `640.5` gespeichert und als `641`
angezeigt).
Offen bleibt die **Anzeige**-Frage, die dahinter steckt: sollen ueberfluessige Nullen weg
(`100` statt `100.000`, `9.091` bleibt)? Das waere eine Zeile in `formatNumber` und wuerde
fuer alle Zahlenfelder gelten; der Graph macht es bereits so. Dafuer bei Bedarf eine eigene
Notiz anlegen.