Help save net neutrality! Learn more.
Close

#59 Tide calculator

open
nobody
tools (4)
5
2012-12-18
2012-12-18
Anonymous
No

Tidenrechner soll zu jedem Punkt an der Küste eine Tidenkurve zeigen
für die nächsten 7 Tage
zu einem wählbaren Startzeitpunkt

Auf der Online-Karte soll jeder klickbare Punkt (Häfen) über einen Link eine Tidenkurve liefern
Der Tidenrechner soll auch offline funktionieren (Android, iOS)

Discussion

  • humbach

    humbach - 2013-01-21

    Ich habe angefangen den Tidenrechner zu machen.

     
  • humbach

    humbach - 2013-02-21

    Allgemein

    Folgende Aufteilung:
    - FindLoc sucht zu dem vom Benutzer eingegebenen Punkt [Lat, Lon] die nächste (die zwei nächsten) Orte [StatID] für die Koeffizienten vorliegen.
    - MakePred macht für diesen Ort [StatID] eine Vorhersage für den Zeitraum [t1 - t2]
    - GetTide berechnet für diesen Ort [StatID] die Tide zum Zeitpunkt [t]
    - DrawPred erzeugt eine grafische Darstellung der Vorhersage und sendet sie an den Benutzer, hier können dann verschiedene Formate erzeugt werden.
    - TideDB lädt die Tidendaten aus einer Datei in den Speicher, liefert einzelnen Record [bin] zu einer Station [StatID], wird intern von den Programmen benutzt
    - Hilfsprogramme:
    -- HandlePred nimmt http-Requests entgegen und liefert html-Dateien an Browser aus
    -- Konverter um harmonische Koeffizienten in die Datenbank zu laden
    -- Tester um Inhalte der Datenbank zu überprüfen

    Programme alle als daemon, sie werden also vom Betriebssystem gestartet und laufen immer, implementiert. Sie kommunizieren jeweils über TCP-Ports mit ihren FrontEnds, die (zumindest zum Teil) über http mit dem Browser kommunizieren.
    Der Zugriff für die Tiefendaten(korrektur) erfolgt direkt über TCP-Port.

    Für die Vorhersage aus der Karte:
    Klick auf Position erzeugt http--Request mit Angabe von Position (Lat, Lon) und schickt den Request an FindLoc. FindLoc liefert die Station als Marke?

    Ich bin jetzt gerade am MakePred dran, TideDB habe ich schon.

     

Log in to post a comment.