JOSM/Plugins/indoorhelper

From OpenStreetMap Wiki
< JOSM‎ | Plugins
Jump to: navigation, search
Available languages — JOSM/Plugins/indoorhelper
· Afrikaans · Alemannisch · aragonés · asturianu · azərbaycanca · Bahasa Indonesia · Bahasa Melayu · Bân-lâm-gú · Basa Jawa · Basa Sunda · Baso Minangkabau · bosanski · brezhoneg · català · čeština · corsu · 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 bokmål · norsk nynorsk · occitan · Oromoo · oʻzbekcha/ўзбекча · Plattdüütsch · polski · português · română · shqip · slovenčina · slovenščina · Soomaaliga · suomi · svenska · Tagalog · Tiếng Việt · Türkçe · Vahcuengh · vèneto · Wolof · Yorùbá · Zazaki · српски / srpski · беларуская · български · қазақша · македонски · монгол · русский · тоҷикӣ · українська · Ελληνικά · Հայերեն · ქართული · नेपाली · मराठी · हिन्दी · भोजपुरी · অসমীয়া · বাংলা · ਪੰਜਾਬੀ · ગુજરાતી · ଓଡ଼ିଆ · தமிழ் · తెలుగు · ಕನ್ನಡ · മലയാളം · සිංහල · བོད་ཡིག · ไทย · မြန်မာဘာသာ · ລາວ · ភាសាខ្មែរ · ⵜⴰⵎⴰⵣⵉⵖⵜ ⵜⴰⵏⴰⵡⴰⵢⵜ‎ · አማርኛ · 한국어 · 日本語 · 中文(简体)‎ · 中文(繁體)‎ · 吴语 · 粵語 · ייִדיש · עברית · اردو · العربية · پښتو · سنڌي · فارسی · ދިވެހިބަސް

Indoorhelper icon.png indoorhelper

a plug-in to create, validate and view indoor maps correctly

Screenshot editor.png

IndoorHelper is a JOSM plug-in to create, validate and view indoor maps correctly.


Usage

Normal Usage

After the installation the plug-in appears in the sidebar of JOSM. To fit the indoor maps into existing OpenStreetMap data or GPS-tracks it is recommended to use the plug-in Piclayer. When the fitting process of the indoor maps is completed, the user can start to map the indoor data. To be able to use the AutoFilter function draw the first object with using the Insert level button (fully description below). Using the Insert level button makes sure the AutoFilter will notice a new level so it is possible to use the level button to select the current working level.



The recommended order of editing is:

  1. rooms, corridors and individual areas
  2. stairways and elevators
  3. POIs (door/entrance)
  4. walls
  5. windows

The plug-in tagging scheme is based on Simple_Indoor_Tagging. To optimize the mapping the plug-in will tag objects (via apply button) automatically with using the Simple_Indoor_Tagging scheme. If the apply button got pushed the currently selected object will be tagged. If the selected object is member of a multipolygon the tags will be related directly to the whole multipolygon (see also multipolygon).


Level Bar

Level Bar - easy tagging of levelname and automatically tagging of level value.
Field/Button Action Description
Level name To add a name label to the level Insert the optional level name with using the text field. Afterwards confirm with the apply button. The object will be tagged with level_name=*.
Working level A dynamic field which shows you the current working level This field always shows you the current working level you selected with using the AutoFilter buttons. This function is not working without the AutoFilter function. To makes sure the AutoFilter buttons appear on screen (left upper corner) use the Insert level button. The following status can be shown in the field:
  • number : the current working level (just objects with this level tag or repeat_on tag (see below) are shown on screen).
  • NONE : no level is selected or the AutoFilter is not active now.
checkbox To deactivate the automatic level tagging If the checkbox is not ticked the current working level (shown on the left, Working level) will be automatically tagged to the object after pushing the apply button. To deactivate this function tick the checkbox. No more level tags will be related. The object will (not) be tagged with level=*.

About repeat_on=*:

  • tells if an object is connecting one or more level via stairways, elevators etc. (see also Simple_Indoor_Tagging)
  • to simplify the mapping the plug-in makes it possible to map an object like stairways, elevators etc. ones (which are actually needs to be mapped on each level again) and tag it via the repeat_on field. Now the selected working level will also consider objects with a repeat_on=* -tag what means objects which are tagged with another level=* -tag but also with a repeat_on=* -tag including the current working level will also be shown on screen.

Insert Level Button

