Main Menu
Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - starous

#1
Thank you both for the answers!

I will test it, but it looks like the presented rendering difference is caused by transparent color of forest (and possibly some another areas), as wrote voldapet in the first answer - because: 1. rendering order should be OK in my theme (I changed and tried it many times); 2. the map is my own "homemade" map, ie. map is created really without any tag modification, layers are unchanged and are the same as in original OSM.
Possibility of transparency setting via RGB color code is new information for me, I was missing it - thanks again, it looks very helpful.

BR,
Ales
#2
Quote from: jusc on January 26, 2014, 16:31:37
Can you give an example, maybe with a screenshot?
There is:
Missing_tunnel.png displays map with my rendering theme - the same result (according to tunnel...) I have for any "external" rendering theme.
Tunnel_OK.png displays exactly the same map with Locus internal rendering theme "Turistika" (probably "Hiking" in English) - the same result I see on any internal rendering theme.
Tha map is made via Mapsforge MapWriter from OSM map of Austria (from geofabric...) merged with SRTM data - without any modification via TagTransform. Modified tag-mapping.xml is used (to include more POI tags in *.MAP.
The place, shown on the my screenshots, is part of S6 higway (and also part of railway) near Semmering.
You can get it (approximately) via this link: http://www.openstreetmap.org/edit#map=16/47.6276/15.8181
Both tunnels (highway & railway) have these tags: ... layer=-1, tunnel=yes ...

BR,
Ales


Missing_tunnel.jpg


Tunnel_OK.jpg
#3
Hello,

today I realized some stupid thing - tunnels are not rendered when some areas are over them - it looks to be problem of all "external" rendering themes.
I read some discussions on Mapsforge and Locus forums - it looks to be known "feature" of Mapsforge rendering.
I found some workarounds, more exactly only one: To use of TagTransform to change or delete "layer" before the MapWriter is used - i.e., to create Mapsforge map from modified OSM source.

BUT:
If I display the same map with Locus internal rendering theme, the tunnels are shown correctly!
(The map is my own, created without any modifications with TagTransform nor any other utility.)
So - how is it done? Are sources of internal Locus rendering themes available somewhere?
Or are there used some special internal Locus workarounds which are working only when internal rendering theme is used?

BR,
Ales
#4
Ahoj,
moc díky, hlavně za ten odkaz na DDMS/Eclipse, to co nejdříve vyzkouším.
#5
Moc díky za rychlou odpověď, i když mne zrovna moc nepotěšila...  :)
Co se dá dělat.
O tom XML souboru pro řízení exportu z OSM do Mapsforge map vím, ten mám taky patřičně upraven.
Je fakt, že když si v tom XML souboru pro generování mapy Mapsforge pluginem pohlídám, jaké tam jsou povolené klíče a jejich hodnoty, tak se to snad nějak udělat dá, ale bude to pak hrozná pakárna při každém rozšiřování...
Bylo by fajn, kdyby renderovací soubor uměl aspoň něco takového jako třeba
<rule e="node" k="barrier" v="~(bollard|gate)">
nebo se dala udělat nějaká konstrukce ve stylu "if...then...else...".
Ale nic takového zdá se zatím Mapsforge neumí.

A k tomu bodu 2. - ty texty společně se symbolem?
Je to opravdu nějaká vada Mapsforge renderovacího algoritmu nebo mi něco uniká?

A vlastně ještě jeden dotaz, vlastně dva:

3.
Dá se renderovací schéma nějak inteligentně ladit? Když v něm udělám chybu, tak Locus pouze v mapě zobrazí "Neznámý problém", ale nikde jsem nenašel nějaký log, kde bych se dozvěděl, co se mu ve stylu nelíbí.
Nic zajímavého není ani ve složce logs, a to ani když je nastaveno record_debug_logs=1.
Bez nějaké upřesňující chybové hlášky se chyba děsně blbě hledá, zejména pokud těch změn bylo víc najednou a na různých místech...
Zkoušel jsem na to vygooglit nějaký "validátor", ale nic jsem nenašel.

