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. Skripten / Logik
  4. Node-Red
  5. Worldmap mit GeoJSON-Track

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.5k

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

Worldmap mit GeoJSON-Track

Geplant Angeheftet Gesperrt Verschoben Node-Red
4 Beiträge 2 Kommentatoren 280 Aufrufe 2 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.
  • I Offline
    I Offline
    ioste
    schrieb am zuletzt editiert von
    #1

    Hi zusammen,

    ich versuche nun seit einer Weile einen Track auf die Worldmap zu bekommen.
    Konkret frage ich eine Route über die HERE-Maps Api ab, und bekomme eine polyline zurück. Diese Polyline kann ich decodieren (mittels einbinden von mapbox/Polyline) und bekomme zB ein geoJSON Linestring zurück.

    Soweit sieht das geoJSON-Objekt ok aus laut https://geojsonlint.com/ .

    Allerdings bekomme ich das nicht auf meiner Worldmap angezeigt. Ich habe mal meinen Flow angehängt als Minimalbeispiel. Der obere Flow erstellt nur einen Layer auf der Map, aber es wird nichts angezeigt. Der untere Flow zeichnet einen Kreis auf der Map, das funktioniert auch.
    Habt ihr eine Ahnung woran das liegen könnte?

    Vielen Dank schonmal.

    [
        {
            "id": "c643e022.1816c",
            "type": "worldmap",
            "z": "5d791586.3e74ec",
            "name": "Map",
            "lat": "48.11952",
            "lon": "11.44415",
            "zoom": "13",
            "layer": "OSMC",
            "cluster": "",
            "maxage": "",
            "usermenu": "show",
            "layers": "show",
            "panit": "false",
            "panlock": "false",
            "zoomlock": "false",
            "hiderightclick": "false",
            "coords": "deg",
            "showgrid": "false",
            "showruler": "true",
            "allowFileDrop": "false",
            "path": "worldmap",
            "overlist": "DR,CO",
            "maplist": "OSMC",
            "mapname": "",
            "mapurl": "",
            "mapopt": "",
            "mapwms": false,
            "x": 990,
            "y": 780,
            "wires": []
        },
        {
            "id": "55209da23883b221",
            "type": "function",
            "z": "5d791586.3e74ec",
            "name": "decode polyline",
            "func": "// returns an array of lat, lon pairs\nvar meineRoute = msg.payload;\nvar meinGeoJSON = mapboxPolyline.toGeoJSON(meineRoute);\nvar myGeoJSONRoute = meinGeoJSON.coordinates;\n\n\n\nmsg.payload = {\n    \"name\": \"Myline\",\n    \"layer\": \"MyNewLayer22\",\n    \"color\": \"#464646\",\n    \"iconcolor\": \"#464646\",\n    \"weight\": \"6\",\n    \"geojson\": { \n    \"type\":\"LineString\",\n    \"coordinates\":myGeoJSONRoute},\n    clickable: true,\n    properties: {\n        \"strokeColor\": \"#464646\"\n      }\n}\n\n\n\nreturn msg;",
            "outputs": 1,
            "timeout": 0,
            "noerr": 0,
            "initialize": "",
            "finalize": "",
            "libs": [
                {
                    "var": "mapboxPolyline",
                    "module": "@mapbox/polyline"
                }
            ],
            "x": 580,
            "y": 780,
            "wires": [
                [
                    "c643e022.1816c"
                ]
            ]
        },
        {
            "id": "3eb1c9d09c83e4e4",
            "type": "inject",
            "z": "5d791586.3e74ec",
            "name": "",
            "props": [
                {
                    "p": "payload"
                }
            ],
            "repeat": "",
            "crontab": "",
            "once": false,
            "onceDelay": 0.1,
            "topic": "",
            "payload": "BG89077C8u04VvBQ7LkDzK8B_JU3IArJTzKnB3DAjDUrE8BjDwCvCwCrEsE3DkDrEwCrEoBnBAvHU3IUzP8BrJoBrJ8BvHwCvHwCrEwC7GsErJoGzKkIzFwCjDoBjDU_EA8G8Q8B4SnB0ZTwMA4DnB8aAgUUwWU0PoB8L8B4NwCkNoGge8G4cwRsvC4DgPsJ8kBwMozBgPghCkDoQ4D8QoG8a4DoQ8B4IoBwHU0FAoGT0FnBoGnBoGnBgF7B0FvCoGjDoG3D8G3DoG7QsdzFgK3D8GjDoGvCoG7B0F7BwHnBoGTsEnB4InB8GTgFTkIAsEU8GUsEoB0FoBgF8B0FwCoGgF8LgF8L0FsO0FsO4DsJsE0KwC0FwC0FwC0FwCgFkDoGkDsJkD4IwC8GgFwM4D4IgKwW8BsEgFwM0FoL4DkIgKsTgKwR0U8fwMgUgFwHkDsEge0oBkIgK8B8BsE4D8LkI8GkDnBwHzF4c_EgUnGoVjI8avCsJ3DoQ_E0e7BgUVsL",
            "payloadType": "str",
            "x": 390,
            "y": 780,
            "wires": [
                [
                    "55209da23883b221"
                ]
            ]
        },
        {
            "id": "89fb7dfff2e80465",
            "type": "function",
            "z": "5d791586.3e74ec",
            "name": "draw circle",
            "func": "// returns an array of lat, lon pairs\nvar meineRoute = msg.payload;\nmsg.track = mapboxPolyline.toGeoJSON(meineRoute);\nvar myGeoJSONRoute = msg.track.coordinates;\n\n\n\n\nmsg.payload =  {\n    \"name\": \"circle\",\n    \"lat\": 48.11952, \n    \"lon\": 11.44415,\n    \"radius\": 1000,\n    \"layer\": \"MyNewLay\",\n    \"iconColor\": '#464646',\n    \"stroke\": false,\n    \"fillOpacity\": 0.8,\n    \"clickable\": true\n};\n\nreturn msg;",
            "outputs": 1,
            "timeout": 0,
            "noerr": 0,
            "initialize": "",
            "finalize": "",
            "libs": [
                {
                    "var": "mapboxPolyline",
                    "module": "@mapbox/polyline"
                }
            ],
            "x": 570,
            "y": 840,
            "wires": [
                [
                    "c643e022.1816c"
                ]
            ]
        },
        {
            "id": "a7604b0243ef60a5",
            "type": "inject",
            "z": "5d791586.3e74ec",
            "name": "",
            "props": [
                {
                    "p": "payload"
                }
            ],
            "repeat": "",
            "crontab": "",
            "once": false,
            "onceDelay": 0.1,
            "topic": "",
            "payload": "BG89077C8u04VvBQ7LkDzK8B_JU3IArJTzKnB3DAjDUrE8BjDwCvCwCrEsE3DkDrEwCrEoBnBAvHU3IUzP8BrJoBrJ8BvHwCvHwCrEwC7GsErJoGzKkIzFwCjDoBjDU_EA8G8Q8B4SnB0ZTwMA4DnB8aAgUUwWU0PoB8L8B4NwCkNoGge8G4cwRsvC4DgPsJ8kBwMozBgPghCkDoQ4D8QoG8a4DoQ8B4IoBwHU0FAoGT0FnBoGnBoGnBgF7B0FvCoGjDoG3D8G3DoG7QsdzFgK3D8GjDoGvCoG7B0F7BwHnBoGTsEnB4InB8GTgFTkIAsEU8GUsEoB0FoBgF8B0FwCoGgF8LgF8L0FsO0FsO4DsJsE0KwC0FwC0FwC0FwCgFkDoGkDsJkD4IwC8GgFwM4D4IgKwW8BsEgFwM0FoL4DkIgKsTgKwR0U8fwMgUgFwHkDsEge0oBkIgK8B8BsE4D8LkI8GkDnBwHzF4c_EgUnGoVjI8avCsJ3DoQ_E0e7BgUVsL",
            "payloadType": "str",
            "x": 390,
            "y": 840,
            "wires": [
                [
                    "89fb7dfff2e80465"
                ]
            ]
        }
    ]
    
    mickymM 1 Antwort Letzte Antwort
    0
    • I ioste

      Hi zusammen,

      ich versuche nun seit einer Weile einen Track auf die Worldmap zu bekommen.
      Konkret frage ich eine Route über die HERE-Maps Api ab, und bekomme eine polyline zurück. Diese Polyline kann ich decodieren (mittels einbinden von mapbox/Polyline) und bekomme zB ein geoJSON Linestring zurück.

      Soweit sieht das geoJSON-Objekt ok aus laut https://geojsonlint.com/ .

      Allerdings bekomme ich das nicht auf meiner Worldmap angezeigt. Ich habe mal meinen Flow angehängt als Minimalbeispiel. Der obere Flow erstellt nur einen Layer auf der Map, aber es wird nichts angezeigt. Der untere Flow zeichnet einen Kreis auf der Map, das funktioniert auch.
      Habt ihr eine Ahnung woran das liegen könnte?

      Vielen Dank schonmal.

      [
          {
              "id": "c643e022.1816c",
              "type": "worldmap",
              "z": "5d791586.3e74ec",
              "name": "Map",
              "lat": "48.11952",
              "lon": "11.44415",
              "zoom": "13",
              "layer": "OSMC",
              "cluster": "",
              "maxage": "",
              "usermenu": "show",
              "layers": "show",
              "panit": "false",
              "panlock": "false",
              "zoomlock": "false",
              "hiderightclick": "false",
              "coords": "deg",
              "showgrid": "false",
              "showruler": "true",
              "allowFileDrop": "false",
              "path": "worldmap",
              "overlist": "DR,CO",
              "maplist": "OSMC",
              "mapname": "",
              "mapurl": "",
              "mapopt": "",
              "mapwms": false,
              "x": 990,
              "y": 780,
              "wires": []
          },
          {
              "id": "55209da23883b221",
              "type": "function",
              "z": "5d791586.3e74ec",
              "name": "decode polyline",
              "func": "// returns an array of lat, lon pairs\nvar meineRoute = msg.payload;\nvar meinGeoJSON = mapboxPolyline.toGeoJSON(meineRoute);\nvar myGeoJSONRoute = meinGeoJSON.coordinates;\n\n\n\nmsg.payload = {\n    \"name\": \"Myline\",\n    \"layer\": \"MyNewLayer22\",\n    \"color\": \"#464646\",\n    \"iconcolor\": \"#464646\",\n    \"weight\": \"6\",\n    \"geojson\": { \n    \"type\":\"LineString\",\n    \"coordinates\":myGeoJSONRoute},\n    clickable: true,\n    properties: {\n        \"strokeColor\": \"#464646\"\n      }\n}\n\n\n\nreturn msg;",
              "outputs": 1,
              "timeout": 0,
              "noerr": 0,
              "initialize": "",
              "finalize": "",
              "libs": [
                  {
                      "var": "mapboxPolyline",
                      "module": "@mapbox/polyline"
                  }
              ],
              "x": 580,
              "y": 780,
              "wires": [
                  [
                      "c643e022.1816c"
                  ]
              ]
          },
          {
              "id": "3eb1c9d09c83e4e4",
              "type": "inject",
              "z": "5d791586.3e74ec",
              "name": "",
              "props": [
                  {
                      "p": "payload"
                  }
              ],
              "repeat": "",
              "crontab": "",
              "once": false,
              "onceDelay": 0.1,
              "topic": "",
              "payload": "BG89077C8u04VvBQ7LkDzK8B_JU3IArJTzKnB3DAjDUrE8BjDwCvCwCrEsE3DkDrEwCrEoBnBAvHU3IUzP8BrJoBrJ8BvHwCvHwCrEwC7GsErJoGzKkIzFwCjDoBjDU_EA8G8Q8B4SnB0ZTwMA4DnB8aAgUUwWU0PoB8L8B4NwCkNoGge8G4cwRsvC4DgPsJ8kBwMozBgPghCkDoQ4D8QoG8a4DoQ8B4IoBwHU0FAoGT0FnBoGnBoGnBgF7B0FvCoGjDoG3D8G3DoG7QsdzFgK3D8GjDoGvCoG7B0F7BwHnBoGTsEnB4InB8GTgFTkIAsEU8GUsEoB0FoBgF8B0FwCoGgF8LgF8L0FsO0FsO4DsJsE0KwC0FwC0FwC0FwCgFkDoGkDsJkD4IwC8GgFwM4D4IgKwW8BsEgFwM0FoL4DkIgKsTgKwR0U8fwMgUgFwHkDsEge0oBkIgK8B8BsE4D8LkI8GkDnBwHzF4c_EgUnGoVjI8avCsJ3DoQ_E0e7BgUVsL",
              "payloadType": "str",
              "x": 390,
              "y": 780,
              "wires": [
                  [
                      "55209da23883b221"
                  ]
              ]
          },
          {
              "id": "89fb7dfff2e80465",
              "type": "function",
              "z": "5d791586.3e74ec",
              "name": "draw circle",
              "func": "// returns an array of lat, lon pairs\nvar meineRoute = msg.payload;\nmsg.track = mapboxPolyline.toGeoJSON(meineRoute);\nvar myGeoJSONRoute = msg.track.coordinates;\n\n\n\n\nmsg.payload =  {\n    \"name\": \"circle\",\n    \"lat\": 48.11952, \n    \"lon\": 11.44415,\n    \"radius\": 1000,\n    \"layer\": \"MyNewLay\",\n    \"iconColor\": '#464646',\n    \"stroke\": false,\n    \"fillOpacity\": 0.8,\n    \"clickable\": true\n};\n\nreturn msg;",
              "outputs": 1,
              "timeout": 0,
              "noerr": 0,
              "initialize": "",
              "finalize": "",
              "libs": [
                  {
                      "var": "mapboxPolyline",
                      "module": "@mapbox/polyline"
                  }
              ],
              "x": 570,
              "y": 840,
              "wires": [
                  [
                      "c643e022.1816c"
                  ]
              ]
          },
          {
              "id": "a7604b0243ef60a5",
              "type": "inject",
              "z": "5d791586.3e74ec",
              "name": "",
              "props": [
                  {
                      "p": "payload"
                  }
              ],
              "repeat": "",
              "crontab": "",
              "once": false,
              "onceDelay": 0.1,
              "topic": "",
              "payload": "BG89077C8u04VvBQ7LkDzK8B_JU3IArJTzKnB3DAjDUrE8BjDwCvCwCrEsE3DkDrEwCrEoBnBAvHU3IUzP8BrJoBrJ8BvHwCvHwCrEwC7GsErJoGzKkIzFwCjDoBjDU_EA8G8Q8B4SnB0ZTwMA4DnB8aAgUUwWU0PoB8L8B4NwCkNoGge8G4cwRsvC4DgPsJ8kBwMozBgPghCkDoQ4D8QoG8a4DoQ8B4IoBwHU0FAoGT0FnBoGnBoGnBgF7B0FvCoGjDoG3D8G3DoG7QsdzFgK3D8GjDoGvCoG7B0F7BwHnBoGTsEnB4InB8GTgFTkIAsEU8GUsEoB0FoBgF8B0FwCoGgF8LgF8L0FsO0FsO4DsJsE0KwC0FwC0FwC0FwCgFkDoGkDsJkD4IwC8GgFwM4D4IgKwW8BsEgFwM0FoL4DkIgKsTgKwR0U8fwMgUgFwHkDsEge0oBkIgK8B8BsE4D8LkI8GkDnBwHzF4c_EgUnGoVjI8avCsJ3DoQ_E0e7BgUVsL",
              "payloadType": "str",
              "x": 390,
              "y": 840,
              "wires": [
                  [
                      "89fb7dfff2e80465"
                  ]
              ]
          }
      ]
      
      mickymM Offline
      mickymM Offline
      mickym
      Most Active
      schrieb am zuletzt editiert von mickym
      #2

      @ioste Also ich bekomms auch nicht hin. Lediglich wenn die Koordinaten als Line zeichnest.

      // returns an array of lat, lon pairs
      var meineRoute = msg.payload;
      var meinGeoJSON = mapboxPolyline.toGeoJSON(meineRoute);
      var myGeoJSONRoute = meinGeoJSON.coordinates;
      
      msg.payload = {
          "name": "Myline",
          "layer": "MyNewLayer22",
          "color": "#464646",
          "iconcolor": "#464646",
          "weight": "6",
          "line":myGeoJSONRoute,
          clickable: true,fit:true,
          properties: {
              "strokeColor": "#464646"
            }
      }
      
      
      return msg;
      

      3d87cb28-8884-4a2a-a88e-c782eb058dfe-image.png

      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

      I 1 Antwort Letzte Antwort
      0
      • mickymM mickym

        @ioste Also ich bekomms auch nicht hin. Lediglich wenn die Koordinaten als Line zeichnest.

        // returns an array of lat, lon pairs
        var meineRoute = msg.payload;
        var meinGeoJSON = mapboxPolyline.toGeoJSON(meineRoute);
        var myGeoJSONRoute = meinGeoJSON.coordinates;
        
        msg.payload = {
            "name": "Myline",
            "layer": "MyNewLayer22",
            "color": "#464646",
            "iconcolor": "#464646",
            "weight": "6",
            "line":myGeoJSONRoute,
            clickable: true,fit:true,
            properties: {
                "strokeColor": "#464646"
              }
        }
        
        
        return msg;
        

        3d87cb28-8884-4a2a-a88e-c782eb058dfe-image.png

        I Offline
        I Offline
        ioste
        schrieb am zuletzt editiert von
        #3

        @mickym danke! So reicht mir das auch und funktioniert!
        Da fällt dann auch gleich auf dass die HereApi ne flexiblepolyline ausgibt, das ist leicht anders als die Polyline von Google.

        Jetzt nur noch rausfinden wie die Map auch in der vis angezeigt wird. Funktioniert im normalen Browser, aber auf dem alten iPad2 mini mit iobroker app zeigt er nichts an.

        20250222_095908.jpg

        mickymM 1 Antwort Letzte Antwort
        0
        • I ioste

          @mickym danke! So reicht mir das auch und funktioniert!
          Da fällt dann auch gleich auf dass die HereApi ne flexiblepolyline ausgibt, das ist leicht anders als die Polyline von Google.

          Jetzt nur noch rausfinden wie die Map auch in der vis angezeigt wird. Funktioniert im normalen Browser, aber auf dem alten iPad2 mini mit iobroker app zeigt er nichts an.

          20250222_095908.jpg

          mickymM Offline
          mickymM Offline
          mickym
          Most Active
          schrieb am zuletzt editiert von
          #4

          @ioste sagte in Worldmap mit GeoJSON-Track:

          @mickym danke! So reicht mir das auch und funktioniert! ….

          Jetzt nur noch rausfinden wie die Map auch in der vis angezeigt wird. Funktioniert im normalen Browser, aber auf dem alten iPad2 mini mit iobroker app zeigt er nichts an.

          ja da kann ich leider nicht helfen. ich hatte die world-map mal in einem iframe in vis eingebunden, aber ich fürchte, dass dir hier Safari ein Strich durch die Rechnung macht.

          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

          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

          724

          Online

          32.6k

          Benutzer

          82.1k

          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