DE:JOSM/Plugins/indoorhelper

From OpenStreetMap Wiki
Jump to: navigation, search


Verfügbare Sprachen — JOSM/Plugins/indoorhelper
Afrikaans Alemannisch aragonés asturianu azərbaycanca Bahasa Indonesia Bahasa Melayu Bân-lâm-gú Basa Jawa Baso Minangkabau bosanski brezhoneg català čeština dansk Deutsch eesti English español Esperanto estremeñu euskara français Frysk Gaeilge Gàidhlig galego Hausa hrvatski Igbo interlingua Interlingue isiXhosa isiZulu íslenska italiano Kiswahili Kreyòl ayisyen kréyòl gwadloupéyen kurdî latviešu Lëtzebuergesch lietuvių magyar Malagasy Malti Nederlands Nedersaksies norsk norsk nynorsk occitan Oromoo oʻzbekcha/ўзбекча Plattdüütsch polski português português do Brasil română shqip slovenčina slovenščina Soomaaliga suomi svenska Tiếng Việt Türkçe Vahcuengh vèneto Wolof Yorùbá Zazaki српски / srpski беларуская български қазақша македонски монгол русский тоҷикӣ українська Ελληνικά Հայերեն ქართული नेपाली मराठी हिन्दी অসমীয়া বাংলা ਪੰਜਾਬੀ ગુજરાતી ଓଡ଼ିଆ தமிழ் తెలుగు ಕನ್ನಡ മലയാളം සිංහල ไทย မြန်မာဘာသာ ລາວ ភាសាខ្មែរ ⵜⴰⵎⴰⵣⵉⵖⵜ አማርኛ 한국어 日本語 中文(简体)‎ 吴语 粵語 中文(繁體)‎ ייִדיש עברית اردو العربية پښتو سنڌي فارسی ދިވެހިބަސް
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.

Zusammenfassung

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

Was macht das Plug-In?

  • es ist möglich ein Objekt mit nur einem Klick vollständig mit Tags zu versehen (inclusive indoor=* -Tag)
  • es wird das Simple_Indoor_Tagging -Schema beibehalten
  • es ist möglich einfache Multipolygone schnell zu kartographieren
  • jedes Objekt wird auf ein indoor=* -Tag überprüft
  • liefert eine MapCSS zur besseren Darstellung

Benutzung

Nach der Installation erscheint das Plug-In in der Seitenleiste von JOSM. Um alle Funktionen des Plug-Ins nutzen zu können ist eine kurze Einrichtung vor Nutzungsbeginn notwendig. 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.

Die erste Nutzung

Einrichten

Um alle Funktionen des Plug-Ins nutzen zu könnten ist folgende Einrichtung notwendig:

  1. nutze das Piclayer -Plugin um bestehende OpenStreetMap-Daten oder GPS-Tracks als Mappinggrundlage zu nutzen (empfehlenswert). Dabei ist darauf zu achten, dass zwei verschiedene Layer genutzt werden. Ein Layer um zu kartographieren und ein Layer um die bestehenden Daten als Grundlage zu nutzen.
  2. erstelle das erste Objekt (einer neuen Ebene) immer über den Insert Level -Button (nähere Beschreibung folgt). Dies ermöglicht es die Funktionen des AutoFilter nutzen zu können. Dieser Schritt muss mit jeder neuen Ebene wiederholt werden!

Mapping


Das Kartograhieren sollte in folgenden Schritten erfolgen:

  1. wähle die aktuelle Arbeitsebene über die AutoFilter -Button aus (falls noch nicht gesetzt).
  2. mappe das Objekt wie gewohnt
  3. wähle die gewünschte Tag-Kombination im Plug-In-Fenster aus
  4. stelle sicher, dass das gewählte Objekt noch immer markiert ist und betätige den Apply -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 and elevators) oder individuelle Bereiche (rooms, corridors or areas ...)
  2. POIs (door/entrance)
  3. Wände und Fenster (walls, windows)


Warum sollte diese Reihenfolge genutzt werden?

Objekt mit und ohne Wände.

Diese Reihenfolge bringt das "Layer-Mapping" -Schema mit sich. Das bedeutet Objekte werden übereinander kartographiert. Hierbei sind grundlegende Objekte: Räume, Flure, Treppen oder Aufzüge. Wände bzw. Fenster werden darüber kartographiert. Dies bringt den Vorteil mit sich, dass auch ohne Wände die komplette Fläche des Gebäudes abgedeckt ist.