4.
Poměrně pracně jsem zjistil, že v caption nelze použít klíč "operator" (<caption k="operator"...), což by se hodilo např pro bankomaty, benzínky aj. Bez vážných následků (nefunkční mapy) lze použít pouze "name" a "ele".
Proč to?
Je to jenom tím, že tento klíč v aktuální mapě (zatím) nemám, nebo to je nějaké omezení mapsforge/Locusu?
#6
Zdravím,
vektorové mapy používám prakticky hned od začátku, co s nimi Locus přišel, podpora těchto map byla pro mne dokonce jedno z důležitých kritérií pro výběr GPS aplikace.
Mapy si čas od času vyrábím z OSM sám (ono to na začátku víceméně ani jinak nešlo) a v poslední době jsem si trochu přiohnul renderovací schéma osmarender_terrain2, které mi zatím nejvíc vyhovovalo. Ale narazil jsem na řádově dvě věci, se kterými si zatím nevím rady a nemůžu nic kloudného vygooglit:

1.
Když mám např. klíč barrier a chci zajistit, aby se nějaký konkrétní obecný symbol zobrazil i v případě, že klíč má nějakou jinou hodnotu, než zná renderovací schéma - lze to nějak jednoduše zajistit?
Napadl mne zatím jediný způsob, který je ale poněkud krkolomný a dost dobře není použitelný v případě, kdy je známých hodnot tagu hodně:
<rule e="node" k="barrier" v="*">
   <rule e="node" k="barrier" v="bollard" zoom-min="17">
      <circle r="1.5" fill="#707070" />
   </rule>
   <rule e="node" k="barrier" v="gate" zoom-min="17">
      <symbol src="file:/symbols/vehicle/gate.png"/>
   </rule>
   <rule e="node" k="barrier" v="~bollard" zoom-min="17">
      <rule e="node" k="barrier" v="~gate">
         <symbol src="file:/symbols/vehicle-restriction/barrier.png"/>
      </rule>
   </rule>
</rule>

Pokud vím, tak to určitě nejde takto:

<rule e="node" k="barrier" v="*">
   <rule e="node" k="barrier" v="bollard" zoom-min="17">
      <circle r="1.5" fill="#707070" />
   </rule>
   <rule e="node" k="barrier" v="gate" zoom-min="17">
      <symbol src="file:/symbols/vehicle/gate.png"/>
   </rule>
   <rule e="node" k="barrier" v="*" zoom-min="17">
      <symbol src="file:/symbols/vehicle-restriction/barrier.png"/>
   </rule>
</rule>
protože v takovém případě by se symbol barrier.png zobrazil vždycky.

A nejde to dost jistě ani takto:
<rule e="node" k="barrier" v="*">
   <rule e="node" k="barrier" v="bollard" zoom-min="17">
      <circle r="1.5" fill="#707070" />
   </rule>
   <rule e="node" k="barrier" v="gate" zoom-min="17">
      <symbol src="file:/symbols/vehicle/gate.png"/>
   </rule>
   <rule e="node" k="barrier" v="~" zoom-min="17">
      <symbol src="file:/symbols/vehicle-restriction/barrier.png"/>
   </rule>
</rule>
protože to by se symbol barrier.png zobrazil pouze v případě, když by klíč barrier byl prázdný nebo neexistoval, což vzheldem k úvodní podmínce nikdy nenastane...

Nelze to udělat nějak lépe a radostněji? Když bych to podle toho prvního vzoru udělal pro všechny existující typy bariér, vycházelo by pro zobrazení toho posledního obecného symbolu dost šílené zanoření, nemluvě třeba o tom, jak by to vycházelo pro počty hodnot klíčů shop, sport apod.

2.
Ještě horší je problém se symboly a texty. Např. když chci pro různé typy obchodů zobrazit různé symboly a zároveň ještě někde kolem symbolu vypsat jeho "name", tak to funguje nějak hodně divně - většinou se zobrazí jenom symbol. V případě, když použiji posun pomocí "dy" (např. dy="10"), tak se text někdy zobrazí, ale obvykle v nějakém jiném zoomu, než chci. Když nepoužiju "dy", tak se to většinou nezobrazí vůbec v žádném zoomu.
Paradoxně pak má lepší vypovídací hodnotu mapa s renderovacím tématem, ve kterém se symboly obchodů vůbec nezkoumají a nezobrazují, a jsou zobrazeny jenom jejich názvy...
Máte s tím někdo nějaké zkušenosti? Je to projev oné chyby vykreslování textů, o které se zmiňují poslední komentáře, nebo mi něco uniká?