hholzgra / maposmatic

Mirror of maposmatic repository at savannah.nongnu.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Missing street name

giammy opened this issue · comments

Hi,

I'd like to print a city booklet (A4) with all the streets names.
I see that some street names are present in the textual list of names, with the correct position,
but the street name is not printed in the map.
The street is very short, so I imagine that the reason is that if there is not enough space,
the name is not printed, but I need a map where all the street names are present.
The missing name is a bug or a feature?
Is it possible to force the printing of ALL the streets names in the map?

Example:
City: Casalserugo, Italy, Options multipage, A4, with default MapOSmatic style.
The map 114678_2020-05-13_16-56_casalserugo.pdf generated Mercoledì 13 Maggio 2020 16:56
Missing name: don Lorenzo Milani (Via) - 13, C3 (present in the list of streets, but not in the map)
Other streets name as well have this behaviour.

Thanks for your work - it is very useful and appreciated!
Giammy

The index is created directly from the database, the index generator does not even know about the length of a street.

The actual map on the other hand is created using the original Mapnik stylesheet for the base layer selected, and the Mapnik renderer has internal rules for what to render or hide in case of collisions, and when text is too long to fit on the line or polygon object it should be rendered for.

In "real" maps this is often solved by just giving short streets a number, and placing a short index inside the map nearby, in the form:

  1. Some street name
  2. Other street name

This requires some knowledge in where to place such index text in the map without hiding too much other information, something that the Mapnik renderer is not clever enough to do (and I don't know of any other automatic map generating tool that could do that without human interaction either ... but then again I'm not really an expert in that field)

So long story short: the renderer and the index generator are independent components that just operate on the same database, and the indexer does not know anything about the renderers decision what street names to hide due to size or placement constraints.