Projekt

Allgemein

Profil

Feature #65

Von Julius Haman vor 6 Tagen aktualisiert

Ziel: Die Trainingsübersicht überarbeiten - statt des Inline-Detailpanels eine eigene Trainingsdetailseite im Strava-/Garmin-Stil (Kacheln, Diagramm, Karte), von der aus sich durch die Trainings blättern lässt. 

 ### Umgesetzt (3.1.1) 

 * **Eigene Trainingsdetailseite mit Blätterfunktion**: Zusammenfassungs-Kacheln, Diagramm und bei topographischen Trainings die Route mit hervorgehobenem gefahrenen Abschnitt. Vor/Zurück blättert in derselben Reihenfolge wie die Übersicht (neuestes zuerst). „Zurück" markiert in der Übersicht das zuletzt angesehene Training (auch nach dem Blättern) und scrollt das Grid dorthin 
 * **Diagramm**: bei topographischen Trainings das Geländeprofil der tatsächlich gefahrenen Strecke (aus TrainingPoint.Distance/Elevation statt aus der Profildefinition), Pulszonen-Bänder wie in #66 
 * **Anvisieren**: orangene Hilfslinie im Höhenprofil und zugehöriger Streckenpunkt auf der Karte 
 * **Pulszonen-Kreisdiagramm** (Zeitanteil je Zone, Grenzen aus dem historisierten Maximalpuls, #66) mit Farben der Skin-Palette; 0%-Zonen nur in der Legende; FormatException im Tracker beim Klick behoben 
 * **Kacheln**: feste Reihenfolge Distanz, Dauer, Kalorien, Ø Geschwindigkeit, Ø Puls, Ø Leistung, Ø Trittfrequenz, Fitnessnote (Max-Kacheln und „Höhe" entfernt). Profilbezogene Kacheln - Start im Profil, Ende im Profil, Profillänge, Anstieg, Abfahrt - stehen nur bei topographischen Trainings in einer eigenen Zeile darunter. Die Zahlen sind wie in der Werteleiste eines laufenden Trainings eingefärbt (Distanz/Trittfrequenz grün, Puls rot, Leistung blau, Kalorien dunkelrot, sonst grau) 
 * **Einheiten am Wert**: „(DS)"/„(max.)"/Klammer-Einheiten aus den Beschriftungen entfernt; führendes „Ø"/„Min."/„Max.", die Einheit (km, km/h, W, m, %, bpm) steht klein hinter dem Zahlenwert - in Übersicht (auch Distanz-Spalte), Detailkacheln und Profilansicht 
 * **Profil weiterfahren**: bei einem topographischen Training, dessen Profil noch nicht zu Ende gefahren ist (Endposition = Startoffset + gefahrene Distanz, Toleranz 1 m), gibt es auf der Detailseite neben den Blätter-Buttons den Button „Profil weiterfahren bei x km", und der Fortsetzen-Button im Grid ist aktiv. Beides startet ein neues topographisches Training im 3D-Fenster ab der Endposition (wie der Startdialog mit gewählter Startdistanz, kein Fortsetzen desselben Trainings). Am Profilende ist beides inaktiv/ausgeblendet 
 * **Übersicht**: rechtes Detail-Panel mit ausgeblendeten Spalten und Details-Toggle wieder eingebaut 
 * **Startposition im Profil**: Training.StartOffsetMeters speichert bei topographischen Trainings die absolute Startposition, damit „Start im Profil"/„Ende im Profil" auch nach dem Speichern stimmen. TrainingPoint.Distance ist immer 0-basiert (Wegmessgerät des Trainings); das Diagramm beginnt damit bei 0 km 
 * **Bestandsdaten (Migration Version3110, keine neue Migration)**: mehretappige topographische Trainings vor #47 bekommen ihren Offset aus DistanceFrom bzw. dem ersten TrainingPoint; deren Distance wird dabei auf 0-basiert bereinigt. LatLon-Backfill und TCX-Export-Fallback rechnen die Profilposition als StartOffsetMeters + Distance. Trainings ab #47 behalten NULL (Offset dort nicht rekonstruierbar, Anzeige fällt auf 0 zurück). Zudem Training.Profile_id direkt statt Zwischentabelle ProfileTraining (Bestandsdaten übernommen) 
 * **Fehlerbehebungen an der Detailseite**: Dark-Mode-Textfarbe, Mausrad scrollt die Seite statt Diagramm/Karte zu zoomen, Koordinatensprung ans Ziel (GetLatLonFromPosition klemmt jetzt auf den letzten Punkt statt (0,0) zu liefern; bereits betroffene Bestandstrainings werden beim Kartenaufbau gefiltert), Karte überdeckt nicht mehr die Scrollbar, eine wiederverwendete Kartenkontrolle (TrackMapControl.Shared) statt einer WebView2 pro Seite, kein Fade/Slide beim Seitenwechsel, Höhenmeter nur noch bei topographischen Trainings (vorher 0 statt leer bei Pulsprofilen) 

Zurück