Sonnenauf und Untergang

  • Hallo, bin total begeistert von Glopus und seine Möglichkeiten!!!


    Habe meine eigene ini erstellt und möchte gerne den Sonnenauf- und Untergang einbringen.
    Gibt es eine Möglichkeit ein Textfeld variabel zu gestalten? Ähnlich wie die farbige Darstellung der Sat. Oder die Hintergrundfarbe nach Uhrzeit zu wechseln, wie ich es schon im Forum gefunden habe?


    z.B:
    [SaSu]
    Pos = RECT(340,150,477,180)
    Type =0
    Text=SaSutxt
    Format = 0
    Color_0 = Color(150,0,30)
    Color_1 = Color(255,165,0);orange
    Font.lfFaceName = Tahoma
    Font.lfWeight = 700
    Font.lfHeight = 14
    [SaSutxt]
    Value=%DateTime%
    22.2.2009=SA 7.28 - Su 18.00
    23.2.2009=SA 7:26 - SU 17:52
    24.2.2009=SA 7:24 - SU 17:54
    21.2.2009=SA 7:26 - Su 17:52
    22.2.2009=SA 7:24 - Su 17:54
    23.2.2009=SA 7:22 - Su 17:55
    24.2.2009=SA 7:20 - Su 17:57
    25.2.2009=SA 7:18 - Su 17:59
    26.2.2009=SA 7:16 - Su 18:01
    27.2.2009=SA 7:14 - Su 18:02
    28.2.2009=SA 7:12 - Su 18:04



    Bei Text=SaSutxt habe ich schon verschidene Formatierungen versucht, zeigt mir aber nicht den Sonnenauf- und Untergang an.


    Solch eine Abfrage könnte man dann aber auch für Termine oder Erinnerungen nehmen. 8)

  • Das mit der Hintergrundfarbe ist eine Speziallösung, die nicht auf Textfelder übertragbar ist. Momentan sehe ich keine Möglichkeit Sonnenauf- und untergänge anzuzeigen.

  • Danke für die zügige Antwort!


    Gäbe es bei der nächsten Version eine Möglichkeit ein Platzhalter dafür zu schaffen, wenn die Nachfrage groß genug ist. Ist nur mal eine Anfrage.



    Ansonsten nochmal einen Lob!!

  • Hallo und Willkommen im Forum!!!! :P :P :P :P




    Ich glaube wenn man alle Wünsche und Ideen hier in Glopus umsetzten würde bräuchte man bald keine anderen Programme!!!!


    Nur ob das eine noch Bedienen könnte ?????



    Ich finde eine gute Möglichkeit eigene Speziallösungen zu kreieren ist MortScript (zu finden unter http://www.sto-helit.de) damit kann man mit einer recht einfachen Scriptsprache sehr viel machen!


    Mit einiger Übung/Einarbeitung und Ideen kann man für sich Glopus ohne Probleme ein Script basteln das nach einer Formel den Sonnenaufgang ausrechnet und dann in Glopus eine 1 Pixelschaltfläche drückt um die Karteneinblendungen umzuschalten , Termine Anzeigt , Töne abspielt und und und


    Gruß
    Silver

    Regioausflug.de Wandertourenplaner für Odenwald, Rhön, Mittelrhein und Taunus!!!!


    Ein Stau ist nur hinten blöd - vorne gehts !!!!

    Einmal editiert, zuletzt von Silver34 ()

  • OK,


    habe diese Woche Kurzarbeit und wusste bis gerade eben nicht was ich machen soll. :) Werde mich nun mal mit MortScript beschäftigen. Installiert ist es schon. Vielleicht hat ja schon jemand eine Lösung. Die Daten für den Auf und Untergang kann man sich mit "Sonnengenerator" von Astroexcel erstellen. Ein Excelprogram. Die Zeiten sind also kein Problem. Kopieren - Einfügen


    Schönen Abend noch an alle.

  • Hallo!


    MortScript scheint ja ein starkes Tool zu sein. Habe schon ein wenig rumexperimentiert und bin begeistert. Werde erstmal versuchen meine Sonnenauf- und Untergangszeiten über eine INI auszulesen.


    Jetzt meine Fragen: ?(


    Was ist der Unterschied zwischen GetTime und FormatTime?
    Bei beiden zeigt Message das korrekte Datuman


    datum=FormatTime("d.m.Y")
    Message (datum)
    GetTime datum, d.m.Y
    Message (datum)



    Lässt sich der Schlüssel bei IniRead mit einer Variable belegen?


    z.B x=iniRead("Sonne.ini", "Zeiten", "datum")


    Wenn ich bei "datum" datum stehen lasse, werden die Daten nicht aus der Datei Sonne.ini gelesen. wenn ich aber statt "datum" "26.02.09 eingebe, werden sie gelesen und auch korrekt in die neue Datei eingefügt.


    ---schnipp---
    ;entweder
    datum=FormatTime("d.m.Y")
    Message (datum)



    ;oder
    GetTime datum, d.m.Y
    Message (datum)


    x=iniRead("Sonne.ini", "Zeiten", "datum")


    sleep 2000


    iniWrite("SonneTest.ini", "Zeiten", "Text",x)


    ---schnapp---




    Hoffe, dass meine Fragen verständlich sind. Bin zwar nicht der große Programierer, macht aber trotzdem spass. Zum Glück kann man noch nichts im Garten machen!



    Gruss
    glopususer

  • Zitat

    Original von glopususer
    Hallo!


    MortScript scheint ja ein starkes Tool zu sein. Habe schon ein wenig rumexperimentiert und bin begeistert.


    Jepp!

    Zitat


    Was ist der Unterschied zwischen GetTime und FormatTime?


    Bei GetTime kann man gelichzeitig mehere Variabelen mit Werten belegen Stunde, Minute, Sek,Tag...


    Bei Formattime wird 1 Variabele mit der entsprechenden Formatierung belegt!


    Zitat


    Lässt sich der Schlüssel bei IniRead mit einer Variable belegen?


    z.B x=iniRead("Sonne.ini", "Zeiten", "datum")


    Wenn ich bei "datum" datum stehen lasse, werden die Daten nicht aus der Datei Sonne.ini gelesen. wenn ich aber statt "datum" "26.02.09 eingebe, werden sie gelesen und auch korrekt in die neue Datei eingefügt.


    Klar sonst währe MortScript nur halbso effektiv!!!


    Du must nur vorher dein Wert (=Datum) in eine Variabele legen!!!


    Datum = FormatTime( "d.m.Y", TimeStamp() )
    x=iniRead("Sonne.ini", "Zeiten", Datum)
    oder
    x=iniRead("Sonne.ini", "Zeiten", %Datum%) {veraltete Schreibweise}


    Du hast nur den Fehler gemacht vor und hinter das Datum im iniRead die Gänzefußchen zu setzten , da macht du auch deinem Datum ein String und nicht eine Variabele.


    Gruß
    Silver

    Regioausflug.de Wandertourenplaner für Odenwald, Rhön, Mittelrhein und Taunus!!!!


    Ein Stau ist nur hinten blöd - vorne gehts !!!!

    Einmal editiert, zuletzt von Silver34 ()

  • Hi Silver34,


    immer wieder verblüffend , kaum macht man es richtig, schon funktioniert es!!!



    Danke,


    bis zum nächsten Problem.

  • Hi,


    hier möchte ich kurz mein Ergebnis mitteilen: :bounce2
    Glopus_Sonne.mscr



    Datum=FormatTime("d.m.y", TimeStamp() )
    x=iniRead("Sonne2009.ini", "Zeiten", Datum)
    iniWrite("Night.ini", "SaSu", "Text_2",x)
    iniWrite("Day.ini", "SaSu", "Text_2",x)
    #Glopus starten
    if WndExists ( "Glopus")
    Show( "Glopus" )
    else
    Run( "\Storage Card\Glopus2.00.4\Glopus.exe" )
    Endif



    Die Datei Sonne2009.ini
    [Zeiten]


    21.02.09=07:26*12:38*17:52
    22.02.09=07:24*12:38*17:54
    23.02.09=07:22*12:38*17:55
    24.02.09=07:20*12:38*17:57
    25.02.09=07:18*12:38*17:59
    26.02.09=07:16*12:38*18:01
    27.02.09=07:14*12:37*18:02
    28.02.09=07:12*12:37*18:04
    01.03.09=07:10*12:37*18:06
    02.03.09=07:08*12:37*18:08
    03.03.09=07:06*12:37*18:09
    04.03.09=07:03*12:36*18:11
    05.03.09=07:01*12:36*18:13
    06.03.09=06:59*12:36*18:15
    ...



    Die Night.ini und Day.ini
    [SaSu]
    Pos = RECT(340,150,477,180)
    Type =0
    YOffset=-14
    Text_1=..SA.....SD......SU..
    Text_2=07:16*12:38*18:01
    Format = 0
    Color_0 = Color(150,0,30)
    Color_1 = Color(255,165,0)
    Font.lfFaceName = Tahoma
    Font.lfWeight = 700
    Font.lfHeight = 14




    Ich bin mit dem Ergebnis sehr zufrieden und es erfüllt voll meine Bedürfnisse.



    Bedanke mich für eure Unterstützung und Anregungen.



    Bis dann.

  • Zitat

    Original von Peter Kirst
    Das mit der Hintergrundfarbe ist eine Speziallösung, die nicht auf Textfelder übertragbar ist. Momentan sehe ich keine Möglichkeit Sonnenauf- und untergänge anzuzeigen.


    Hast du eigentlich die Möglichkeit, von Glopus aus die Bildschirmhelligkeit zu regeln? Ich meine einfach so per Windows-Funktionsaufruf. Es wäre schön, wenn Glopus bei Nacht herunterregeln könnte, so wie mein Navigationsprogramm. Mein aktuelles Navi ist so hell, das es nachts total blendet. Auch beim Fahrradfahren ist es so hell, das man vom Weg nicht mehr viel sieht. Man könnte natürlich eine 2. Bildschirmansicht mit angepasster Kartenhelligkeit schalten. Aber das beeinflusst nicht die Toolbar, ausserdem spart es nicht Energie (beim Radfahren interessant). Eleganter wäre es, wenn Glopus mit einer Formel die Dunkelzeiten errechnet (anhand Long/Lat-Position und Uhrzeit) und dann das Backlight kontrolliert. Möglicherweise könnte das mit einigen wenigen Zeilen C-Code realisiert werden.

  • Zitat

    Original von frank334


    Hast du eigentlich die Möglichkeit, von Glopus aus die Bildschirmhelligkeit zu regeln? Ich meine einfach so per Windows-Funktionsaufruf. Es wäre schön, wenn Glopus bei Nacht herunterregeln könnte, so wie mein Navigationsprogramm. Mein aktuelles Navi ist so hell, das es nachts total blendet. Auch beim Fahrradfahren ist es so hell, das man vom Weg nicht mehr viel sieht. Man könnte natürlich eine 2. Bildschirmansicht mit angepasster Kartenhelligkeit schalten. Aber das beeinflusst nicht die Toolbar, ausserdem spart es nicht Energie (beim Radfahren interessant). Eleganter wäre es, wenn Glopus mit einer Formel die Dunkelzeiten errechnet (anhand Long/Lat-Position und Uhrzeit) und dann das Backlight kontrolliert. Möglicherweise könnte das mit einigen wenigen Zeilen C-Code realisiert werden.


    Von der Theorie währe das schon so mit "wenigen Zeilen C-Code" aber Frank du solltest doch am besten Windows kennen oder ?


    Das sicherzustellen das es auch auf allen Geräten läuft ist das eigentliche Problem!!!!


    Ich bin schon dafür das Glopus möglichst viel kann aber auch das es nicht überladen ist!!


    Meine Meinung dazu ist das Glopus möglichst viel Reg-Einträge schreibt - das geht ja wirklich mit "wenigen Zeilen C-Code" und jeder der will sich z.B. mit MortScript was Bastelt!


    Für die Helligkeit währe es ja nur ein 5 Zeiler alla:
    RegWriteDWord HKCU,Software\Microsoft\Shell,STD_Slide,1
    Run "\Windows\Backlight.exe"
    WaitFor "Setting Backlight",5
    Sleep 500
    Close "Setting Backlight"


    Das auf eine Schaltfläche oder in eine While-Endlosschleife (prüfend auf Reg-Eintag von Glopus (Sonnenuntergang)) und fertig.


    Klar das ist nichts für nurmalso User - aber die können doch schön brav ins Windows-Menü oder ?


    Gruß
    Silver

    Regioausflug.de Wandertourenplaner für Odenwald, Rhön, Mittelrhein und Taunus!!!!


    Ein Stau ist nur hinten blöd - vorne gehts !!!!

    Einmal editiert, zuletzt von Silver34 ()


  • Deshalb die Frage, ob es dazu eine Standardfunktion im WindowsCE API gibt. Wenn ja, dann wäre das einfach geräteübergreifend machbar. Andernfalls wäre es sicherlich von den App-Entwicklern zu viel verlangt, irgendwelche krummen Tricks einzusetzen.


    Tut mir leid, ich verstehe nicht viel von Windows. Ich programmiere nur unter Unix.


    Mit der Endlos-Schleife ist das auch wieder so ein Ding, zusätzliche Prozesse im Hintergrund zu fahren mache ich nicht gerne. Der Hauptspeicher ist eh schon sehr knapp. Außerdem wäre die GPS-Applikation sowieso besser geeignet, weil man für die Tageslicht-Berechnungsformel die geografische Position braucht.


    Naja, wie gesagt, nur so eine Idee, falls es mit wenig Aufwand und ein paar Codezeilen gehen würde.


  • Leider gibt das die Standardfunktion im WindowsCE API nicht wirklich her - selbst die backlight.exe will je nach Gerät unterschiedliche Werte für den Slider... - geschweige denn wenn die am Betriebssystem rumgefummelt haben.


    Klar - jeweniger Hintergrundprozesse umso besser aber MortScript ist dahingend sehr genügsam und Resourcenschonend...
    Auch find ich das das Umschalten der Helligkeit nicht wirklich genau zu erfolgen braucht... Bei 10min differenz zum wirklichen Sonnenuntergang seh ich kein Problem
    Je nach Witterung ist das ja auch unterschiedlich und da kann die eigentliche Helligkeit der Umwelt ja schon vorher abhanden gekommen sein.
    Anderseits hat Peter das mit der Berechnung schon eingebaut - nur noch ein wenig C-Code und schon ists in der Reg. ;D


    Wie schon gesagt je mehr Werte in der Reg stehen umso mehr kann jeder sich Anpasungen basteln (wenn er will, wenn nicht störts dann auch die Performance nicht...). 8)


    Lassen wir mal Peter darüber grübeln - hat mich ja schon mehr wie einmal positiv Überrascht... [Fahrrad gewünscht und Porsche geliefert] :D


    Gruß
    Silver

    Regioausflug.de Wandertourenplaner für Odenwald, Rhön, Mittelrhein und Taunus!!!!


    Ein Stau ist nur hinten blöd - vorne gehts !!!!

  • Zitat

    Original von Silver34


    Leider gibt das die Standardfunktion im WindowsCE API nicht wirklich her - selbst die backlight.exe will je nach Gerät unterschiedliche Werte für den
    ...
    Anderseits hat Peter das mit der Berechnung schon eingebaut - nur noch ein wenig C-Code und schon ists in der Reg. ;D
    Silver


    Gut, dass es verschiedene Helligkeitswerte für jede Gerät zu konfigurieren gibt wäre verständlich. Die Displays sind halt unterschiedlich. Ich dachte nur, die Naviprogramme sind ja auch nicht für eine spezielle Hardware, sondern sollten auf jeder Kiste laufen. Und wenn sie das Display dimmen können, müsste es eigenlich einen Funktionsaufruf dazu geben in der Windows API.


    Wird eigentlich auch die aktuelle Position in die Registry geschrieben? Da könnte ich mir interessante externe Anwendungen vorstellen. Ein richtiger NMEA-Protokolldekoder wäre aufwendiger und würde einen virtuellen COM-Port belegen. Registry-Access ist einfacher, speziell mit den Mort Scripts.


    Also, das mit der Helligkeit: klar man kann dustere Gewitterwolken nicht prognostizieren. Andererseits habe ich das Problem mit der Blendung auch nur bei totaler Dunkelheit, nicht bei Dämmerung. Der Zeitpunkt dürfte trotz Wolken gut genug berechnet werden können.


    Die Methode mit dem Vorausberechnen in Excel ist ziemlich ungenau. Wenn ich von Köln nach Dresden fahre, habe ich schon ca. 1/2 h Abweichung: (14°-7°)/360° * 24h
    Dann würde die Tabelle also permanent falsch sein. Das sollte man lieber anhand der Position aktuell halten. Wofür hat man schließlich GPS im Gerät.


    p.s.
    danke für den Tipp zu "backlight.exe", muss ich mal testen. Leider konnte man in den Geräteeinstellungen überhaupt nichts regeln. Darum musste ich Glopus bei Nacht notgedrungen ausschalten, was mir nun gar nicht gefallen hat.

    Einmal editiert, zuletzt von frank334 ()

  • Bei der Helligkeitreglung hat MS geschlafen und kein API vorgeschrieben, nach der sich Hersteller richten müssen.
    Bei meinem ersten PPC (Toshiba) konnte man mit Registry schreiben und Message schicken noch rumtrixen. Aus der Zeit stammt noch der Hotkey. Bei meinem 2. (Dell) ging grundsätzlich nichts über SW zu regeln und ich habe mir dann auch nur backlight.exe auf einen Hotkey gelegt.
    Mein jetziger X1 regelt die Helligkeit nach der Umgebung und das gefällt mir am Besten. Leider fummelt der MN7 an den Registry Einstellungen und ich muss oft nach einem MN Start alles wieder zurückstellen. Kann man das eigentlich verbieten?


    Lange Rede kurzer Sinn: Ich habe es aufgegeben eine universelle Lösung zu suchen, da ich gar nicht genug Geräte zum Testen habe.


    Die Tag-Nacht Berechnung ist dagegen schon in Glopus eingebaut. Der Sonnenpfeil ist nur zu sehen wenn die Sonne (theoretisch) sichtbar ist.


    Registry Schreiben und Endlos-Hintergrundprozess ist aber nicht gerade mein Favorit. Weitere Vorschläge?