Neigung am Fahrzeug darstellen
Neben der Libelle gibt es jetzt eine zweite Darstellung: die Neigung am Fahrzeug selbst, mit den Zeichnungen aus dem Ursprungsprojekt. Umschaltbar und über Starts hinweg gemerkt. Seitenansicht für längs, Heckansicht für quer. Die Heckansicht ist bewusst gewählt, nicht die Frontansicht: sie teilt die Blickrichtung des Fahrers, links im Bild ist also links am Fahrzeug. Von vorne betrachtet wäre es seitenverkehrt und damit beim Ausrichten irreführend. Die Zeichnungen sind weiss gefüllt mit dunklen Linien. Als Schablone eingefärbt wurde daraus eine massive Fläche, weil alles Deckende zur Tintfarbe wird - Fenster, Räder und Konturen verschwanden. Tools/ make-vehicle-art übersetzt deshalb die Helligkeit in Deckkraft: dunkle Linien voll deckend, helle Karosserie nur angedeutet. Eingefärbt bleibt die Zeichnung erhalten und passt sich Hell- wie Dunkeldarstellung an. Die Neigung wird dreifach überhöht gezeigt, sonst wären zwei Grad am Fahrzeug kaum auszumachen. Das steht als Hinweis darunter, zusammen mit der Klarstellung, dass die Gradzahlen echt sind - sonst nähme man den Bildwinkel für den tatsächlichen. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -14,6 +14,7 @@ struct AlignmentAssistantView: View {
|
||||
|
||||
@State private var assistant = AlignmentAssistant()
|
||||
@State private var didAnnounceTarget = false
|
||||
@AppStorage("levelDisplayStyle") private var displayStyle: LevelDisplayStyle = .bubble
|
||||
|
||||
private var state: LevelState { bluetooth.levelStates[device.id] ?? LevelState() }
|
||||
|
||||
@@ -21,9 +22,21 @@ struct AlignmentAssistantView: View {
|
||||
NavigationStack {
|
||||
ScrollView {
|
||||
VStack(spacing: 24) {
|
||||
LevelBubble(pitch: state.pitch, roll: state.roll)
|
||||
.frame(maxWidth: 320)
|
||||
.padding(.top, 8)
|
||||
Picker("Darstellung", selection: $displayStyle) {
|
||||
ForEach(LevelDisplayStyle.allCases) { style in
|
||||
Text(style.title).tag(style)
|
||||
}
|
||||
}
|
||||
.pickerStyle(.segmented)
|
||||
.padding(.top, 8)
|
||||
|
||||
switch displayStyle {
|
||||
case .bubble:
|
||||
LevelBubble(pitch: state.pitch, roll: state.roll)
|
||||
.frame(maxWidth: 320)
|
||||
case .vehicle:
|
||||
VehicleTiltView(pitch: state.pitch, roll: state.roll)
|
||||
}
|
||||
|
||||
adviceBanner
|
||||
|
||||
|
||||
Reference in New Issue
Block a user