Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. [gelöst] X/Y Koordinaten eines Bildes in VIS abhängig einer CCU Variable

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    14
    1
    303

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    600

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.8k

[gelöst] X/Y Koordinaten eines Bildes in VIS abhängig einer CCU Variable

Geplant Angeheftet Gesperrt Verschoben Visualisierung
91 Beiträge 13 Kommentatoren 14.8k Aufrufe 8 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • OstfrieseUnterwegsO Offline
    OstfrieseUnterwegsO Offline
    OstfrieseUnterwegs
    schrieb am zuletzt editiert von
    #8

    Das Script ist http://www.iobroker.net/?page_id=3693&lang=de#Sonnenstandwinkel_berechnen

    In javascript.0.Sonnenstand.Azimut steht dann der Winkel phi aus der Gleichung oben.

    Nehmen wir an, dass der Mittelpunkt deines Grundrisses bei Xm=950, Ym=500 liegt

    Deine Sonne soll nun im Radius von 150 px drumherum kreisen. (Wir wissen natürlich, dass die Sonne nicht um dein Haus kreist - schwören aber in diesem speziellen Fall dem heliozentrischen Weltbild von Kopernikus ab)

    Du kannst bei rot noch die Ausrichtung deines Grundrisses gegenüber Nord angeben.

    Ich hab hier was zusammengestümpert - ich hoffe, dass da alle Vorzeichen richtig sind.

    ! ````
    /* System Sonnenstand
    ! Sonne Azimut und Elevation in Variablen schreiben
    ! erstellt: 06.07.2015 nach ioBroker Forum http://forum.iobroker.net/viewtopic.php?f=21&t=975&sid=6f0ba055de5f82eed6809424f49ca93b#p7635
    */
    var suncalc = require('suncalc'),
        result = getObject("system.adapter.javascript.0"),
        lat = result.native.latitude,
        long = result.native.longitude;
    ! createState('Sonnenstand.Elevation', 0, {unit: '°'});
    createState('Sonnenstand.Azimut', 0, {unit: '°'});
    createState('Sonnenstand.X', 0, {unit: 'px'});
    createState('Sonnenstand.Y', 0, {unit: 'px'});
    ! //Hier die Koordinaten einstellen
    var Xm = 950;
    var Ym = -500; // negativ, weil wir hier kein rechts-system haben
    var rot = 0; // Winkel in dem Grundriss gegenüber Nord verdreht ist
    var r = 150;
    ! function Sonnenstand_berechnen () {
        var now = new Date();

    log("-----------------------------------------------");
        log("latitude : " + result.native.latitude,'warn');
        log("longitude: " + result.native.longitude,'warn');

    !     var sunpos = suncalc.getPosition(now, lat, long);
        log("sunpos: " + sunpos,'warn');
    !     var h = sunpos.altitude * 180 / Math.PI,
            a = sunpos.azimuth * 180 / Math.PI + 180;
        var phi = sunpos.azimuth;
        phi = phi + (2 * (rot / 360) * Math.PI); // Math.cos erwartet Winkel in rad
    !     var x = Xm + (r * Math.cos(phi));
        var y = -1 * (Ym + (r * Math.sin(phi))); //nach unten spiegeln

    !     setState("javascript.0.Sonnenstand.Elevation",h.toFixed(1));
        setState("javascript.0.Sonnenstand.Azimut",a.toFixed());
        setState("javascript.0.Sonnenstand.X",x.toFixed());
        setState("javascript.0.Sonnenstand.Y",y.toFixed());
    }
    ! schedule("*/1 * * * *", Sonnenstand_berechnen);
    Sonnenstand_berechnen(); // bei Scriptstart
    ! ````

    Dann trägst du bei deinem Sonnenicon ein:

    left : {javascript.0.Sonnenstand.X}

    top : {javascript.0.Sonnenstand.Y}

    Außerdem kannst Du noch die Sichtbarkeit deines Sonnenicons über Sonnenstand.Elevation>0 steuern.

    1 Antwort Letzte Antwort
    0
    • C Offline
      C Offline
      chka
      schrieb am zuletzt editiert von
      #9

      super ich probiere es gerade aus!! Danke

      INTEL NUC BOXNUC6I3SYH i3-6100U - Proxmox

      Speicher: Transcend MTS800 M.2 SSD 128GB SATA III, MLC

      RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

      1 Antwort Letzte Antwort
      0
      • C Offline
        C Offline
        chka
        schrieb am zuletzt editiert von
        #10

        ich stehe gerade auf dem schlauch

        mit dem html Objekt kann man ja nur die große eines Bildes ändern.

        also muss es doch als Bild hinein und mittels css an die position gesetzt werden. Nur ich bekomme es einfach nicht hin, mit der Übergabe des wertes.

        hier geht es nur im die statische Festlegung nicht über dynamische

        http://forum.iobroker.net/viewtopic.php?t=5683

        INTEL NUC BOXNUC6I3SYH i3-6100U - Proxmox

        Speicher: Transcend MTS800 M.2 SSD 128GB SATA III, MLC

        RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

        1 Antwort Letzte Antwort
        0
        • C Offline
          C Offline
          chka
          schrieb am zuletzt editiert von
          #11

          habe es hinbekommen, habe noch eine weile eingefügt und schreibe ein neues Objekt in dem das Bild erzeugt wird.

          setState("javascript.0.Sonnenstand.Elevation",h.toFixed(1));
              setState("javascript.0.Sonnenstand.Azimut",a.toFixed());
              setState("javascript.0.Sonnenstand.X",x.toFixed());
              setState("javascript.0.Sonnenstand.Y",y.toFixed());
          

          Danach

              setState("javascript.0.Sonnenstand.HTML",'![](/vis/img/Weather-Sun-icon.png)');
          

          Das Bild gebe ich mit einem Basic - string aus,

          leider hüpft die sonne nur so durch die Gegend aber leider nicht in einem Kreis

          INTEL NUC BOXNUC6I3SYH i3-6100U - Proxmox

          Speicher: Transcend MTS800 M.2 SSD 128GB SATA III, MLC

          RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

          1 Antwort Letzte Antwort
          0
          • C Offline
            C Offline
            chka
            schrieb am zuletzt editiert von
            #12

            So ich habe es der Ansatz war richtig nur die Formel war leider die Falsche:

            var suncalc = require('suncalc'),
                result = getObject("system.adapter.javascript.0"),
                lat = result.native.latitude,
                long = result.native.longitude;
            
            createState('Sonnenstand.Elevation', 0, {unit: '°'});
            createState('Sonnenstand.Azimut', 0, {unit: '°'});
            createState('Sonnenstand.X', 0, {unit: 'px'});
            createState('Sonnenstand.Y', 0, {unit: 'px'});
            createState('Sonnenstand.HTML');
            
            //Hier die Koordinaten einstellen
            var Xm = 500; //500
            var Ym = 250; // 250
            var rot = 90; // Winkel in dem Grundriss gegenüber Nord verdreht ist
            var r  = 250;
            
            function Sonnenstand_berechnen () {
                var now = new Date();
            
                log("-----------------------------------------------");
                log("latitude : " + result.native.latitude,'info');
                log("longitude: " + result.native.longitude,'info');
            
                var sunpos = suncalc.getPosition(now, lat, long);
                log("sunpos: " + sunpos,'info');
            
                var h = sunpos.altitude * 180 / Math.PI,
                     a = sunpos.azimuth * 180 / Math.PI + 180;
                /**
                Formel: https://www-user.tu-chemnitz.de/~heha/viewchm.php/hs/SelfDXD.chm/directxgraphics/theorie/dg_ber.html
                radWinkel:= 40 / 180 * Pi;            // radWinkel = 0.698131...
                x_koordinate:= cos( radWinkel ) * 5;  // x_koordinate = 3,830222...
                y_koordinate:= sin( radWinkel ) * 5;  // y_koordinate = 3,213938...
                **/
            
                var azimuth = a.toFixed();//sunpos.azimuth;
                var radWinkel =( azimuth -90 - rot )/ 180 * Math.PI; 
            
                var x = (Math.cos(radWinkel)* r)+Xm;
            
                var y = (Math.sin(radWinkel) * r)+Ym;
            
                setState("javascript.0.Sonnenstand.Elevation",h.toFixed(1));
                setState("javascript.0.Sonnenstand.Azimut",a.toFixed());
            
                setState("javascript.0.Sonnenstand.X",x.toFixed());
                setState("javascript.0.Sonnenstand.Y",y.toFixed());
            
              setState("javascript.0.Sonnenstand.HTML",'![](/vis/img/10_sun.png)');
            
            }
            
            schedule("*/1 * * * *", Sonnenstand_berechnen);
            Sonnenstand_berechnen(); // bei Scriptstart
            

            in Vis muss das Widget basic string genommen werden und und als QuellID javascript.0.Sonnenstand.HTML

            Damit kreist die Sonne jetzt ums Haus ;-)

            INTEL NUC BOXNUC6I3SYH i3-6100U - Proxmox

            Speicher: Transcend MTS800 M.2 SSD 128GB SATA III, MLC

            RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

            1 Antwort Letzte Antwort
            0
            • A Offline
              A Offline
              andyb
              schrieb am zuletzt editiert von
              #13

              src="/vis/img/10_sun.png"

              das Bildchen hab ich nicht…..wie sieht das den aus?

              Wie sieht denn dein Widget dazu aus?

              noch ne frage zu den Einträgen, die sind mir nicht so ganz klar

              var Xm = 500; //500 keine Ahnung

              var Ym = 250; // 250 keine Ahnung

              var rot = 90; // Winkel in dem Grundriss gegenüber Nord verdreht ist der ist fast klar, im Uhrzeigersinn?

              var r = 250; keine Ahnung

              1 Antwort Letzte Antwort
              0
              • C Offline
                C Offline
                chka
                schrieb am zuletzt editiert von
                #14

                @andyb:

                src="/vis/img/10_sun.png"

                das Bildchen hab ich nicht…..wie sieht das den aus?

                Wie sieht denn dein Widget dazu aus? `
                Lad dir einfach ein Bild aus dem Netz was passt

                @andyb:

                var Xm = 500; //500 keine Ahnung

                var Ym = 250; // 250 keine Ahnung `
                Der Nullpunkt in deinem View in px
                @andyb:

                var rot = 90; // Winkel in dem Grundriss gegenüber Nord verdreht ist der ist fast klar, im Uhrzeigersinn? ` JA
                @andyb:

                var r = 250; keine Ahnung ` r= Radius in px

                INTEL NUC BOXNUC6I3SYH i3-6100U - Proxmox

                Speicher: Transcend MTS800 M.2 SSD 128GB SATA III, MLC

                RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

                1 Antwort Letzte Antwort
                0
                • MeistertrM Offline
                  MeistertrM Offline
                  Meistertr
                  Developer
                  schrieb am zuletzt editiert von
                  #15

                  habe das script nun kopiert, leider bekomme ich kein bild angezeigt, egal welchen basic string ich nehme html: (habe ein testbild genommen)

                  Entweder erscheint der text oder garnichts. wenn ich den string in html vorangestellt kopiere, kommt direkt das Bild

                  Positon stimmt, aber wo kommt das dataview her?
                  1768_unbenannt.jpg

                  1 Antwort Letzte Antwort
                  0
                  • A Offline
                    A Offline
                    andyb
                    schrieb am zuletzt editiert von
                    #16

                    geht mir leider auch so.

                    Das html Ergebnis sieht bei mir so aus:

                    ![](/vis/img/Summer.png)
                    

                    Bild ist dort definitiv abgelegt, allerdings wenn ich mir die Bild-Url im Browser anschau steht da:

                    http://192.x.x.x:8082/vis/%3Cimg%20src=
                    

                    1586_2017-04-08_08_36_31-vis.jpg

                    1 Antwort Letzte Antwort
                    0
                    • C Offline
                      C Offline
                      chka
                      schrieb am zuletzt editiert von
                      #17

                      An bei mal das Widget:

                      [{"tpl":"tplValueStringRaw","data":{"hm_id":"80101","digits":"","factor":1,"min":0,"max":1,"step":0.01,"visibility-cond":"==","visibility-val":1,"oid":"javascript.0.Sonnenstand.HTML","gestures-offsetX":0,"gestures-offsetY":0,"signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"visibility-groups-action":"hide"},"style":{"left":"0px","top":"0px","width":"1024px","height":"748px","border":"2px solid rgb(255, 255, 255)","border-radius":"5px","z-index":"1"},"widgetSet":"basic"}]
                      

                      Den Pfad zum Bild müsst ihr natürlich im Script anpassen da es das Angegebene nicht im Iobroker gibt.

                      Mein Bild kommt übrigens hier her: https://www.myseoapp.de/ images/10_sun.png

                      INTEL NUC BOXNUC6I3SYH i3-6100U - Proxmox

                      Speicher: Transcend MTS800 M.2 SSD 128GB SATA III, MLC

                      RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

                      1 Antwort Letzte Antwort
                      0
                      • A Offline
                        A Offline
                        andyb
                        schrieb am zuletzt editiert von
                        #18

                        mit dem importierten Widget ging es auf Anhieb. Danke

                        1 Antwort Letzte Antwort
                        0
                        • C Offline
                          C Offline
                          chka
                          schrieb am zuletzt editiert von
                          #19

                          danke für die Rückmeldung

                          INTEL NUC BOXNUC6I3SYH i3-6100U - Proxmox

                          Speicher: Transcend MTS800 M.2 SSD 128GB SATA III, MLC

                          RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

                          1 Antwort Letzte Antwort
                          0
                          • A Offline
                            A Offline
                            andyb
                            schrieb am zuletzt editiert von
                            #20

                            Leider zu früh gefreut, auf der vis App wird nix angezeigt, nur im Browser

                            1 Antwort Letzte Antwort
                            0
                            • HomoranH Nicht stören
                              HomoranH Nicht stören
                              Homoran
                              Global Moderator Administrators
                              schrieb am zuletzt editiert von
                              #21

                              Die App kann nur anzeigen was explizit darin implementiert ist.

                              Gruß

                              Rainer

                              kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                              1 Antwort Letzte Antwort
                              0
                              • C Offline
                                C Offline
                                chka
                                schrieb am zuletzt editiert von
                                #22

                                ich nutze es nur im browser

                                INTEL NUC BOXNUC6I3SYH i3-6100U - Proxmox

                                Speicher: Transcend MTS800 M.2 SSD 128GB SATA III, MLC

                                RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

                                1 Antwort Letzte Antwort
                                0
                                • Y ykuendig

                                  Für den Sonnenstand haben wir hier schon ein Script. (Azimuth und Elevation). Den Winkel aber in X, Y Koordinaten umrechnen müsstest Du noch machen

                                  .

                                  FredFF Offline
                                  FredFF Offline
                                  FredF
                                  Most Active Forum Testing
                                  schrieb am zuletzt editiert von FredF
                                  #23

                                  falscher Beitrag -- bitte ignorieren

                                  1 Antwort Letzte Antwort
                                  0
                                  • S Offline
                                    S Offline
                                    syber
                                    schrieb am zuletzt editiert von
                                    #24

                                    @chka Hallo, ist zwar schon ein paar Tage her aber ich bekomme die Sonne einfach nicht in das Widget :(
                                    Der Hintergrund ist da....
                                    Muss ich den Pfad im Javascript (setState("javascript.0.Sonnenstand.HTML",'');) hier einfügen?
                                    Wie muss der link aussehen, stehe voll auf dem Schlauch :(
                                    Das Bild liegt bei mir im Verzeichniss (C:\Program Files\iobroker\SmartHome\iobroker-data\files\vis.0\Circle\Sonnenstand3)

                                    Wäre die sehr Dankbar für nen Tip

                                    mfg steffen

                                    C 1 Antwort Letzte Antwort
                                    0
                                    • S syber

                                      @chka Hallo, ist zwar schon ein paar Tage her aber ich bekomme die Sonne einfach nicht in das Widget :(
                                      Der Hintergrund ist da....
                                      Muss ich den Pfad im Javascript (setState("javascript.0.Sonnenstand.HTML",'');) hier einfügen?
                                      Wie muss der link aussehen, stehe voll auf dem Schlauch :(
                                      Das Bild liegt bei mir im Verzeichniss (C:\Program Files\iobroker\SmartHome\iobroker-data\files\vis.0\Circle\Sonnenstand3)

                                      Wäre die sehr Dankbar für nen Tip

                                      mfg steffen

                                      C Offline
                                      C Offline
                                      chka
                                      schrieb am zuletzt editiert von chka
                                      #25

                                      @syber einmal der view mit widget
                                      {
                                      "settings": {
                                      "style": {
                                      "background_class": ""
                                      },
                                      "theme": "redmond",
                                      "sizex": "1024",
                                      "sizey": "748",
                                      "gridSize": "",
                                      "snapType": null,
                                      "useBackground": false
                                      },
                                      "widgets": {
                                      "e00001": {
                                      "tpl": "tplValueStringRaw",
                                      "data": {
                                      "hm_id": "80101",
                                      "digits": "",
                                      "factor": 1,
                                      "min": 0,
                                      "max": 1,
                                      "step": 0.01,
                                      "visibility-cond": "==",
                                      "visibility-val": 1,
                                      "oid": "javascript.0.Sonnenstand.HTML",
                                      "gestures-offsetX": 0,
                                      "gestures-offsetY": 0,
                                      "signals-cond-0": "==",
                                      "signals-val-0": true,
                                      "signals-icon-0": "/vis/signals/lowbattery.png",
                                      "signals-icon-size-0": 0,
                                      "signals-blink-0": false,
                                      "signals-horz-0": 0,
                                      "signals-vert-0": 0,
                                      "signals-hide-edit-0": false,
                                      "signals-cond-1": "==",
                                      "signals-val-1": true,
                                      "signals-icon-1": "/vis/signals/lowbattery.png",
                                      "signals-icon-size-1": 0,
                                      "signals-blink-1": false,
                                      "signals-horz-1": 0,
                                      "signals-vert-1": 0,
                                      "signals-hide-edit-1": false,
                                      "signals-cond-2": "==",
                                      "signals-val-2": true,
                                      "signals-icon-2": "/vis/signals/lowbattery.png",
                                      "signals-icon-size-2": 0,
                                      "signals-blink-2": false,
                                      "signals-horz-2": 0,
                                      "signals-vert-2": 0,
                                      "signals-hide-edit-2": false,
                                      "visibility-groups-action": "hide",
                                      "lc-type": "last-change",
                                      "lc-is-interval": true,
                                      "lc-is-moment": false,
                                      "lc-format": "",
                                      "lc-position-vert": "top",
                                      "lc-position-horz": "right",
                                      "lc-offset-vert": 0,
                                      "lc-offset-horz": 0,
                                      "lc-font-size": "12px",
                                      "lc-font-family": "",
                                      "lc-font-style": "",
                                      "lc-bkg-color": "",
                                      "lc-color": "",
                                      "lc-border-width": "0",
                                      "lc-border-style": "",
                                      "lc-border-color": "",
                                      "lc-border-radius": 10,
                                      "lc-zindex": 0
                                      },
                                      "style": {
                                      "left": "1px",
                                      "top": "0px",
                                      "width": "1024px",
                                      "height": "748px",
                                      "border": "2px solid rgb(255, 255, 255)",
                                      "border-radius": "5px",
                                      "z-index": "99"
                                      },
                                      "widgetSet": "basic"
                                      }
                                      },
                                      "name": "Test",
                                      "rerender": false,
                                      "filterList": []
                                      }

                                      und das java script dazu:

                                      /* System Sonnenstand
                                      
                                      Sonne Azimut und Elevation in Variablen schreiben
                                      
                                      erstellt: 06.07.2015 nach ioBroker Forum http://forum.iobroker.net/viewtopic.php?f=21&t=975&sid=6f0ba055de5f82eed6809424f49ca93b#p7635
                                      */
                                      var suncalc = require('suncalc'),
                                          result = getObject("system.adapter.javascript.0"),
                                          lat = result.native.latitude,
                                          long = result.native.longitude;
                                      
                                      createState('Sonnenstand.Elevation', 0, {unit: '°'});
                                      createState('Sonnenstand.Azimut', 0, {unit: '°'});
                                      createState('Sonnenstand.X', 0, {unit: 'px'});
                                      createState('Sonnenstand.Y', 0, {unit: 'px'});
                                      createState('Sonnenstand.HTML');
                                      
                                      //Hier die Koordinaten einstellen
                                      var Xm = 500; //500
                                      var Ym = 250; // 250
                                      var rot = 90; // Winkel in dem Grundriss gegenüber Nord verdreht ist
                                      var r  = 250;
                                      
                                      
                                      function Sonnenstand_berechnen () {
                                          var now = new Date();
                                              
                                          //log("-----------------------------------------------");
                                         // log("latitude : " + result.native.latitude,'info');
                                         // log("longitude: " + result.native.longitude,'info');
                                      
                                          var sunpos = suncalc.getPosition(now, lat, long);
                                         // log("sunpos: " + sunpos,'info');
                                      
                                          var h = sunpos.altitude * 180 / Math.PI,
                                               a = sunpos.azimuth * 180 / Math.PI + 180;
                                          /**
                                          Formel: https://www-user.tu-chemnitz.de/~heha/viewchm.php/hs/SelfDXD.chm/directxgraphics/theorie/dg_ber.html
                                          radWinkel:= 40 / 180 * Pi;            // radWinkel = 0.698131...
                                          x_koordinate:= cos( radWinkel ) * 5;  // x_koordinate = 3,830222...
                                          y_koordinate:= sin( radWinkel ) * 5;  // y_koordinate = 3,213938...
                                          **/
                                        
                                          var azimuth = a.toFixed();//sunpos.azimuth;
                                          var radWinkel =( azimuth -90 - rot )/ 180 * Math.PI; 
                                          
                                          var x = (Math.cos(radWinkel)* r)+Xm;
                                          
                                          var y = (Math.sin(radWinkel) * r)+Ym;
                                          
                                           
                                           
                                          setState("javascript.0.Sonnenstand.Elevation",h.toFixed(1));
                                          setState("javascript.0.Sonnenstand.Azimut",a.toFixed());
                                      
                                          setState("javascript.0.Sonnenstand.X",x.toFixed());
                                          setState("javascript.0.Sonnenstand.Y",y.toFixed());
                                          
                                        setState("javascript.0.Sonnenstand.HTML",'<img src="/vis/img/10_sun.png" height="50" width="50" style="float: left; margin: '+ y.toFixed() +'px 0px 0px '+x.toFixed()+'px;" >');
                                        
                                         // setState("javascript.0.Sonnenstand.HTML",'<img src="/vis/img/Weather-Sun-icon.png" height="50" width="50" vspace="'+ y.toFixed() +'" hspace="'+x.toFixed()+'">');
                                      }
                                      
                                      schedule("*/1 * * * *", Sonnenstand_berechnen);
                                      Sonnenstand_berechnen(); // bei Scriptstart
                                      

                                      INTEL NUC BOXNUC6I3SYH i3-6100U - Proxmox

                                      Speicher: Transcend MTS800 M.2 SSD 128GB SATA III, MLC

                                      RAM: 40Gig Crucial 8GB DDR4 CT2K8G4SFS824A + 32GB DDR4CT32G4SFD8266

                                      S HomoranH 2 Antworten Letzte Antwort
                                      0
                                      • C chka

                                        @syber einmal der view mit widget
                                        {
                                        "settings": {
                                        "style": {
                                        "background_class": ""
                                        },
                                        "theme": "redmond",
                                        "sizex": "1024",
                                        "sizey": "748",
                                        "gridSize": "",
                                        "snapType": null,
                                        "useBackground": false
                                        },
                                        "widgets": {
                                        "e00001": {
                                        "tpl": "tplValueStringRaw",
                                        "data": {
                                        "hm_id": "80101",
                                        "digits": "",
                                        "factor": 1,
                                        "min": 0,
                                        "max": 1,
                                        "step": 0.01,
                                        "visibility-cond": "==",
                                        "visibility-val": 1,
                                        "oid": "javascript.0.Sonnenstand.HTML",
                                        "gestures-offsetX": 0,
                                        "gestures-offsetY": 0,
                                        "signals-cond-0": "==",
                                        "signals-val-0": true,
                                        "signals-icon-0": "/vis/signals/lowbattery.png",
                                        "signals-icon-size-0": 0,
                                        "signals-blink-0": false,
                                        "signals-horz-0": 0,
                                        "signals-vert-0": 0,
                                        "signals-hide-edit-0": false,
                                        "signals-cond-1": "==",
                                        "signals-val-1": true,
                                        "signals-icon-1": "/vis/signals/lowbattery.png",
                                        "signals-icon-size-1": 0,
                                        "signals-blink-1": false,
                                        "signals-horz-1": 0,
                                        "signals-vert-1": 0,
                                        "signals-hide-edit-1": false,
                                        "signals-cond-2": "==",
                                        "signals-val-2": true,
                                        "signals-icon-2": "/vis/signals/lowbattery.png",
                                        "signals-icon-size-2": 0,
                                        "signals-blink-2": false,
                                        "signals-horz-2": 0,
                                        "signals-vert-2": 0,
                                        "signals-hide-edit-2": false,
                                        "visibility-groups-action": "hide",
                                        "lc-type": "last-change",
                                        "lc-is-interval": true,
                                        "lc-is-moment": false,
                                        "lc-format": "",
                                        "lc-position-vert": "top",
                                        "lc-position-horz": "right",
                                        "lc-offset-vert": 0,
                                        "lc-offset-horz": 0,
                                        "lc-font-size": "12px",
                                        "lc-font-family": "",
                                        "lc-font-style": "",
                                        "lc-bkg-color": "",
                                        "lc-color": "",
                                        "lc-border-width": "0",
                                        "lc-border-style": "",
                                        "lc-border-color": "",
                                        "lc-border-radius": 10,
                                        "lc-zindex": 0
                                        },
                                        "style": {
                                        "left": "1px",
                                        "top": "0px",
                                        "width": "1024px",
                                        "height": "748px",
                                        "border": "2px solid rgb(255, 255, 255)",
                                        "border-radius": "5px",
                                        "z-index": "99"
                                        },
                                        "widgetSet": "basic"
                                        }
                                        },
                                        "name": "Test",
                                        "rerender": false,
                                        "filterList": []
                                        }

                                        und das java script dazu:

                                        /* System Sonnenstand
                                        
                                        Sonne Azimut und Elevation in Variablen schreiben
                                        
                                        erstellt: 06.07.2015 nach ioBroker Forum http://forum.iobroker.net/viewtopic.php?f=21&amp;t=975&amp;sid=6f0ba055de5f82eed6809424f49ca93b#p7635
                                        */
                                        var suncalc = require('suncalc'),
                                            result = getObject("system.adapter.javascript.0"),
                                            lat = result.native.latitude,
                                            long = result.native.longitude;
                                        
                                        createState('Sonnenstand.Elevation', 0, {unit: '°'});
                                        createState('Sonnenstand.Azimut', 0, {unit: '°'});
                                        createState('Sonnenstand.X', 0, {unit: 'px'});
                                        createState('Sonnenstand.Y', 0, {unit: 'px'});
                                        createState('Sonnenstand.HTML');
                                        
                                        //Hier die Koordinaten einstellen
                                        var Xm = 500; //500
                                        var Ym = 250; // 250
                                        var rot = 90; // Winkel in dem Grundriss gegenüber Nord verdreht ist
                                        var r  = 250;
                                        
                                        
                                        function Sonnenstand_berechnen () {
                                            var now = new Date();
                                                
                                            //log("-----------------------------------------------");
                                           // log("latitude : " + result.native.latitude,'info');
                                           // log("longitude: " + result.native.longitude,'info');
                                        
                                            var sunpos = suncalc.getPosition(now, lat, long);
                                           // log("sunpos: " + sunpos,'info');
                                        
                                            var h = sunpos.altitude * 180 / Math.PI,
                                                 a = sunpos.azimuth * 180 / Math.PI + 180;
                                            /**
                                            Formel: https://www-user.tu-chemnitz.de/~heha/viewchm.php/hs/SelfDXD.chm/directxgraphics/theorie/dg_ber.html
                                            radWinkel:= 40 / 180 * Pi;            // radWinkel = 0.698131...
                                            x_koordinate:= cos( radWinkel ) * 5;  // x_koordinate = 3,830222...
                                            y_koordinate:= sin( radWinkel ) * 5;  // y_koordinate = 3,213938...
                                            **/
                                          
                                            var azimuth = a.toFixed();//sunpos.azimuth;
                                            var radWinkel =( azimuth -90 - rot )/ 180 * Math.PI; 
                                            
                                            var x = (Math.cos(radWinkel)* r)+Xm;
                                            
                                            var y = (Math.sin(radWinkel) * r)+Ym;
                                            
                                             
                                             
                                            setState("javascript.0.Sonnenstand.Elevation",h.toFixed(1));
                                            setState("javascript.0.Sonnenstand.Azimut",a.toFixed());
                                        
                                            setState("javascript.0.Sonnenstand.X",x.toFixed());
                                            setState("javascript.0.Sonnenstand.Y",y.toFixed());
                                            
                                          setState("javascript.0.Sonnenstand.HTML",'<img src="/vis/img/10_sun.png" height="50" width="50" style="float: left; margin: '+ y.toFixed() +'px 0px 0px '+x.toFixed()+'px;" >');
                                          
                                           // setState("javascript.0.Sonnenstand.HTML",'<img src="/vis/img/Weather-Sun-icon.png" height="50" width="50" vspace="'+ y.toFixed() +'" hspace="'+x.toFixed()+'">');
                                        }
                                        
                                        schedule("*/1 * * * *", Sonnenstand_berechnen);
                                        Sonnenstand_berechnen(); // bei Scriptstart
                                        
                                        S Offline
                                        S Offline
                                        syber
                                        schrieb am zuletzt editiert von
                                        #26

                                        @chka said in [gelöst] X/Y Koordinaten eines Bildes in VIS abhängig einer CCU Variable:

                                        Leider immer noch keine Sonnekeine_sonne.PNG

                                        GlasfaserG 1 Antwort Letzte Antwort
                                        0
                                        • S syber

                                          @chka said in [gelöst] X/Y Koordinaten eines Bildes in VIS abhängig einer CCU Variable:

                                          Leider immer noch keine Sonnekeine_sonne.PNG

                                          GlasfaserG Offline
                                          GlasfaserG Offline
                                          Glasfaser
                                          schrieb am zuletzt editiert von
                                          #27

                                          @syber

                                          Laut Log ist die Sonne nicht im Pfad :

                                          /vis/img/10_sun.png
                                          

                                          Lade das PNG mit dem VIS Editor / Dateimanager in dein Projekt

                                          Beispiel dann

                                          /vis.0/Mein Projekt/10_sun.png
                                          

                                          und ändere dann die Pfandangabe im Script.

                                          Synology 918+ 16GB - ioBroker in Docker v9 , VISO auf Trekstor Primebook C13 13,3" , Hikvision Domkameras mit Surveillance Station .. CCU RaspberryMatic in Synology VM .. Zigbee CC2538+CC2592 .. Sonoff .. KNX .. Modbus ..

                                          S 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          961

                                          Online

                                          32.5k

                                          Benutzer

                                          81.9k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe