[mkgmap-dev] builtin-tag-list
From WanMil wmgcnfg at web.de on Wed Apr 24 19:16:31 BST 2013
Yes. The original idea was to move the routing code from the StyledConverter to the RoutingHook but I never realized that (don't know if it's possible...). Some of the tags from the builtin-tag-list are also used on other places (e.g. type is used to load relations). Please keep that in mind. WanMil > Hi WanMil, > > ok, so I think I should remove the builtin-tag-list and implement a > getUsedTags() method in StyledConverter. This would then also allow to > remove the RoutingHook. > > OK? > > Gerd > > > WanMil wrote >>> Hi programmers, >> >> Hi Gerd, >> >>> >>> while looking at the name-tag-list option I wondered again why we have >>> so many different ways to maintain the "usedTags" HashMap which is >>> finally >>> used to filter OSM data in class OsmHandler. >>> >>> 1)We have a list coded in /resources/styles/builtin-tag-list. The tags >>> listed here >>> can be found in the java sources, but not all tags used in the sources >>> are >>> listed. >> >> This is historical. This was the initial list where all tags used in the >> sources must be configured. This has the impact that the tag list is >> static and does not reflect which options are used. So it's sometimes >> larger than required which has a performance impact. >> >>> >>> 2) Some sources use hard coded tag names and they have a method >>> getUsedTags() >>> to tell this fact to other routines. >> >> These are the OsmReadingHook classes. They use a getUsedTags() method. >> These classes are called after reading the OSM file and before the style >> is applied. >> >>> >>> 3) Some hard coded tags are used in StyledConverter but they are added to >>> the map >>> in the RoutingHook, e.g. "access", "highway". >> >> This is a workaround to remove the tags from the builtin-tag-list >> without modifying too much code. So if routing is enabled the routing >> hook adds the tags required for routing. But these tags are not >> evaluated by the RoutingHook itself but by the StyledConverter which has >> no getUsedTags() method. >> >> Things are more complicate: >> The LinkDestinationHook evaluates some tags like "destination" but it >> does not return any of them in the getUsedTags() method. The reason is >> that it must evaluate the tags only if they are used in the style file. >> If destination is not referenced by the style file it makes no sense to >> evaluate destination in the LinkDestinationHook so there is no need to >> read the tag from the OSM file. >> >>> >>> I'd prefer to have a common way to keep the map up to date, and I think >>> that >>> the best >>> solution is to add the tag names in the source where they are used (and >>> if >>> they are used). >> >> At the moment I know about three ways: >> 1. builtin-tag-list >> 2. the getUsedTags() method of the OsmReadingHooks classes >> 3. referencing in the style file >> >> I think the most you can achieve is to get rid of the builtin-tag-list. >> In the past I have removed lots of tags here by implementing an >> OsmReadingHook. Maybe some code can be moved from the StyledConverter to >> a better place which also implements the getUsedTags() method. >> >>> >>> What was the idea behind the builtin-tag-list ? >> >> See above. This was the first way to define tags that are used within >> the code. >> >>> >>> Gerd >>> >> >> WanMil >> >> _______________________________________________ >> mkgmap-dev mailing list > >> mkgmap-dev at .org > >> http://lists.mkgmap.org.uk/mailman/listinfo/mkgmap-dev > > > > > > -- > View this message in context: http://gis.19327.n5.nabble.com/builtin-tag-list-tp5758284p5758387.html > Sent from the Mkgmap Development mailing list archive at Nabble.com. > _______________________________________________ > mkgmap-dev mailing list > mkgmap-dev at lists.mkgmap.org.uk > http://lists.mkgmap.org.uk/mailman/listinfo/mkgmap-dev >
- Previous message: [mkgmap-dev] builtin-tag-list
- Next message: [mkgmap-dev] non routable way
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the mkgmap-dev mailing list