Projekt

Allgemein

Profil

Aktionen

Feature #66

geschlossen
JH

Überarbeitung der Pulsbereiche

Feature #66: Überarbeitung der Pulsbereiche

Von Julius Haman vor 8 Tagen hinzugefügt. Vor 7 Tagen aktualisiert.

Status:
Erledigt
Priorität:
Normal
Zugewiesen an:
-
Zielversion:
Beginn:
Abgabedatum:
% erledigt:

0%

Geschätzter Aufwand:
Gefunden in Version:

Beschreibung

Ziel: Die bisherigen 3 Pulszonen (Leicht/Mittel/Hart, 60/70/80/90% von MaxPulse) durch das Standard-5-Zonen-Modell ersetzen/ergänzen (Erholung 50-60%, Leicht 60-70%, Mittel 70-80%, Hart 80-90%, Maximum 90-100%) und im ganzen Programm sichtbar machen - mit einer eigenen Farbskala statt (ohne Login nicht verifizierbarer) Garmin-Farben.

Umgesetzt (Branch #66, seit 3.1.0)

  • User-Modell: 5 gleich breite Zonen (je 10% von MaxPulse) berechnet (User.cs, User.PulseZoneIndex - auch als statische Variante mit explizitem Maximalpuls für historisierte Werte); neues Feld User.RestingPulse (Ruhepuls) - erfasst, fließt aber vorerst nicht in die Zonenberechnung ein (Grundlage für ein späteres, optionales Karvonen/HRR-Modell)
  • Benutzerverwaltung (UsersView): Farbbalken + 5-Zeilen-Legende statt bisher reiner Zahlenliste; eigene Farbskala in Skins/Common/PulseZones.xaml; Formular vertikal scrollbar, app-weite TextBox-Padding-Overrides vereinheitlicht (Style-Default statt lokaler Überschreibung)
  • Live-Training (ErgoDataControl): vertikaler 5-Segment-Zonenbalken neben der Puls-Kachel, aktuelle Zone durch volle Deckkraft + Rahmen hervorgehoben (eine erste Variante mit komplett eingefärbter Kachel wurde verworfen, wirkte zu unruhig)
  • Diagramme (ErgometerDataPlotControl): Pulszonen als leicht eingefärbte Bereiche hinter der Kurve - im Live-Trainingsdiagramm (bpm-Grenzen des Benutzers), in der Profilübersicht bei Pulsprofilen (50/60/70/80/90/100% Maximalpuls) sowie in der Trainingsübersicht und im Trainingsdetail (bpm-Grenzen aus dem historisierten Maximalpuls des Trainings; bei topographischen Trainings bewusst keine Bänder, dort ist die Wertachse die Höhe). Bei Pulsprofilen wurde die Fläche unter der Sollkurve entfernt (verdeckte sonst die Zonen-Bänder), die Y-Achse geht dort mindestens bis 120%, damit die oberste Zone immer sichtbar ist
  • Historisierung pro Training: beim Start eines Trainings werden Training.MaxPulseAtRecording (MaxPulse bzw. MaxPulseCalculated-Fallback) und Training.RestingPulseAtRecording gespeichert - Zonen eines Trainings werden mit dem zum Aufzeichnungszeitpunkt gültigen Wert berechnet, spätere Profiländerungen lassen alte Trainings unberührt (wie bei Garmin/Strava). Es werden nur die zwei Rohwerte gespeichert, die Zonengrenzen lassen sich daraus ableiten. Migration Version3110 (DBVersion 3.1.1.0) füllt Bestandstrainings mit dem aktuellen Profilwert des Nutzers als Näherung nach; für Nutzer, die dabei noch keinen Maximal-/Ruhepuls hinterlegt hatten, holt die Benutzerverwaltung das beim erstmaligen Setzen einmalig nach (spätere Änderungen lösen bewusst kein erneutes Nachfüllen aus)
  • Verwendung der Historisierung in anderen Tickets: Pulszonen-Kreisdiagramm auf der Trainingsdetailseite (Zeitanteil je Zone, #65), TCX-Export schreibt Max-/Ruhepuls als Activity-Notes (#70)

Offen / bewusst zurückgestellt

  • Karvonen/HRR als alternative Zonenberechnung (Ruhepuls wird erfasst und pro Training historisiert, aber noch nicht für Zonen verwendet - Nutzerentscheidung: erst später, falls überhaupt)
Aktionen

Auch abrufbar als: PDF Atom