weitere Icon-Bibliotheken einbinden (http://weathericons.io)

Begonnen von harald654, 05 Februar 2017, 22:11:04

Vorheriges Thema - Nächstes Thema

h3llsp4wn

Kurze Frage - für netatmo gibt's noch kein mapping, oder?

Was müsste dazu alles geliefert werden - ich hatte schon mal angefangen das weather_widget durch den Wolf zu drehen, aber Euer "zentraler" Ansatz gefällt mir da besser.

tomster

Ich hab von Netatmo nicht den geringsten Schimmer (is doch so einen ihh, pfui, Cloudlösung, oder?)...

Wenn Du aber eine Liste mit den möglichen Readings für Wetter, Wind, etc. um die Ecke kommen kannst, dann sollte das Mapping relativ einfach zu erstellen sein. In wie weit das aber Bestand hat, kann ich nicht sagen, da ich von setstate noch nichts gehört habe, ob er überhaupt am Weather-Widget noch groß schrauben möchte, oder mein Vorschlag das alles über das Symbol-Widget zu machen überhaupt in seinem Sinne ist...
FTB wäre das Mapping jedoch ein sicherlich funktionierender Work-Around.

tomster

Ich hab auch Mal ein Mapping für Proplanta erstellt.
Da jedoch das Weather-Widget die jeweiligen Zustände aus dem vom PP-Modul übermittelten Reading zur Icon-URL "extrahiert", übersteigt die Einbindung in den Widget-Code meine Fähigkeiten.

* Proplanta
.wi-pp-t1:before(content:"\f00d")
.wi-pp-t2:before(content:"\f002")
.wi-pp-t3:before(content:"\f002")
.wi-pp-t4:before(content:"\f041")
.wi-pp-t5:before(content:"\f013")
.wi-pp-t6:before(content:"\f019")
.wi-pp-t7:before(content:"\f01a")
.wi-pp-t8:before(content:"\f01e")
.wi-pp-t9:before(content:"\f01b")
.wi-pp-t10:before(content:"\f006")
.wi-pp-t11:before(content:"\f01b")
.wi-pp-t12:before(content:"\f0b6")
.wi-pp-t13:before(content:"\f0b6")
.wi-pp-t14:before(content:"\f019")
.wi-pp-n1:before(content:"\f02e")
.wi-pp-n2:before(content:"\f083")
.wi-pp-n3:before(content:"\f081")
.wi-pp-n4:before(content:"\f086")
.wi-pp-n5:before(content:"\f07e")
.wi-pp-n6:before(content:"\f026")
.wi-pp-n7:before(content:"\f037")
.wi-pp-n8:before(content:"\f01d")
.wi-pp-n9:before(content:"\f0b3")
.wi-pp-n10:before(content:"\f0b4")
.wi-pp-n11:before(content:"\f02a")
.wi-pp-n12:before(content:"\f04a")
.wi-pp-n13:before(content:"\f04a")
.wi-pp-n14:before(content:"\f036")

Ulm32b

ZitatWindDirection ist jetzt auch direkt mit im Weather-Widget dabei


<div class="vbox">
   <div data-type="weather" data-device="AgroWeather" data-get="windDir" data-device-type="WindDirection" data-imageset="weathericons" class="bigger"></div>
   <div data-type="label" data-device="AgroWeather" data-get="windDir" data-post-text="°" class="big"></div>
</div>

Könnte es sein, dass die Windrichtung um genau 180 Grad "falsch" angezeigt wird? Die von den Wetterdiensten gelieferte Gradzahl ist - wie meterologisch üblich - die Richtung, aus der der Wind kommt. Das von weather generierte Symbol zeigt hingegen in diese Richtung. Anders ausgedrückt: Das Symbol sagt: "Ich zeige Dir, woher der Wind kommt." Ist natürlich Definitionssache. Ich selbst würde gerne invertieren, sodass der Pfeil den Windvektor zeigt. Daraus folgt die Frage: Wie drehe ich mit möglichst wenig Code data-get="windDir" um 180 Grad?

Ulm32b

Ich habe mir die Sache noch einmal genau angesehen und komme zu einem eindeutigen Ergebnis:

Bei den Weather-Icons gibt es für die Windrichtung zwei Varianten:
  • towards-x-deg und
  • from-x-deg
Die von den Wetterdiensten gelieferten Daten gehören eindeutig in die Kategorie "from-x-deg", kennzeichnen also die Himmelsrichtung, aus welcher der Wind kommt. So halten es auch die Wetterfrösche, wenn sie z.B. sagen: "Der Wind kommt aus Nordwest."

In widget_weather.js sollten demgemäß die Zeilen 681 bis 684
case "WindDirection":
icon.addClass('wi wi-wind towards-' + val + '-deg');
ftui.log(3, 'weather: set weathericons WindDirection: wi wi-wind towards-' + val + '-deg');
break;

ersetzt werden durch
case "WindDirection":
icon.addClass('wi wi-wind from-' + val + '-deg');
ftui.log(3, 'weather: set weathericons WindDirection: wi wi-wind from-' + val + '-deg');
break;


Wer es lieber etwas komplizierter mag (so wie ich, bevor ich auf die Icon-Variante "from" aufmerksam wurde), kann
towards-' + val + '-deg'
auch ersetzen durch
towards-' + ((Number(val)+180)%360).toString() + '-deg'

Im Ergebnis wird in beiden Fällen durch das Symbol dann der zutreffende Windvektor ausgegeben.

@setstate: Kann dies in das nächste Update einfließen?

setstate

Danke für den Tipp. Ich habe es in from-x-deg geändert

scooty

Hallo,

danke für die Änderung.

Ich schaffe es aber leider nicht, die Farbe des Windanzeigers zu ändern, trotz data-color bleibt er weiss:

<div data-type="weather"
data-device="GTEG_SENW"
data-get="windDirectionCur"
data-device-type="WindDirection"
data-imageset="weathericons"
data-color="#aa6900"
class="tall">
</div>

Kann das so überhaupt gehen oder habe ich einen Gedankenfehler?

Andreas
Fhem auf Gigabyte Brix
CUL V3 HM / CUL V3 MAX / MaxCube aFW Homematic&MAX / ZWave.me ZME_UZB1 / SDuino 433 / Velux KLF200
Homematic / MAX / Logitech Hub / ZWave / Wifi LED / div. 433 Temperatursensoren / pywws WH1080 / IO Homecontrol

setstate

Weather hat kein data-color Attribute. Musst du über class machen.

scooty

Danke für die schnelle Antwort.
Funktioniert leider nicht:
<div data-type="weather"
data-device="GTEG_SENW"
data-get="windDirectionCur"
data-device-type="WindDirection"
data-imageset="weathericons"
class="tall orange">
</div>

Ein Test mit
class="tall bg-orange"
bringt jedoch einen orangen Hintergrund.
Kann mir nicht erklären, warum das einfache "orange" dann nicht funktioniert.
Oder tut es bei Dir?

Für jeglichen Hinweis dankbar,
Andreas



Fhem auf Gigabyte Brix
CUL V3 HM / CUL V3 MAX / MaxCube aFW Homematic&MAX / ZWave.me ZME_UZB1 / SDuino 433 / Velux KLF200
Homematic / MAX / Logitech Hub / ZWave / Wifi LED / div. 433 Temperatursensoren / pywws WH1080 / IO Homecontrol

setstate

Da lag ich falsch, das ging so nicht.

Habe aber jetzt date-color beim Weather-Widget ergänzt.

statisch
<div data-type="weather" data-device="AgroWeather" data-get="fc0_weatherDay" data-color="yellow" class="big"></div>

dynamisch aus einem Reading
<div data-type="weather" data-device="AgroWeather" data-get="fc0_weatherDay" data-color="ftuitest:color" class="big"></div>

scooty

Supi, vielen herzlichen Dank, klappt hervorragend.
:)

Andreas
Fhem auf Gigabyte Brix
CUL V3 HM / CUL V3 MAX / MaxCube aFW Homematic&MAX / ZWave.me ZME_UZB1 / SDuino 433 / Velux KLF200
Homematic / MAX / Logitech Hub / ZWave / Wifi LED / div. 433 Temperatursensoren / pywws WH1080 / IO Homecontrol

Ulm32b

Sauber.
Die Neuerungen sind jetzt auch im Wiki dokumentiert.