Files
harbour-tide/README.md
T
2026-08-24 13:41:07 +02:00

73 lines
2.9 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# harbour-tide
Previsioni di marea **universali** per Sailfish OS — client nativo Silica con
motore armonico locale (nessuna API di maree: calcolo offline, per sempre).
## Funzionalità
- **Motore armonico a 7 costituenti** (M2, S2, N2, K1, O1, P1, K2):
`h(t) = Z₀ + Σ Aᵢ·cos(ωᵢt + φᵢ)`, calcolato localmente
- **16 porti noti** con costanti realistiche (Italia + Londra, New York,
San Francisco, Tokyo, Sydney, Honolulu)
- **Ricerca libera delle città**: geocoding OpenStreetMap (Nominatim) con
fallback su dataset locale offline; le costanti arrivano dal porto noto
entro 222 km, altrimenti da una stima sintetica da lat/lon (etichettata)
- **Card "porto più vicino"** in evidenza quando si apre una città cercata
- **Grafico 24/48/72 h** con alte/basse maree marcate e orari, tap per
altezza in un punto
- **Fase lunare e alba/tramonto** calcolati
- **Italiano e inglese** (selettore lingua nelle impostazioni, applicata al
riavvio; catalogo `.qm` nel data dir dell'app)
- **Preferenze salvate**: lingua, porto preferito (aperto all'avvio e
mostrato sulla cover), unità (m/ft), intervallo del grafico
## Build
Serve il [Sailfish SDK](https://sailfishos.org/wiki/Sailfish_SDK).
```sh
sfdk target install SailfishOS-5.0.0.62-aarch64 # o il target del dispositivo
sfdk target use SailfishOS-5.0.0.62-aarch64
sfdk build # produce l'RPM in RPMS/
sfdk deploy # installa sul dispositivo connesso
```
Target consigliati: `aarch64` (Jolla Phone 2026, Xperia 10 II/III),
`armv7hl` (Xperia X, Jolla C), `x86_64` (emulatore).
## Struttura
```
src/ C++: main.cpp (lingua + translator), settings
(QSettings: language, preferredPort, unit, days)
qml/js/tides.js motore armonico (ES5 puro, compatibile Qt 5.6):
costanti, predizione, estremi, stima sintetica,
geocoding locale, luna, sole
qml/pages/ MainPage (porti + ricerca libera), DetailPage
(grafico canvas, eventi, card porto vicino, astro),
SettingsPage (lingua, unità, intervallo, porto)
qml/cover/ cover con porto preferito e prossima marea
translations/ harbour-tide.ts (EN sorgente), harbour-tide_it.ts
icons/ icone 86/108/128/172 (make_icons.py, stile harbour)
rpm/ spec e desktop file (SailJail: Internet)
```
## Configurazione
File: `~/.config/harbour/tide/tide.conf` (QSettings, zona persistente
della sandbox SailJail). Chiavi: `language` (system/en/it), `preferredPort`,
`unit` (m/ft), `days` (1/2/3).
## Limiti noti
- Le costanti dei porti sono sintetiche ma realistiche; la stima da lat/lon
non distingue bacini chiusi (Mediterraneo) da oceano aperto.
- Precisione di un vero modello globale (FES2014/TPXO9): ~10–20 cm in oceano
aperto; il motore è predisposto a ricevere le costanti da griglia.
- Non per navigazione.
- La lingua si applica al riavvio dell'app.
## Licenza
MIT