Hi WanMil,
> Date: Sun, 15 Jan 2012 09:45:33 +0100
> From: wmgcnfg@web.de
> To: mkgmap-dev@lists.mkgmap.org.uk
> Subject: Re: [mkgmap-dev] [Patch v3] LocationHook with new Quadtree
>
> > Hi WanMil,
> >
> > If I see this right, we would see only a few changes if we split the ways on
> > boundaries first. If you have an idea how to do it, please let me know (if
> > you don't want to do it).
>
> There are some detail problems left:
> 1. Up to now there is no clipper that splits lines at polygon borders.
> (or I haven't found it in the mkgmap source code?)
> 2. In case we have a closed way it is not clear to the LocationHook if
> it is a line or a shape. This is decided by the styles. A workaround
> would be to cut this way twice - one as line and second as shape. The
> line variant would be applied to the line style whereas the shape
> variant is only applied to the polygons style. This is not 100% correct
> (the polygon style would not apply if the line style has a hit) but it
> will solve most cases.
> ?? By the way: I never checked if it makes sense to add location
> information to shapes. Are they used gy garmin?
>
> 3. I expect that most streets do not end exactly at a city border but
> lots will end some meters after it. Cutting them will increase the
> number of objects much and we will have a lot of short streets. So maybe
> an overlapping threshold is required for the decision not to split a line.
Okay, since I am not yet familiar with the part of the program that uses the location info,
I'll leave that for now.
>
> > The remaining differences should be errors caused by the "insideness"
> > problem of contains().
>
> Problems with the bounding box of the quadtree should be solved by
> adding +1 to maxlat/maxlong of the java area object.
Hmm, does that mean you want to shift the whole area or only selected points? Which ones?
I thought about using the Area.transform() method to blow up the area a little bit, but did not yet find
something useful. I think searching the shifted point is easy to implement and this double (or multiple)
search will not happen very often.
Ciao,
Gerd