Tipps und häufige Mappingfehler

Häufige Fehler

  • Objekte werden mit anderen Objekten über Nodes verknüpft. Jedes Objekt sollte separat bestehen und niemals die selben Knotenpunkte, wie andere (angrenzende) Objekte nutzen. (Beispiel: Zwei Räume liegen direkt nebenander. Insgesamt müssen die Räume 8 verschiedene Knotenpunkte aufweisen, d.h. jedes Objekt hat 4 separate Knotenpunkte.)
  • 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 Plug-In macht es möglich (bei richtiger repeat_on=* -Tagnutzung), mithilfe des AutoFilter -Buttons alle relevanten Ebenen zu sehen.
  • Treppen können mit dem Tag door=no versehen werden. Näheres hierzu unter Simple_Indoor_Tagging (modelling connections between different levels).
  • weitere Tag-Möglichkeiten sind unter Presets im JOSM zu finden.

Plug-In Abschnitte

Level Bar

Plug-In Abschnitt zur einfachen Level-Benennung und automatischem Level-Tagging. Hier aktuelle Arbeitsebene "1".
Textfeld/Button Function Beschreibung
Level name Zum Hinzufügen einer neuen Ebene Fülle das Textfeld mit dem gewünschten Ebenen-Namen aus. Abschließend bestätige dies über den apply -Button. Das markierte Objekt erhält nun den Tag level_name=*.
Working level Ein dynamisches Textfeld, welches das aktuelle Level anzeigt, auf dem gearbeitet wird. Diese Funktion läuft über die Filtersetzung durch den AutoFilter. Dieses Feld zeigt die aktuell ausgewählte Ebene, welche durch die AutoFilter -Funktion ausgewählt wurde. Hierbei ist das Plug-In darauf angewiesen, dass die Arbeitsebene durch die Ebenen-Buttons der AutoFilter(obere linke Ecke) ausgewählt wurden. Um dies zu gewährleisten ist es nötig neue Ebenen mittels Insert level -Button einzuführen. Folgende Werte kann das Textfeld annehmen:
  • Nummer: das aktuelle Arbeitslevel (nur Objekte mit diesem Level-Wert oder einem bestimmten Repeat_On-Wert (Näheres siehe unten) werden auf dem Bilschirm angezeigt).
  • NONE : keine Ebene ist ausgewählt oder die AutoFilter -Funktion ist nicht aktiv.
checkbox Zum Deaktivieren des automatischen level-taggings. Ist diese Checkbox nicht ausgewählt, so wird automatisch bei Betätigung des apply -Buttons das aktuelle Ebenenlevel (im Textfeld links angezeigt) mit hinzugefügt. Soll diese Funktion deaktiviert werden, muss die Checkbox ausgewählt werden. Nun werden keine Tags im Format level=* mehr hinzugefügt.

Näheres zum repeat_on=*:

  • beschreibt die Verknüpfung mehrerer Ebenen durch Aufzüge, Treppen usw. (siehe auch Simple_Indoor_Tagging)
  • um das Kartographieren zu optimieren, ist es durch das Plug-In möglich Objekte mit einem repeat_on=*-Tag über mehrere Ebenen hinweg darzustellen. Hierbei muss das Objekt nur einmal erstellt werden und wird anschließend mit dem repeat_on=* -Tag versehen. Nun ist es möglich das Objekt auf allen Arbeitsebenen zu sehen die im Bereich des repeat_on=* -Tags liegen. Hierbei beginnt der Bereich des repeat_on=* -Tags bei dem aktuellen Level+1 (siehe auch Simple_Indoor_Tagging).

Insert Level Button

Dieser Button ist nötig um ein neues Level hinzuzufügen.

Schritt-bei-Schritt Vorgehen:

Schritt Beschreibung
1 Betätige den Insert level -Button um das "Ebenenfenster" zu öffnen.
2 Füge die gewünschte Ebenenzahl im Textfeld ein (Beispiel: 1, -4, 0).
3 Bestätige mit OK um die Zeichen-Funktion auszuwählen.
4 Zeichne das gewünschte Objekt und bestätige anschließend, in dem die Leertaste gedrückt wird. Nun wurde ein neues Objekt mit dem entsprechenden level=* -Tag hinzugefügt. Ebenso sollten die AutoFilter -Button in der linken oberen Ecke erscheinen.

Tagging Bar

Optionale Tag-Sets für schnelles Indoor-Tagging und individuelle Benennung von Repeta_on -Bereichen, sowie dem Objekt selbst mittels Name und Referenz.

