Seiten- und Heckansicht kamen als weiß gefüllte Vorlage ohne Alphakanal (Tools/California Side.png, Tools/California Back.png). Dafür ein neues Werkzeug ergänzt, das den weißen Grund in echte Transparenz übersetzt (mit weichem statt hartem Schwellwert, um Kanten nicht auszufransen), danach wie gewohnt durch make-vehicle-art.swift geschickt. California hatte bisher keine eigene Heckansicht und griff ersatzweise auf die von Vanster zurück – jetzt eigenes CaliforniaRear-Imageset, VehicleGraphicStyle.rearImageName entsprechend angepasst. Seiten- und Heckbild sind quadratisch (1254×1254), passend zu den bestehenden Seitenverhältnissen (sideAspect/rearAspect = 1) – keine Anpassung dort nötig. Build und Tests grün. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Werkzeuge
make-app-icon.swift
Bereitet logo.png zum App-Icon auf. Nötig, weil das Logo als fertige Kachel
vorliegt: mit weißem Rand und eingebrannten runden Ecken. iOS maskiert die
Ecken selbst und verbietet einen Alphakanal – unbearbeitet säße auf dem
Homescreen ein weißer Rahmen um das Icon.
Das Skript schneidet den weißen Rand weg, macht den Ausschnitt quadratisch und versetzt ihn so weit nach innen, bis die vier Ecken im Hintergrund liegen. Anschließend skaliert es auf 1024×1024 ohne Alphakanal.
swiftc -O -o /tmp/make-app-icon Tools/make-app-icon.swift
/tmp/make-app-icon logo.png VanControl/Assets.xcassets/AppIcon.appiconset/AppIcon-1024.png
Nur nötig, wenn logo.png sich ändert – das erzeugte Icon liegt im Repo.
make-vehicle-art.swift
Bereitet die Fahrzeugzeichnungen aus VanAlign Pro für die Neigungsanzeige auf. Die Vorlagen sind weiß gefüllt mit dunklen Linien und Fenstern. Als Schablone eingefärbt ginge beides verloren, weil alles Deckende zur Tintfarbe wird – übrig bliebe eine massive Fläche.
Das Skript übersetzt deshalb die Helligkeit in Deckkraft: dunkle Linien werden voll deckend, die helle Karosserie nur angedeutet. Eingefärbt ergibt das eine gefüllte Form, in der die Details erhalten bleiben.
swiftc -O -o /tmp/make-vehicle-art Tools/make-vehicle-art.swift
sips --resampleHeight 600 heckansicht.png --out /tmp/rear.png
/tmp/make-vehicle-art /tmp/rear.png VanControl/Assets.xcassets/VansterRear.imageset/VansterRear.png
Jedes Fahrzeug-Grafikset (siehe VehicleGraphicStyle) hat sein eigenes
Bildpaar <Name>Side/<Name>Rear. Hat die Vorlage schon einen
transparenten Hintergrund, geht die Quelldatei direkt ins Skript. Liegt sie
auf weißem Grund, muss der Rand vorher weg – siehe remove-white-background.swift.
remove-white-background.swift
Vorstufe zu make-vehicle-art.swift, wenn die Vorlage auf weißem statt
transparentem Grund liegt (kein Alphakanal). Ohne diesen Schritt hielte
make-vehicle-art die ganze Fläche für Zeichnung und färbte den Hintergrund
mit ein.
Reines Weiß wird voll durchsichtig, alles andere bleibt stehen; ein weicher Übergang statt einer harten Schwelle vermeidet gezackte Kanten an kantengeglätteten Linien.
swiftc -O -o /tmp/remove-white-background Tools/remove-white-background.swift
swiftc -O -o /tmp/make-vehicle-art Tools/make-vehicle-art.swift
/tmp/remove-white-background seitenansicht.png /tmp/seite-transparent.png
/tmp/make-vehicle-art /tmp/seite-transparent.png VanControl/Assets.xcassets/CaliforniaSide.imageset/CaliforniaSide.png