DE:JOSM/Plugins/indoorhelper

From OpenStreetMap Wiki
Jump to navigation Jump to search
indoorhelper icon indoorhelper
Ein Plug-In zur Erstellung, Validierung und Anzeige von Innenraumdaten.

IndoorHelper ist ein JOSM Plug-In zur Erstellung, Validierung und Anzeige von Innenraumdaten. Es ist dabei behilflich ein Tagging-Schema (Simple Indoor Tagging) beizubehalten und Innenraumobjekte schnell und einfach mit Tags zu versehen.

Animation how-to: Indoorhelper_how_to.gif

Zusammenfassung

Dieses Plug-In ist dabei behilflich Innenraumobjekte schnell zu kartographieren und gleichzeitig das Tagging-Schema Simple Indoor Tagging beizubehalten.

Funktionen

  • Versehe Objekt mit nur einem Klick vollständig mit Tags (inklusive indoor=* -Tag)
  • Beibehalten des Simple Indoor Tagging -Schemas
  • kartographiere einfache Multipolygone
  • Datenvalidierung
  • liefert eine MapCSS zur besseren Darstellung

Nutzung von OSM Innenraumdaten

Folgende Links bieten zusätzliche Informationen zur Nutzung von Innenraumdaten in OSM:

Benutzung

Nach der Installation erscheint das Plug-In in der Seitenleiste von JOSM. Das Plug-In nutzt verschiedene Funktionen des JOSM, wie z.B. die AutoFilter -Funktion. Diese ermöglicht es gemappte Objekte mit mehreren Ebenen nutzerfreundlich darzustellen.

Optionales Setup

Füge einen Gebäudeplan als Mapping-Grundlage hinzu:

  • Nutze das Piclayer-Plugin um Gebäudepläne einzupassen. Beachte, dass die Kalibrierung des Gebäudeplans auf einem separaten Layer passieren sollte

Füge eine neue Ebene hinzu

  • Mappe das erste Objekt einer neuen Ebene mithilfe des Ebene hinzufügen-Buttons. Betätige dazu den Button, füge die Ebenennummer ein und mappe das Objekt. Bestätige anschließend durch drücken der spacebar. Wiederhole dies für jedes neue Level

Mapping

Objekt mit und ohne Wände

Das Kartograhieren sollte in folgenden Schritten erfolgen:

  1. Wähle die aktuelle Arbeitsebene über die AutoFilter -Button aus
  2. Mappe das Objekt
  3. Wähle die gewünschte Tag-Kombination im Plugin-Fenster aus
  4. Stelle sicher, dass das gewählte Objekt noch immer markiert ist und betätige den Bestätigen-Button. Nun werden alle ausgewählten Tags dem Objekt hinzugefügt. Außerdem erhält das Objekt einen indoor=* -Tag mit dem Wert der aktuellen Ebene (falls nicht deaktiviert).


Die empfohlene Reihenfolge zur Bearbeitung ist:

  1. Räume, Flure, Ebenenverbindungen (stairways, elevators) oder individuelle Bereiche (rooms, corridors, areas, ...)
  2. POIs (door/entrance)
  3. Wände und Fenster (walls, windows)


Warum sollte diese Reihenfolge genutzt werden?
Diese Reihenfolge garantiert ein "Layer-Mapping"-Schema. Dabei werden Objekte übereinander kartographiert. Hierbei sind grundlegende Objekte: Räume, Flure, Treppen oder Aufzüge. Wände bzw. Fenster werden darüber kartographiert. So decken alle grundlegenden Objekttypen die Fläche des Gebäudes ab.


Klick hier um das Mapping-Tutorial GIF anzuschauen oder siehe Indoorhelper_how_to.gif

Indoorhelper how to.gif

Mapping Hinweise

Häufige Fehler

  • Türen oder Eingänge sind keinem Objekt zugeordnet, d.h. sie sind mit keinem Weg verknüpft. Türen und Eingänge (falls sie als Nodes kartographiert sind) müssen mit einem Weg (z.B. einem Raum) verknüpft sein. Hierbei ist darauf zu achten, dass diese nicht zwei angrenzende Räume verknüpfen (Tür oder Eingang wird nur einem Objekt zugeordnet)
  • Türen oder Eingänge sind mit Wänden oder Fenstern verknüpft. Ist eine Tür oder ein Eingang zu mappen, so ist an dieser Stelle die Wand etc. zu unterbrechen und die Tür oder der Eingang an das grundlegende Objekt (z.B. Raum, Flur) anzuheften


