Map Widget reloaded - Neue Version des Map Widgets

Begonnen von eki, 05 Oktober 2018, 16:04:19

Vorheriges Thema - Nächstes Thema

curt

Zitat von: eki am 19 Oktober 2018, 08:01:19
Du kannst für jedes features (also für jedes Objekt im GEOJSON) definieren, ob und was per Popup dargestellt werden soll. Was fehlt Dir da noch?

Die Stelle, an der ich das nachlesen kann. "das" = das Vorgehen, die Definitionen dafür. (Die habe alle ihre Dokus gut versteckt.)

Zitat von: eki am 19 Oktober 2018, 08:01:19
Vielleicht noch mal zum eigentlichen Grund aus meiner Sicht zur Erstellung des Widgets: Ich wollte hauptsächlich FHEM Daten auf der Karte darstellen. Die sind natürlich hoch dynamisch (z.B. Anwesenheitsstatus der Mitbewohner, Verkerhssituation auf dem Arbeitsweg, ...). Das mit dem GEOJSON war nur ein Zusatz, aber auch da könnte man natürlich dynamisch Files aus FHEM generieren und dann anzeigen.

Verstehe.

Ich dachte eher an einen weiteren taktischen Bildschirm: Wie ist die Verkehrslage im Umkreis von 50km? Was sind da so für Sehenswürdigkeiten? Was weiß Wikipedia zu ... und so weiter. Ganz grundsätzlich gibt Dein Widget das ja (auch) her.
RPI 4 - Jeelink HomeMatic Z-Wave

eki

ZitatDie Stelle, an der ich das nachlesen kann. "das" = das Vorgehen, die Definitionen dafür. (Die habe alle ihre Dokus gut versteckt.)

Siehe Wiki zum Map Widget:
Zitat
Die Eigenschaft "popup_properties_click" hat als Wert eine Leerzeichen getrennte Liste von Expressions, welche, falls sie auf Properties der Objekte im geojson File zutreffen, dazu führen, dass beim Klick auf die angezeigten Objekte ein Info Window geöffnet wird, welches die entsprechenden geojson Objekteigenschaften anzeigt.

Die Eigenschaft "popup_properties_move" macht genau das Gleiche, allerdings sorgen die dort angegebenen Expressions dafür dass die dazu passenden geojson Objekte per Popup bei Überfahren mit der Maus und nicht bei Klick angezeigt werden und beim Verlassen mit der Maus dann auch wieder automatisch verschwinden.

WindJunkie

Hallo zusammen! Ich wollte den Maps Sidget in meiner neuen FTUI einsetzen. Ist der Code z.Z. nur in diesem Thread zum Runterladen vorhanden, oder gibt es eine neuere Version anderswo? Auf https://wiki.fhem.de/wiki/FTUI_Widget_Maps habe ich keinen passenden Link gefunden.

Danke!

eki

Bitte setze erst mal den Code von hier weiter oben ein.

curt

Zitat von: eki am 12 Oktober 2018, 08:35:01
Die Darstellung der Verkehrslage gefällt mir aktuell auch nicht so besonders. Ich habe schon mal ein bisschen gesucht, aber bisher keine Möglichkeit gefunden, die Darstellung der Verkehrslage zu beeinflussen.

@eki
Kannst Du mal bitte -rein testweise- thickness in Dein widget_maps.js einbauen? Vielleicht als data-thickness? Default ist 10, es geht von 1 bis 20. Ich würde mir gern ansehen, was dieser Parameter real bewirkt. (Die Doku-Beschreibung deutet an, ist aber leider nicht wirklich aussagekräftig.)

Siehe: https://developer.tomtom.com/traffic-api/traffic-api-documentation-traffic-flow/raster-flow-tiles

Zitat von: eki am 12 Oktober 2018, 08:35:01
Da bin ich noch dran, bitte etwas Gedult.

<stupst vorsichtig>
RPI 4 - Jeelink HomeMatic Z-Wave

Clyde

Ich möchte die Standortfreigaben der Kontakte eingeblendet haben. Dieses ist eigentlich immer dann möglich, wenn man GoogleMaps aufruft und im Browser im jeweiligen Google Account eingeloggt ist. Dann werden die Bildchen der Kontakte eingeblendet die ihren Standort teilen.

Dies bekomme ich weder mit dem Widget als auch nicht mit einer eingebetteten Map hin. Gibt es dazu eine andere Lösung?
2x Cubietruck, CUL868, HM-USB-CFG2
FS20, FHT, KS300, HM, MAX, Tradfri

eki

So, mit reverse engineering und einem Trick habe ich es nun geschafft, die Dicke der Traffic Linien anzupassen. Bitte mal in der angehängten Version testen (der Default ist jetzt auf 5 gesetzt (ist halb so dick wie vorher) man kann über data-traffic_thickness auch einen Wert zwischen 1 und 20 setzen).

curt

Kann es sein, dass Du die falsche Version verlinkt hast? Einziger Unterschied zur Vorgängerversion ist


> elem.initData('thickness', '20');


Also nichts mit default->5. Und es ändert sich bei mir auch nichts.
RPI 4 - Jeelink HomeMatic Z-Wave

eki

#38
Ich habe gerade noch mal geschaut, die Version müsste richtig sein, das ist auch mehr Unterschied und die von Dir kommentierte Zeile ist gar nicht drin (komisch). Der Teil, der sich geändert hat ist zwischen den Zeilen 336 und 355 sowie 888.
Bitte versuche es noch mal.

