logo separator

[mkgmap-dev] Commit r3968: merge the optimize-index branch. This fixes some problems with address search

From svn commit svn at mkgmap.org.uk on Fri Jun 2 06:07:20 BST 2017

Version mkgmap-r3968 was committed by gerd on Fri, 02 Jun 2017

merge the optimize-index branch. This fixes some problems with address search
and adds new options which give control the content of the index. Also,
option split-name-index is no longer temporary.

New options:
	This option handles the problem that some countries have road names which 
	often start or end with very similar words, e.g. in France the first word
	is very often 'Rue', often followed by a preposition like 'de la' or 'des'.
	This leads to rather long road names like 'Rue de la Concorde' where only
	the word 'Concorde' is really interesting. In the USA, you often have names
	like 'West Main Street' where only the word 'Main' is important.  
	Garmin software has some tricks to handle this problem. It allows to use
	special characters in the road labels which mark the beginning and end of 
	the important part. In combinarion with option split-name-index
	only the words in the important part are indexed.
	There are two different visiual effects of this option:
	- On the PC, when zooming out, the name 'Rue de la Concorde' is only
		rendered as 'Concorde'.
	- The index for road names only contains the important part of the name.
		You can search for road name Conc to find road names like 'Rue de la Concorde'.
		One problem: Search for 'Rue' will not list 'Rue de la Concorde' 
		or 'Rue du Moulin'. It may list 'Rueben Brookins Road' if that is in the map.
		Only MapSource shows a corresponding hint.
	Another effect is that the index is smaller. 
	The option specifies the path to a file which gives the details. See 
	comments in the sample roadNameConfig.txt for further details.
	This option allows to specify words which should not be in the road index.
	It was added before option road-name-config and is probably no longer needed.
	Example usage: --x-mdr7-excl="Road, Street, Straße, Weg"
	Use this option if your style adds strings to the labels of roads which you
	want to see in the map but which should not appear in the result list
	of a road name / address search. The list is used like this:
	For each road label mkgmap searches the last blank. If one is found, it checks
	if the word after it appears in the given list. If so, the word is removed
	and the search is repeated. The remaining string is used to create the index.
	Example: Assume your style adds surface attributes like 'pav.' or 'unp.' to a road
	label. You can use --mdr7-del="pav.,unp." to remove these apendixes from the index.
	By default, mkgmap indexes the following POI types with a non-empty label:
	- 0x00 .. 0x0f (cities, sub type 0, type <= 0xf)
	- 0x2axx..0x30xx (Food & Drink, Lodging, ...)
	- 0x28xx (no category ?)
	- 0x64xx .. 0x66xx (attractions)   
	This option allows to exclude POI types from the index. 
	The exclueded types are not indexed, but may still be searchable on a device 
	as some devices seem to ignore most of the index, e.g. an Oregon 600 with 
	firmware 5.00 only seems to use it for city search.
	If you device finds a POI name like 'Planet' when you search for 'Net'
	it doesn't use the index because the index created by mkgmap cannot help for 
	that search. 
	So, this option may help when you care about the size of the index or the
	memory that is needed to calculate it.    
	The option expects a comma separated list of types or type ranges. A range is 
	given with from-type-to-type, e.g. 0x6400-0x6405. First and last type are both 
	excluded.A range can span multiple types, e.g. 0x6400-0x661f.  
	Examples for usage: 
	- Assume your style adds a POI with type 0x2800 for each addr:housenumber.
		It is not useful to index those numbers, so you can use 
		to exclude this.
	- For the mentioned Oregon you may use --poi-excl-index=0x2a00-0x661f
		to reduce the index size.


More information about the mkgmap-dev mailing list