Open Asncodes-80 opened 1 year ago
Hello! Thanks for reaching out. Any of those debug logs that say argument: <name>=...
can be overridden from the command line using --name=value
or an env var by using PLANETILER_NAME=value
, so if for example you wanted arabic, persion, and english you could run planetiler with --languages=fa,ar,en
.
If you think those should be added to the default set of languages planetiler produces, I suggest making the change in openmaptiles/openmaptiles.yaml first, then planetiler-openmaptiles will get updated from that automatically and it will change the defaults. It looks like the defaults already contain ar
but are missing fa
?
Doesn't effected.
I downloaded Iran's map with --languages=fa,ar,en
flag. But, I haven't cities, streets name and others!!
It is only in Persian and Arabic Plane.
docker run -v "$(pwd)/data":/data openmaptiles/planetiler-openmaptiles:latest --force --download --area=iran --languages=fa,ar,en
tileserver-gl-light
tileserver-gl-light --mbtiles output.mbtiles -V
@Asncodes-80
In tileserver, what do you see if you click the inspect button
then hover over the mouse over the streets and city points, like
@Asncodes-80
In tileserver, what do you see if you click the inspect button
then hover over the mouse over the streets and city points, like
Thanks to reply. Not true bro. It would be look like Monaco or Canada vec Map. Without clicking over inspect button to see cities and streets name. Tell me, when you clone Monaco or every where except Iran and Iraq or every Arabic and Persian locale, you need to push inspect button? Actually no, by deafult there are all name of cities ans street over your map.
Pls check that and help each other to solve this problem.
It's best of Planetiler.
Inspect isn't what you should usually use. I was just asking if the languages you added show when you view it that way to see if they got included.
If they did show under inspect, you may be able to adjust your style for streets and cities to use those languages
So is the issue that you do see place names and other features updated correctly, but not road names? That might be due to a limitation of openmaptiles that it doesn't includes all the name translations on transportation_name layer. I'm not quite sure why, might be to save on storage size?
We could try getting openmaptiles to fix so it shows up on maptiler and other data providers, or if not then add an extra option to planetiler to emit all road name translations, or maybe just include certain extra ones.
@msbarry
In this map, all things is good. How can i have this result in my tileserver gl with my Iran, Iraq and other Arabic Locale map in that?
Thanks from @acalcutt for this reference.
This map had basic style of tileserver-gl-light
. Actually tileserver
used this default config and style. But why i haven't any cities and streets name?
Also check the fonts. Font face of wifidb map is same as Noto Sans Regular
pbf.
@msbarry
What is your solution for this situation? How can we fix that?
@acalcutt
This is your server?
How you configured your tileserver-gl-light
that can render and demonstrate all cities, roads and streets name?
Can you tell me more about your perform in your tileserver
?
Yes, wifidb is my site and tileserver-gl setup. most of my styles and setup is here https://github.com/acalcutt/wifidb-tileserver-gl/tree/master/tileserver-gl
On my server I changed my style so that it always shows the english names for places, like https://github.com/acalcutt/wifidb-tileserver-gl/blob/c7b240468e8d20b2e2a829786e8bb32002ad2796/tileserver-gl/styles/WDB_OSM/style.json#L5128
On the roads, I set the text field to be {name:latin} if it exists, or {name:nonlatin} if it does not, like https://github.com/acalcutt/wifidb-tileserver-gl/blob/c7b240468e8d20b2e2a829786e8bb32002ad2796/tileserver-gl/styles/WDB_OSM/style.json#L4608
In my screenshot of inspect above, you can see the road has name:latin and name:nonlatin, so my with my style it should show "Tehran Second Bypass", since in my style name:latin takes priority.
I actually looked at my current style and I changed that text field to this now https://github.com/acalcutt/wifidb-tileserver-gl/blob/master/tileserver-gl/styles/WDB_OSM/style.json#L4619
"text-field": ["case",["has","name_en"],["get","name_en"],["case",["has","name:en"],["get","name:en"],["case",["has","name:latin"],["get","name:latin"],["get","name:nonlatin"]]]],
For the Noto Sans fonts, I am using the fonts in noto-sans.zip from https://github.com/openmaptiles/fonts/releases . Have you set up a config file and set up your fonts directory?
On the planetiler side, I am using this to generate my full planet mbtiles https://github.com/acalcutt/wdb-map-gen
@acalcutt
Your comments helped my a lot. Now I have only latin form of cities, roads and streets name. Base on your comment at first I added "{name: latin} {name: nonelatin}"
to all text-field keys. After that I added
"text-field": ["case",["has","name_en"],["get","name_en"],["case",["has","name:en"],["get","name:en"],["case",["has","name:latin"],["get","name:latin"],["get","name:nonlatin"]]]],
In both way I had this result. was so far good:
Also I changed Noto Sans Regular
as default font of tileserver
to Open Sans Regular
. But nonlatin ~ Arabic/Persian scripts doesn't show at this level.
@acalcutt
Here is my styles.json config modified with both lotin and nonlotin form of text-fields
I added only nonlatin value, it doesn't show any nonlatin (Persian/Arabic) name. How to fix this bro?
Hi to PlaneTiler team! I got Iran, Iraq tiles with PlaneTiler docker. Like
README
guideline. But name of locations like streets, cities and other doesn't show over the vector map. Also I got Monaco and Canada map without any problem, all cities name and streets name was okey. Also I changed font of map that located incd "(npm root -g)/tileserver-gl-light/node_modules/tileserver-gl-styles/fonts/"
by this repository, but doesn't had effect.This is list of supported language in planetiler. But doesn't support Arabic and Persian Language. I need this scripts!
PlaneTiler is the best, but are there any hacky way to fix that in my use case?