curt

Mein Fehler - falsche Version eingespielt. Ache auf mein Haupt.

Es funktioniert alles hervorragend, danke!
RPI 4 - Jeelink HomeMatic Z-Wave

Carsten

Moin!

Danke erstmal für das Widget. Habe es gerade getestet und es funktioniert soweit ganz gut.

Ich möchte es benutzen, um einen Einsatzort schnell auf der (OSM-)Karte anzuzeigen. Erstmal kein Traffic und keine Route.
Leider ist das angezeigte Icon auf der Karte irgendwie sehr klein. Kann man die Größe anpassen?
Gibt es außerdem eine Möglichkeit, Mapcenter und Zoom auch aus einem Reading zu entnehmen? Wenn ich das statisch einstelle ist der eigentliche Marker je nach Entfernung bei größerer Entfernung außerhalb der aktuell sichtbaren Karte oder man muss die Map statisch so weit rauszoomen, dass man auf der Karte keine Straßen mehr erkennt.

Gruß

Carsten

eki

Die größe der lässt sich natürlich anpassen global gibt es dafür den Parameter data-stroke, dort kann man Farbe, Größe und Durchsichtigkeit setzen (siehe Wiki https://wiki.fhem.de/wiki/FTUI_Widget_Maps).
Alternativ kann man ein Reading GoogleMapsStroke im referenzierten Device von FHEM anlegen, und data-stroke weglassen, dann wird der Parameter aus diesem Reading geholt.
Falls Du geojson verwendest, kannst Du über den Parameter data-feature_style relativ flexibel bestimmen, welche "Features" also im geojson enthaltene Kartenobjekte wie dargestellt werden sollen.

Zum Setzen von Mapcenter und Zoom aus Readings geht das ähnlich wie für Stroke. Wird data-center bzw. data-zoom nicht gesetzt, und das Device, das im Widget mit data-device referenziert wird enthält einen Parameter GoogleMapsCenter bzw. GoogleMapsZoom, dann werden diese Werte entsprechend aus den Readings des Devices geholt.
Für Zoom und Center gibt es auch noch die Möglichkeit 'auto' zu setzen, dann passt das Widget alles so an, dass alle Objekte im Ausschnitt zu sehen sind.

Steht übrigens alles auch unter https://wiki.fhem.de/wiki/FTUI_Widget_Maps im Wiki zu dem Widget ;).

Carsten

Zitat von: eki am 07 Februar 2019, 09:27:02
Die größe der lässt sich natürlich anpassen global gibt es dafür den Parameter data-stroke, dort kann man Farbe, Größe und Durchsichtigkeit setzen (siehe Wiki https://wiki.fhem.de/wiki/FTUI_Widget_Maps).
Hi, das klingt super. Werde ich mir dann heute Abend noch mal anschauen.
Ich hatte es so verstanden, dass data-stroke für Routen gedacht ist. Ich sehe da Parameter für Hinweg und für Rückweg. Ich hab aber ja nur ein Icon.

Zitat von: eki am 07 Februar 2019, 09:27:02
Zum Setzen von Mapcenter und Zoom aus Readings geht das ähnlich wie für Stroke. Wird data-center bzw. data-zoom nicht gesetzt, und das Device, das im Widget mit data-device referenziert wird enthält einen Parameter GoogleMapsCenter bzw. GoogleMapsZoom, dann werden diese Werte entsprechend aus den Readings des Devices geholt.
Für Zoom und Center gibt es auch noch die Möglichkeit 'auto' zu setzen, dann passt das Widget alles so an, dass alle Objekte im Ausschnitt zu sehen sind.

Steht übrigens alles auch unter https://wiki.fhem.de/wiki/FTUI_Widget_Maps im Wiki zu dem Widget ;).
Sorry, das hab ich irgendwie ausgefiltert, weil das dort nur im Bezug auf ein Traffic-Device, das ich nicht habe, die Rede ist. Auf die Idee, dass die Readings auch aus Nicht-Traffic-Devices funktionieren könnten, bin ich gar nicht gekommen.

Zitat von: eki am 07 Februar 2019, 09:27:02
Falls Du geojson verwendest, kannst Du über den Parameter data-feature_style relativ flexibel bestimmen, welche "Features" also im geojson enthaltene Kartenobjekte wie dargestellt werden sollen.
Über geojson habe ich nachgedacht, bin aber nicht sicher, ob ich das richtig verstanden habe. Geojson ist für ne Art POI-Liste(n), oder? Da ich ( Stand jetzt ) nur jeweils einen einzigen Punkt auf der Karte anzeigen will, gibt es mit geojson keinen Vorteil, oder übersehe ich was?

eki

data-stroke ist flexibel, alles was drin ist, wird genommen (auch für Icons), was weg ist, wird auf Default gesetzt.

Es werden letztendlich nur die Readings geprüft, und falls vorhanden, verwendet. Ob das ein TRAFFIC device ist, ist nich relevant.

Falls Du nur einen einzelnen Punkt hast, macht geojson tatsächlich wenig Sinn, habe ich nur der Vollständigkeit halber angemerkt.

eki

Ich habe das Wiki angepasst, damit wird hoffentlich klarer dass es nicht unbedingt ein TRAFFIC Device sein muss um die GoogleMaps.. readings zu berücksichtigen.