Tipps:

  • Falls ein Objekt über mehrere Ebenen hinweg besteht und auf diesen Ebenen an der selben Stelle existiert (z.B. Aufzüge, Treppen), so ist es möglich das Objekt nur ein mal zu mappen und es anschließend mit einem repeat_on=*-Tag zu versehen (nähere Beschreibung folgt). Das Plugin ermöglicht es mithilfe des AutoFilter -Buttons das Objekt auf allen relevanten Ebenen zu sehen
  • Treppen sollten mit incline=* (Key:incline) und direction=* (Key:direction) gekennzeichnet werden
  • Weitere Tag-Möglichkeiten sind unter JOSM Presets zu finden

Plugin

Indoorhelper main.png

Level Bar

Field/Button Action Description
Level Name Name der aktiven Ebene Setze optionalen Ebenenname. Bestätige per Bestätigen-Button. Das Objekt wird mit level_name=* getagged.
Arbeitsebene Ein dynamisches Feld, welches die aktive Arbeitsebene anzeigt Das Feld gibt die aktive Arbeitsebene an, welche mithilfe des AutoFilters ausgewählt werden kann. Diese Funktion funktioniert nicht ohne den AutoFilter
  • Zahl : Aktive Arbeitsebene, andere Objekte sind ausgeblendet
  • NONE : Keine Arbeitsebene ausgewählt/aktiviert oder AutoFilter ist inaktiv
Checkbox Aktivier/Deaktiviere automatisches Level-Tagging Falls aktiv, so wird jedes Objekt mit level=* versehen
Ebene hinzufügen Eine neue Ebene zum Datenset hinzufügen how to:
  1. Öffne über den Ebene hinzufügen-Button das Auswahlfenster
  2. Trage die gewünschte Ebenennummer ein (z.B. 1, -4, 0)
  3. Bestätige mit OK
  4. Mappe das Objekt und drücke spacebar um den Vorgang abzuschließen

Tagging Bar

Dieser Plugin-Bereich stellt Tag-Vorlagen zur Verfügung (Nutzung per Buttons).

