Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Render indoor=room #139

Open
mfbehrens99 opened this issue Aug 13, 2022 · 11 comments
Open

Render indoor=room #139

mfbehrens99 opened this issue Aug 13, 2022 · 11 comments
Assignees
Labels
feature:indoor style Issues regarding map style (changes in YAML style files)

Comments

@mfbehrens99
Copy link

Currently, indoor=room is not rendered at all when rendering indoor maps which makes some maps look interestingly empty.

@enzet
Copy link
Owner

enzet commented Aug 14, 2022

Hi @mfbehrens99!

Thank you for the request. Yes, I should have added support for this tag pretty much earlier.

@enzet enzet self-assigned this Aug 14, 2022
@enzet enzet added the style Issues regarding map style (changes in YAML style files) label Aug 14, 2022
@enzet
Copy link
Owner

enzet commented Aug 14, 2022

Good place for testing:

map-machine render -c 48.8674410,2.3642951 -z 19 --level -1

enzet added a commit that referenced this issue Aug 14, 2022
`indoor=room` tag was processed only if `area=yes` is set.  Probably
there are cases that require such behavior, but I'm not sure about it.
enzet added a commit that referenced this issue Aug 14, 2022
Map Machine did not create icons for areas if they have style.  Just
like previous issue, it seems like a temporary solution for a problem I
can't remember now.
@enzet
Copy link
Owner

enzet commented Aug 14, 2022

Hi, @mfbehrens99,

I made a quick fix for this issue. Please, take a look. Do you want any more indoor features to be supported?

map-machine render -c=-0.1762640,-78.4793002 -z 19 --level 1

Before:

139_before

After:

139_after

@mfbehrens99
Copy link
Author

mfbehrens99 commented Aug 15, 2022

Wow that looks good to me!

Question: Do names of rooms get displayed if you have a room with only a name (not shop=* which gets rendered anyway)

indoor=room
name=My room

Edit: Nvm, yes the do!

@enzet
Copy link
Owner

enzet commented Aug 17, 2022

Do names of rooms get displayed if you have a room with only a name (not shop=* which gets rendered anyway)

Yes, they should:

map-machine draw area "indoor=room,name=My room"

element

Please, let me know if something is broken.

@mfbehrens99
Copy link
Author

Looks pretty good!

I have some other things that would be good:
What about rendering for indoor=wall.
Shouldn't there be a wall around indoor=corridor?
grafik
Looks kind of interesting here
The rendering for indoor=column should probably also be a lot darker as it is right now
grafik

enzet added a commit that referenced this issue Aug 18, 2022
Use `indoor_wall_color` to make it darker and distinguishable from its
surroundings.
enzet added a commit that referenced this issue Aug 18, 2022
Try to make indoor colors darker and use dark border for corridors
(this may lead to some unwanted results, but we will see).
@enzet
Copy link
Owner

enzet commented Aug 18, 2022

I made columns darker and added border for corridors. As for corridors, I'm not sure it is a right solution. It is worth seeing whether it will work in other cases.

@enzet
Copy link
Owner

enzet commented Aug 18, 2022

map-machine render -c 4.5977848,-74.0750941 -z 20 --level 0

map

@mfbehrens99
Copy link
Author

I am sorry. People on OSM Wiki are saying that only indoor=room has implicit walls.
https://wiki.openstreetmap.org/wiki/Talk:Tag:indoor%3Dcorridor

However, then I would display the walls from building=*.

@enzet
Copy link
Owner

enzet commented Aug 19, 2022

I am sorry. People on OSM Wiki are saying that only indoor=room has implicit walls.

I think, the current solution is a tolerable tradeoff. It is impossible to accurately display walls using just polygon strokes, they should be computed separately.

However, then I would display the walls from building=*.

Even computing right shape of the building wall for the specified level is not trivial. So I think, I should do some research and find more general solution in the future.

@mikedld
Copy link

mikedld commented Apr 23, 2023

Getting warnings like

WARNING Cannot parse level description from -3-2.

This is documented in https://wiki.openstreetmap.org/wiki/Key:level#Multiple_values:

Use a minus sign to specify a range of positive numbers with no missing values. e.g. The elevator of a 32 storey highrise with two basement levels: level=-2;-1; 0-31 This shows connectivity to multiple levels for indoor navigation.

I realize that docs list negative levels as separate list items, so not sure if this should be supported. In my mind, -3-2 meant -3 through 2, and e.g. -3--2 is -3 through -2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature:indoor style Issues regarding map style (changes in YAML style files)
Projects
Status: In Progress
Development

No branches or pull requests

3 participants