Point wind arrow into the wind (standard meteorological convention)

WindArrowIcon zeigte bisher windabwaerts (Fliessrichtung der Luft),
gedreht um (dirFrom + 180) Grad - 1:1 uebernommen aus windArrowSvg() im
HTML-Demonstrator. Die Standardkonvention bei Wetterfahnen und
Windbarben auf Wetterkarten ist jedoch, dass der Pfeil windaufwaerts
zeigt, also dorthin, woher der Wind kommt. Dreht jetzt direkt um
dirFromDeg statt (dirFromDeg + 180) - betrifft zentral alle Verwendungen
(Kopfleisten-Windpille, Wegpunktlisten-Zeile, Windmarker auf der Karte),
da diese alle nur dirFromDeg durchreichen.

Weicht damit bewusst vom HTML-Demonstrator ab (dort weiterhin
Fliessrichtung) - im Code-Kommentar dokumentiert.

flutter analyze und alle 117 Tests bestehen unveraendert.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
Constantin Leue
2026-07-30 06:02:35 +02:00
co-authored by Claude Sonnet 5
parent f25c312697
commit 2f697f1356
+5 -5
View File
@@ -2,9 +2,10 @@ import 'dart:math' as math;
import 'package:flutter/material.dart';
/// Windpfeil, der in die Richtung zeigt, in die der Wind weht (nicht woher
/// er kommt) - analog windArrowSvg() im HTML-Demonstrator, dort ebenfalls
/// um (dirFrom + 180) Grad gedreht.
/// Windpfeil, der in den Wind zeigt (also dorthin, woher er kommt) -
/// Standardkonvention bei Wetterfahnen und Windbarben auf Wetterkarten.
/// Weicht damit bewusst von windArrowSvg() im HTML-Demonstrator ab, der
/// stattdessen um (dirFrom + 180) Grad in Fliessrichtung des Windes dreht.
class WindArrowIcon extends StatelessWidget {
const WindArrowIcon({
super.key,
@@ -19,9 +20,8 @@ class WindArrowIcon extends StatelessWidget {
@override
Widget build(BuildContext context) {
final towardDeg = (dirFromDeg + 180) % 360;
return Transform.rotate(
angle: towardDeg * math.pi / 180,
angle: dirFromDeg * math.pi / 180,
child: Icon(Icons.navigation, size: size, color: color),
);
}