The Insert level button needs to be used if a new level wants to be added.

How to add:

Step Description
1 Push the Insert level button to open the level selector window.
2 Insert the new level number (example: 1, -4, 0).
3 Push the OK button to close the window. Automatic switch to drawing action follows.
4 Draw the object and press the spacebar to finish. Now the object will be automatically tagged with the new level tag. Also the AutoFilter buttons should appear on screen (left upper corner). From now on the normal mapping actions (left sidebar) can be used.

Tagging Bar

Tagging Bar - fast tagging with given object selection and individual name, ref and repeat_on textfield.

This panel makes it easy to tag objects with popular tags on a fast way.

Field/Dropdown Menu Description
Object The dropdown menu shows you some optional tags which are often used during indoor mapping. If no object tagging is requested select NONE.

The following will be tagged:

Tag Tagging background Usable with
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.svg
ENTRANCE_EXIT_ONLY entrance=exit Mf node.svg
ACCESS_PRIVATE access=private Mf node.svg
ACCESS_PUBLIC access=public Mf node.svg
ACCESS_PRIVATE access=private 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
ZONE area=zone closed wayMf node.svg
NONE no tagging of indoor objects
Name Tags the object with a name tag (example: ROOM - classroom). The object will be tagged like name=classroom.
Reference Tags the object with a reference tag (example: classroom - R025). The object will be tagged like ref=R025.
Repeat_on Tags the level area the object contains (example: elevator - 3-4, what means the elevator is starting at level 2 and is repeated till level 4. Also possible -3-6 or -3--1).

The object will be tagged like repeat_on=3-4. Also see Simple_Indoor_Tagging.

Preset Buttons

On the right side of the panel you can find the preset button section. These buttons are created depending on what objects you are using the most. To use these presets, just draw an object and click on the preset you would like to apply.

Multipolygon Bar

Multipolygon Bar - to create simply multipolygons on fast way.

Caution: this function is only to add simple multipolygon objects.

The recommended order of editing is:

  1. add outline member with outer button
  2. add inner member with inner button.

How to add:

Step Description
1 Push the outer button to select the drawing action.
2 Draw the object and press the spacebar to add the multipolygon with role: outer.
3 Push the inner button to select the drawing action.
4 Draw the object and press the spacebar to finish the drawing. After that select the "outer"-object you want to add the "inner"-object to. If selected push enter to add the object with role: inner.

If you want to add more than one "inner"-object skip step 1,2 and restart at step 3. To deactivate the multipolygon function of the plug-in just tick the checkbox next to the inner button.

Data Scheme

The data scheme which underlies the plug-in is based on the Simple_Indoor_Tagging approach but has some differences or improvements. It is completely based on tags and is therefore easy to understand. To hold it simple the most important objects are directly tagged with indoor=*. To make sure the tagging is always on Simple_Indoor_Tagging standards specific objects will be automatically tagged with needed tag-combinations (example: TOILET_FEMALE : indoor=room, amenity=toilets, female=yes). For more information see Tagging Bar.

Data Validation

MapCSS Rendertheme

Rendering of the MapCSS rendertheme in low, mid and high zoom levels

The first way of data validation is the MapCSS rendertheme which comes with the plug-in. It is installed during the first start. Thus the user does not have to care about it and has a instant graphical validation of the mapped data.

The rendertheme uses the zoomlevel filtering of MapCSS to show the data in different ways depending on the zoom level of JOSM. For exmaple in a high zoom level every detail is shown and in a low zoom levels rooms and POIs are hidden.

JOSM Validator

The other method which can be used to validate the data is the JOSM validator file which is also installed with the plug-in.

The validator alarms the user if following mapping errors occur:

  • way or node without the tag level=*
  • properties which should be only assigned to ways are assigned to nodes
  • properties which should be only assigned to nodes are assigned to ways

The validation check is done everytime when the user clicks the "apply"-button or a preset button.

Shortcuts

  • spacebar : finish drawing of objects created via the plugin
  • enter: Confirm the selected multipolygon to edit an inner-role member

(For further information see Multipolygon Bar, Insert Level Button)

Limitations

  • It's just a graphical representation
    • therefore not suited for routing
  • It is no usable standard (yet)

Development

Created by User:Erigrus.

Plug-in updated by User:Rebsc.

Please submit your bug reports to User:Rebsc.

Source Code: SVN

See also

  • [1] - JOSM HelpBrowser, short user instruction.