Field/Dropdown Description
Objekt Die Auswahl der Tag-Vorlagen ist im Dropdown-Menü zu finden und darüber auszuwählen. Falls kein Tag zugeordnen werden soll wähle NONE. Eine detaillierte Tag-Map folgt
Name Versehe das Objekt mit einem Namen (z.B. ROOM - classroom wird versehen mit name=classroom)
Referenz Versehe das Objekt mit einer Referenz (z.B. classroom - R025 wird versehen mit ref=R025)
Repeat_on Definiert die Ebenen, auf welchen das Objekt wiederholt wird (z.B. elevator - 3-4 bedeutet, dass der Aufzug auf Ebene 2 startet und über die Ebene 3 bis hin zur 4 fortgesetzt wird. Andere Beispiele: -3-6 or -3--1

Mehr zu repeat_on=*:

  • Definiert, ob ein Objekt mehrere Ebenen verbindet (z.B. stairways, elevators). Siehe auch Simple Indoor Tagging
  • Um das Mappen zu vereinfachen, zeigt das Plugin Objekte mit repeat_on=* auf den jeweils definierten Ebenen an.

Tagging Map:

Plugin tag Tag map Nutzbar mit
CONCRETE_WALL indoor=wall, material=concrete closed wayway
DOOR_PRIVATE door=yes, access=private Mf node.svgway
DOOR_PUBLIC door=yes, access=yes Mf node.svgway
ELEVATOR highway=elevator closed wayMf node.svg
ENTRANCE entrance=yes Mf node.svgway
ACCESS_PRIVATE access=private Mf node.svgway
ACCESS_PUBLIC access=yes Mf node.svgway
ENTRANCE_EXIT_ONLY entrance=exit Mf node.svgclosed way
TOILET_FEMALE indoor=room, amenity=toilets, female=yes closed way
TOILET_MALE indoor=room, amenity=toilets, male=yes closed way
GLASS_WALL indoor=wall, material=glass closed wayway
ROOM indoor=room closed way
STEPS highway=steps closed way
CORRIDOR indoor=corridor closed way
BENCH amenity=bench closed wayMf node.svg
AREA indoor=area closed wayMf node.svg
NONE no tagging of indoor objects

Vorlagen-Buttons
Auf der rechten Seite des Plugins befinden sich Vorlagen-Button. Diese Button taggen Objekte direkt durch Betätigen des Buttons und werden je nach Häufigkeit aktualisiert (Häufigkeit der Nutzung bestimmt Reihenfolge der Button).

Multipolygon Bar

Diese Funktion ist lediglich zum Zeichnen einfach strukturierter Multipolygone

Die empfohlene Reihenfolge zur Bearbeitung ist:

  1. Füge den äußeren Bereich hinzu, d.h. ein Objekt mit role=outer durch outer
  2. Füge den inneren Bereich hinzu, d.h. ein Objekt mit role=inner durch inner

(siehe auch Multipolygon)

Schritt-bei-Schritt Vorgehen:

  1. Betätige den outer-Button um in den Zeichen-Modus zu wechseln
  2. Mappe das Objekt und betätige spacebar um dem Objekt role=outer hinzuzufügen
  3. Betätige den inner-Button um in den Zeichen-Modus zu wechseln
  4. Mappe das Objekt und betätige spacebar um den Vorgang abzuschließen. Anschließend wähle das "outer"-Objekt aus, zu welchem das "inner"-Objekt hinzugefügen werden soll und betätige enter um die Objekte zusammen zu fügen.

Falls mehrere "inner"-Objekte einem "Outer"-Objekt hinzugefügt werden sollten, wiederhole den Prozess beginneng bei Schritt 3

BIM

BIM import icon.png
Das Plugin beinhaltet eine Import-Funktionalität für .ifc (BIM)-Dateien. Um eine neue .ifc Datei zu importieren, füge einen neuen Layer hinzu und nutze den Import-Button unter DateiBIM Datei importieren. Es ist zu beachten, dass diese Funktionalität in der beta-Phase ist! Für weitere Informationen zur Überführung von BIM-Objekten zu OSM-Objekten siehe Wiki Building Information Modeling.

Ein Tutorial GIF:
Bim-import.gif

Datenstruktur

Das Datenschema basiert überwiegend auf dem Simple_Indoor_Tagging -Standard. Erweiterungen wurden im Rahmen dieses Standards vorgenommen. Das gesamte Schema charakterisiert sich ausschließlich durch Tags und macht es somit leicht verständlich und gut umsetzbar. Um das intuitive Mappen zu unterstützen werden wichtige Objekte direkt mit dem Tag indoor=* versehen. Damit der Simple_Indoor_Tagging -Standard durchgehend gesichert wird werden bestimmte Tags mit Tag-Kombinationen versehen (Beispiel: TOILET_FEMALE : indoor=room, amenity=toilets, female=yes). Für weitere Informationen siehe auch Tagging Bar.

Datenvalidierung

MapCSS Rendertheme

Darstellung der Daten in niedriger, mittlerer und hoher Zoomstufe.

Die erste Möglichkeit der Validierung ist das MapCSS Rendertheme, welches mit dem Plug-In installiert wird.

Das Rendertheme nutzt die Möglichkeit der Zoomstufenfilterung um die Daten abhängig vom JOSM Zoomlevel unterschiedlich darzustellen. So werden bei einem hohen Zoomlevel alle Gebäudedetails ersichtlich, die auf einem niedrigen Zoomlevel noch verborgen sind.

JOSM Validator

Die andere Validierungsmethode, die genutzt werden kann ist die JOSM-Validatordatei.

Der Validator meldet dem Nutzer folgende Mappingfehler:

  • Weg oder Knothen ohne den Tag level=*
  • Tags, die nur Wegen zugeordnet werden sollten wurden zu Knoten hinzugefügt
  • Tags, die nur Knoten zugeordnet werden sollten wurden zu Wegen hinzugefügt

Die Validierung wird immer beim Klick auf Apply ausgeführt.

Einschränkungen

  • Es ist nur eine grafische Repräsentation der Innenraumdaten
    • Daher sind die Daten nicht zum Routing geeignet

Entwicklung

Erstellt durch User:Erigrus

Bugs/Issues bitte an User:Rebsc

Quellcode: Octicons-mark-github.svg JOSM/indoorhelper

Aktuelle Projekte: Octicons-mark-github.svg JOSM/indoorhelper/projects

Siehe auch

  • [1] - JOSM HelpBrowser, Kurzbeschreibung.