Dieser Abschnitt des Plug-In Fensters bezieht sich auf oft genutzte Tags im IndoorMapping-Bereich. Im Folgenden wird dargestellt, welche Auswahl welche Tags mit sich bringt. (Hinweis zur Nutzung: Wähle bzw. fülle gewünschte Objekte bzw. Textfelder aus und bestätige anschließend mit dem apply -Button!)

Feld/Menü Beschreibung
Object Das DropDown-Menü schlägt oft genutzte Tags vor. Falls keiner dieser ausgewählt werden möchte, nutze die NONE -Variante.

Das Folgende wird bei Auswahl getagged:

Tag Hinzugefügte Tags Anwendbar bei
CONCRETE_WALL indoor=wall, material=concrete closed wayway
DOOR_PRIVATE door=yes, access=private Mf node.svg
DOOR_PUBLIC door=yes, access=public Mf node.svg
ELEVATOR highway=elevator closed wayMf node.svg
ENTRANCE entrance=yes Mf node.svgclosed way
ENTRANCE_EXIT_ONLY entrance=exit Mf node.svgclosed way
ACCESS_PRIVATE access=private Mf node.svg
ACCESS_PUBLIC access=public Mf node.svg
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 Es wird nichts bezüglich der Indoor-Objekte hinzugefügt.
Name Füge dem Objekt einen Objekt-Namen hinzu (Beispiel: ROOM - Klassenraum). Das Objekt bekommt den Tag name=Klassenraum.
Reference Füge dem Objekt einen Referenz-Tag hinzu (Beispiel: Klassenraum - R025). Das Objekt bekommt den Tag ref=R025.
Repeat_on Beschreibe den Ebenenbereich, der durch dieses Objekt verbunden wird, d.h. auf welchen anderen Ebenen das selbe Objekt erneut auftritt

(Beispiel: Aufzug - 3-4, d.h. das Objekt ist auf der Ebene 2 gezeichnet und wiederholt sich auf der Ebene 3 und 4. Auch möglich ist: -3-6 oder -3--1.).

Das Objekt bekommt den Tag repeat_on=3-4. Siehe auch Simple_Indoor_Tagging.

Vorlagenknöpfe

Auf der rechten Seite des Plug-Ins findet man die Vorlagenleiste. Diese Knöpfe werden auf Grundlage der meistgenutzten Objekte generiert. Um sie zu benutzen muss man nur ein Objekt zeichnen, oder ein schon gezeichnetes auswählen und die Vorlage dann mit einem Klick auf den gewünschten Knopf übertragen.

Multipolygon Bar

Schnelles Erstellen von einfachen Multipolygon-Objekten via Button.

Achtung: 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 der Rolle: outer.
  2. Füge den inneren Bereich hinzu, d.h. ein Objekt mit der Rolle: inner.

(siehe auch Multipolygon)

Schritt-bei-Schritt Vorgehen:

Schritt Beschreibung
1 Betätige den outer-Button um die Zeichen-Funktion zu aktivieren.
2 Zeichne das gewünschte Objekt und bestätige dies durch Drücken der Leertaste. Das Objekt wurde mit der Rolle: outer hinzugefügt.
3 Betätige den inner -Button um die Zeichen-Funktion zu aktivieren.
4 Zeichne das Objekt und bestätige mit Leertaste. Nun wähle per Mausklick das Objekt mit der Rolle: outer aus. Ist dieses markiert, so drücke Enter um das innere Gebilde dem Äußeren hinzuzufügen.

Sollen mehrere Objekte mit der Rolle: inner zu einem Äußeren hinzugefügt werden, so überspringe Schritt 1 bis 2 und starte erneut bei Schritt 3. Um die gesamte Funktion zu deaktivieren wähle die Checkbox rechts neben dem inner -Button aus.

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.

Shortcuts

  • spacebar : Beendigung der Zeichenfunktion, welche über das Plugin genutzt werden kann (bspw. Insert Level, Hinzufügen eines Multipolygons)
  • enter: Bestätigung des ausgewählten Multipolygons mit Rolle: outer

(Für weitere Informationen siehe Multipolygon Bar oder Insert Level Button)

Einschränkungen

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

Entwicklung

Erstellt durch User:Erigrus.

Update erfolgte durch User:Rebsc.

Fehlermeldungen bitte an User:Rebsc.

Quellcode: SVN

Siehe auch

  • [1] - JOSM HelpBrowser, Kurzbeschreibung.