[mkgmap-dev] Commit r4625: remove dependency on deprecated class javax.xml.bind.DatatypeConverter in unit test

2021-04-01 Thread svn commit
Version mkgmap-r4625 was committed by gerd on Fri, 02 Apr 2021

remove dependency on deprecated class javax.xml.bind.DatatypeConverter in unit 
test

http://www.mkgmap.org.uk/websvn/revision.php?repname=mkgmap&rev=4625
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev


Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do geometry calculations like insideness or outsideness: Allows to remove a lot of complex code but might be slower in some cases.

2021-04-01 Thread Gerd Petermann
Hi Ticker,

I use JOSM to display the relation and I can see the numbers when debugging in 
Eclipse.

I'd prefer to have a stable and fast algo that works without looking at the 
roles, but we can always add rather simple code to handle a single outer ring 
without checking anything.

Gerd


Von: mkgmap-dev  im Auftrag von Ticker 
Berkin 
Gesendet: Donnerstag, 1. April 2021 17:26
An: Development list for mkgmap
Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do 
geometry calculations like insideness or outsideness: Allows to remove a lot of 
complex code but might be slower in some cases.

Hi Gerd

I can't get to see this relation - it times out.

If element roles can be trusted (either OSM or Polish with some
appropriate rule) and there is only 1 outer, then no need to test
anything - all the inners can be assigned to this and proceed onto the
cutting stage.

If multiple outers then I agree, each inner needs to be tested against
all the outers (but not against each other). isPointInShape will be a
lot quicker than isLineInShape or the existing trunk logic.

Ticker

On Thu, 2021-04-01 at 14:49 +, Gerd Petermann wrote:
> Hi Ticker,
>
> I still see no way how any of this will help reg. throughput. I think
> we need something like the BoundaryUtil.rasterArea() method as a
> Divide &Conquer approach, at least for monster relations like
> r9488835.
> The outer ring has +413.000 points and there are +15.000 rings. Even
> a single "point in shape" test requires lots of time for such a
> complex outer ring, and a single test will not find intersections.
>
> Have to think about the data structures but I am sure this will be
> much faster for most of the really complex MP.
>
> Gerd
>
>
>
> 
> Von: mkgmap-dev  im Auftrag
> von Ticker Berkin 
> Gesendet: Donnerstag, 1. April 2021 14:14
> An: Development list for mkgmap
> Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil
> to do geometry calculations like insideness or outsideness: Allows to
> remove a lot of complex code but might be slower in some cases.
>
> Hi Gerd
>
> 2 more thoughts:
>
> For elements from Polish input, set a distinct role. This can be
> spotted early and either the order rule or direction rule can be
> applied (they are closed, so the area/direction can be calculated
> immediately). This then allowed OSM data with a blank role to be
> handled as suggested earlier.
>
> The error reporting is not good - it can generate many lines in the
> log. An idea would be to have:
>   Element lists for each way-like problem.
>   Counts or flags for other problems.
>   etc
> and, for each problem detected, add all the ways in JoinedWays,
> increase appropriate count, set the flag etc. At the end, if any of
> these are populated, output the Relation and then, if full
> diagnostics,
> each populated problem type followed by lists of wayIds on same line
> etc.
>
> Ticker
>
>
> ___
> mkgmap-dev mailing list
> mkgmap-dev@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
> ___
> mkgmap-dev mailing list
> mkgmap-dev@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev


Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do geometry calculations like insideness or outsideness: Allows to remove a lot of complex code but might be slower in some cases.

2021-04-01 Thread Ticker Berkin
Hi Gerd

I can't get to see this relation - it times out.

If element roles can be trusted (either OSM or Polish with some
appropriate rule) and there is only 1 outer, then no need to test
anything - all the inners can be assigned to this and proceed onto the
cutting stage.

If multiple outers then I agree, each inner needs to be tested against
all the outers (but not against each other). isPointInShape will be a
lot quicker than isLineInShape or the existing trunk logic.

Ticker

On Thu, 2021-04-01 at 14:49 +, Gerd Petermann wrote:
> Hi Ticker,
> 
> I still see no way how any of this will help reg. throughput. I think
> we need something like the BoundaryUtil.rasterArea() method as a
> Divide &Conquer approach, at least for monster relations like
> r9488835.
> The outer ring has +413.000 points and there are +15.000 rings. Even
> a single "point in shape" test requires lots of time for such a
> complex outer ring, and a single test will not find intersections.
> 
> Have to think about the data structures but I am sure this will be
> much faster for most of the really complex MP.
> 
> Gerd
> 
> 
> 
> 
> Von: mkgmap-dev  im Auftrag
> von Ticker Berkin 
> Gesendet: Donnerstag, 1. April 2021 14:14
> An: Development list for mkgmap
> Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil
> to do geometry calculations like insideness or outsideness: Allows to
> remove a lot of complex code but might be slower in some cases.
> 
> Hi Gerd
> 
> 2 more thoughts:
> 
> For elements from Polish input, set a distinct role. This can be
> spotted early and either the order rule or direction rule can be
> applied (they are closed, so the area/direction can be calculated
> immediately). This then allowed OSM data with a blank role to be
> handled as suggested earlier.
> 
> The error reporting is not good - it can generate many lines in the
> log. An idea would be to have:
>   Element lists for each way-like problem.
>   Counts or flags for other problems.
>   etc
> and, for each problem detected, add all the ways in JoinedWays,
> increase appropriate count, set the flag etc. At the end, if any of
> these are populated, output the Relation and then, if full
> diagnostics,
> each populated problem type followed by lists of wayIds on same line
> etc.
> 
> Ticker
> 
> 
> ___
> mkgmap-dev mailing list
> mkgmap-dev@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
> ___
> mkgmap-dev mailing list
> mkgmap-dev@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev


Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do geometry calculations like insideness or outsideness: Allows to remove a lot of complex code but might be slower in some cases.

2021-04-01 Thread Gerd Petermann
Hi Ticker,

I still see no way how any of this will help reg. throughput. I think we need 
something like the BoundaryUtil.rasterArea() method as a Divide &Conquer 
approach, at least for monster relations like r9488835.
The outer ring has +413.000 points and there are +15.000 rings. Even a single 
"point in shape" test requires lots of time for such a complex outer ring, and 
a single test will not find intersections.

Have to think about the data structures but I am sure this will be much faster 
for most of the really complex MP.

Gerd




Von: mkgmap-dev  im Auftrag von Ticker 
Berkin 
Gesendet: Donnerstag, 1. April 2021 14:14
An: Development list for mkgmap
Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do 
geometry calculations like insideness or outsideness: Allows to remove a lot of 
complex code but might be slower in some cases.

Hi Gerd

2 more thoughts:

For elements from Polish input, set a distinct role. This can be
spotted early and either the order rule or direction rule can be
applied (they are closed, so the area/direction can be calculated
immediately). This then allowed OSM data with a blank role to be
handled as suggested earlier.

The error reporting is not good - it can generate many lines in the
log. An idea would be to have:
  Element lists for each way-like problem.
  Counts or flags for other problems.
  etc
and, for each problem detected, add all the ways in JoinedWays,
increase appropriate count, set the flag etc. At the end, if any of
these are populated, output the Relation and then, if full diagnostics,
each populated problem type followed by lists of wayIds on same line
etc.

Ticker


___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev


Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do geometry calculations like insideness or outsideness: Allows to remove a lot of complex code but might be slower in some cases.

2021-04-01 Thread Ticker Berkin
Hi Gerd

2 more thoughts:

For elements from Polish input, set a distinct role. This can be
spotted early and either the order rule or direction rule can be
applied (they are closed, so the area/direction can be calculated
immediately). This then allowed OSM data with a blank role to be
handled as suggested earlier.

The error reporting is not good - it can generate many lines in the
log. An idea would be to have:
  Element lists for each way-like problem.
  Counts or flags for other problems.
  etc
and, for each problem detected, add all the ways in JoinedWays,
increase appropriate count, set the flag etc. At the end, if any of
these are populated, output the Relation and then, if full diagnostics,
each populated problem type followed by lists of wayIds on same line
etc.

Ticker


___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev


Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do geometry calculations like insideness or outsideness: Allows to remove a lot of complex code but might be slower in some cases.

2021-04-01 Thread Ticker Berkin
I meant intersecting polygons

Ticker

On Thu, 2021-04-01 at 12:08 +0100, Ticker Berkin wrote:
> Hi Gerd
> 
> I agree that calcContains should be changed as you suggest.
> 
> My view otherwise is that the code should be as simple as possible
> for
> "correct" cases and not go to any trouble to detect overlapping
> polygons in this phase, but just allocate them as [outer {inner}]+
> and,
> if the cutting logic has problems during its processing, then it can
> flag errors.
> 
> Ticker 
> 
> On Thu, 2021-04-01 at 09:13 +, Gerd Petermann wrote:
> > Hi Ticker,
> > 
> > I think the big question is what the code is expected to do with
> > overlapping polygons. The code in trunk may or may not cut out an
> > inner ring that overlaps the outer. If I got that right it was
> > intended to ignore all rings which are overlapping, but I showed
> > that
> > this doesn't always work.
> > 
> > So, probably I should change the logic in the branch from
> > return (x & IsInUtil.IN) != 0;
> > to
> > return (x & IsInUtil.OUT) == 0;
> > 
> > Means, calcContains() would return false if at least one point is
> > not
> > contained.
> > 
> > Gerd
> > 
> > 
> > Von: mkgmap-dev  im Auftrag
> > von Gerd Petermann 
> > Gesendet: Donnerstag, 1. April 2021 10:16
> > An: Development list for mkgmap
> > Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil
> > to do geometry calculations like insideness or outsideness: Allows
> > to
> > remove a lot of complex code but might be slower in some cases.
> > 
> > Hi Ticker,
> > 
> > to be more prezise: Looking at the code in runIntersectionCheck()
> > it
> > may change the Bitset unfinishedPolys. Up to now I did not find a
> > case where this happens, so I am tempted to remove the code, but
> > I'd
> > feel better if I would understand why it was coded before removing
> > it.
> > 
> > Gerd
> > 
> > 
> > 
> > Von: mkgmap-dev  im Auftrag
> > von Gerd Petermann 
> > Gesendet: Donnerstag, 1. April 2021 09:29
> > An: Development list for mkgmap
> > Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil
> > to do geometry calculations like insideness or outsideness: Allows
> > to
> > remove a lot of complex code but might be slower in some cases.
> > 
> > Hi Ticker,
> > 
> > yes, that's what I plan to do. Right now I try to understand what
> > is
> > done with the data in collection intersectingPolygons.
> > 
> > Gerd
> > 
> > 
> > 
> > Von: mkgmap-dev  im Auftrag
> > von Ticker Berkin 
> > Gesendet: Donnerstag, 1. April 2021 09:25
> > An: mkgmap-dev@lists.mkgmap.org.uk; mkgmap-...@lists.mkgmap.org.uk
> > Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil
> > to do geometry calculations like insideness or outsideness: Allows
> > to
> > remove a lot of complex code but might be slower in some cases.
> > 
> > Hi Gerd
> > 
> > Wouldn't it be more efficient to choose a point within a each
> > polygon
> > and then use IsInUtils.isPointInShape and the relative areas to
> > test
> > if
> > this polygon is in others. The point could be the centre of the
> > polygon, after checking isPointInShape == IN on itself, and, if
> > not,
> > make do with the closing point, or some trial and error moving from
> > the
> > closing point.
> > 
> > This also bypasses ambiguities cause by overlapping polygons in
> > this
> > phase of the logic.
> > 
> > Ticker
> > 
> > On Wed, 2021-03-31 at 15:56 +0100, svn commit wrote:
> > > Version mkgmap-r4622 was committed by gerd on Wed, 31 Mar 2021
> > > BRANCH: faster-mp
> > > - use IsInUtil to do geometry calculations like insideness or
> > > outsideness: Allows to remove a lot of complex code but might be
> > > slower in some cases.
> > > - document the poor completeness of collection
> > > intersectingPolygons.
> > > Probably will removed as well.
> > > 
> > > 
> > > http://www.mkgmap.org.uk/websvn/revision.php?repname=mkgmap&rev=4
> > > 62
> > > 2
> > > ___
> > > mkgmap-svn mailing list
> > > To unsubscribe send an mail to 
> > > mkgmap-svn-le...@lists.mkgmap.org.uk
> > > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-svn
> > ___
> > mkgmap-dev mailing list
> > mkgmap-dev@lists.mkgmap.org.uk
> > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
> > ___
> > mkgmap-dev mailing list
> > mkgmap-dev@lists.mkgmap.org.uk
> > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
> > ___
> > mkgmap-dev mailing list
> > mkgmap-dev@lists.mkgmap.org.uk
> > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
> > ___
> > mkgmap-dev mailing list
> > mkgmap-dev@lists.mkgmap.org.uk
> > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
> ___
> mkgmap-dev mailing li

Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do geometry calculations like insideness or outsideness: Allows to remove a lot of complex code but might be slower in some cases.

2021-04-01 Thread Ticker Berkin
Hi Gerd

I agree that calcContains should be changed as you suggest.

My view otherwise is that the code should be as simple as possible for
"correct" cases and not go to any trouble to detect overlapping
polygons in this phase, but just allocate them as [outer {inner}]+ and,
if the cutting logic has problems during its processing, then it can
flag errors.

Ticker 

On Thu, 2021-04-01 at 09:13 +, Gerd Petermann wrote:
> Hi Ticker,
> 
> I think the big question is what the code is expected to do with
> overlapping polygons. The code in trunk may or may not cut out an
> inner ring that overlaps the outer. If I got that right it was
> intended to ignore all rings which are overlapping, but I showed that
> this doesn't always work.
> 
> So, probably I should change the logic in the branch from
> return (x & IsInUtil.IN) != 0;
> to
> return (x & IsInUtil.OUT) == 0;
> 
> Means, calcContains() would return false if at least one point is not
> contained.
> 
> Gerd
> 
> 
> Von: mkgmap-dev  im Auftrag
> von Gerd Petermann 
> Gesendet: Donnerstag, 1. April 2021 10:16
> An: Development list for mkgmap
> Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil
> to do geometry calculations like insideness or outsideness: Allows to
> remove a lot of complex code but might be slower in some cases.
> 
> Hi Ticker,
> 
> to be more prezise: Looking at the code in runIntersectionCheck() it
> may change the Bitset unfinishedPolys. Up to now I did not find a
> case where this happens, so I am tempted to remove the code, but I'd
> feel better if I would understand why it was coded before removing
> it.
> 
> Gerd
> 
> 
> 
> Von: mkgmap-dev  im Auftrag
> von Gerd Petermann 
> Gesendet: Donnerstag, 1. April 2021 09:29
> An: Development list for mkgmap
> Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil
> to do geometry calculations like insideness or outsideness: Allows to
> remove a lot of complex code but might be slower in some cases.
> 
> Hi Ticker,
> 
> yes, that's what I plan to do. Right now I try to understand what is
> done with the data in collection intersectingPolygons.
> 
> Gerd
> 
> 
> 
> Von: mkgmap-dev  im Auftrag
> von Ticker Berkin 
> Gesendet: Donnerstag, 1. April 2021 09:25
> An: mkgmap-dev@lists.mkgmap.org.uk; mkgmap-...@lists.mkgmap.org.uk
> Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil
> to do geometry calculations like insideness or outsideness: Allows to
> remove a lot of complex code but might be slower in some cases.
> 
> Hi Gerd
> 
> Wouldn't it be more efficient to choose a point within a each polygon
> and then use IsInUtils.isPointInShape and the relative areas to test
> if
> this polygon is in others. The point could be the centre of the
> polygon, after checking isPointInShape == IN on itself, and, if not,
> make do with the closing point, or some trial and error moving from
> the
> closing point.
> 
> This also bypasses ambiguities cause by overlapping polygons in this
> phase of the logic.
> 
> Ticker
> 
> On Wed, 2021-03-31 at 15:56 +0100, svn commit wrote:
> > Version mkgmap-r4622 was committed by gerd on Wed, 31 Mar 2021
> > BRANCH: faster-mp
> > - use IsInUtil to do geometry calculations like insideness or
> > outsideness: Allows to remove a lot of complex code but might be
> > slower in some cases.
> > - document the poor completeness of collection
> > intersectingPolygons.
> > Probably will removed as well.
> > 
> > 
> > http://www.mkgmap.org.uk/websvn/revision.php?repname=mkgmap&rev=462
> > 2
> > ___
> > mkgmap-svn mailing list
> > To unsubscribe send an mail to mkgmap-svn-le...@lists.mkgmap.org.uk
> > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-svn
> ___
> mkgmap-dev mailing list
> mkgmap-dev@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
> ___
> mkgmap-dev mailing list
> mkgmap-dev@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
> ___
> mkgmap-dev mailing list
> mkgmap-dev@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
> ___
> mkgmap-dev mailing list
> mkgmap-dev@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev


Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do geometry calculations like insideness or outsideness: Allows to remove a lot of complex code but might be slower in some cases.

2021-04-01 Thread Gerd Petermann
Hi Ticker,

I think the big question is what the code is expected to do with overlapping 
polygons. The code in trunk may or may not cut out an inner ring that overlaps 
the outer. If I got that right it was intended to ignore all rings which are 
overlapping, but I showed that this doesn't always work.

So, probably I should change the logic in the branch from
return (x & IsInUtil.IN) != 0;
to
return (x & IsInUtil.OUT) == 0;

Means, calcContains() would return false if at least one point is not contained.

Gerd


Von: mkgmap-dev  im Auftrag von Gerd 
Petermann 
Gesendet: Donnerstag, 1. April 2021 10:16
An: Development list for mkgmap
Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do 
geometry calculations like insideness or outsideness: Allows to remove a lot of 
complex code but might be slower in some cases.

Hi Ticker,

to be more prezise: Looking at the code in runIntersectionCheck() it may change 
the Bitset unfinishedPolys. Up to now I did not find a case where this happens, 
so I am tempted to remove the code, but I'd feel better if I would understand 
why it was coded before removing it.

Gerd



Von: mkgmap-dev  im Auftrag von Gerd 
Petermann 
Gesendet: Donnerstag, 1. April 2021 09:29
An: Development list for mkgmap
Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do 
geometry calculations like insideness or outsideness: Allows to remove a lot of 
complex code but might be slower in some cases.

Hi Ticker,

yes, that's what I plan to do. Right now I try to understand what is done with 
the data in collection intersectingPolygons.

Gerd



Von: mkgmap-dev  im Auftrag von Ticker 
Berkin 
Gesendet: Donnerstag, 1. April 2021 09:25
An: mkgmap-dev@lists.mkgmap.org.uk; mkgmap-...@lists.mkgmap.org.uk
Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do 
geometry calculations like insideness or outsideness: Allows to remove a lot of 
complex code but might be slower in some cases.

Hi Gerd

Wouldn't it be more efficient to choose a point within a each polygon
and then use IsInUtils.isPointInShape and the relative areas to test if
this polygon is in others. The point could be the centre of the
polygon, after checking isPointInShape == IN on itself, and, if not,
make do with the closing point, or some trial and error moving from the
closing point.

This also bypasses ambiguities cause by overlapping polygons in this
phase of the logic.

Ticker

On Wed, 2021-03-31 at 15:56 +0100, svn commit wrote:
> Version mkgmap-r4622 was committed by gerd on Wed, 31 Mar 2021
> BRANCH: faster-mp
> - use IsInUtil to do geometry calculations like insideness or
> outsideness: Allows to remove a lot of complex code but might be
> slower in some cases.
> - document the poor completeness of collection intersectingPolygons.
> Probably will removed as well.
>
>
> http://www.mkgmap.org.uk/websvn/revision.php?repname=mkgmap&rev=4622
> ___
> mkgmap-svn mailing list
> To unsubscribe send an mail to mkgmap-svn-le...@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-svn
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev


Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do geometry calculations like insideness or outsideness: Allows to remove a lot of complex code but might be slower in some cases.

2021-04-01 Thread Gerd Petermann
Hi Ticker,

to be more prezise: Looking at the code in runIntersectionCheck() it may change 
the Bitset unfinishedPolys. Up to now I did not find a case where this happens, 
so I am tempted to remove the code, but I'd feel better if I would understand 
why it was coded before removing it.

Gerd



Von: mkgmap-dev  im Auftrag von Gerd 
Petermann 
Gesendet: Donnerstag, 1. April 2021 09:29
An: Development list for mkgmap
Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do 
geometry calculations like insideness or outsideness: Allows to remove a lot of 
complex code but might be slower in some cases.

Hi Ticker,

yes, that's what I plan to do. Right now I try to understand what is done with 
the data in collection intersectingPolygons.

Gerd



Von: mkgmap-dev  im Auftrag von Ticker 
Berkin 
Gesendet: Donnerstag, 1. April 2021 09:25
An: mkgmap-dev@lists.mkgmap.org.uk; mkgmap-...@lists.mkgmap.org.uk
Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do 
geometry calculations like insideness or outsideness: Allows to remove a lot of 
complex code but might be slower in some cases.

Hi Gerd

Wouldn't it be more efficient to choose a point within a each polygon
and then use IsInUtils.isPointInShape and the relative areas to test if
this polygon is in others. The point could be the centre of the
polygon, after checking isPointInShape == IN on itself, and, if not,
make do with the closing point, or some trial and error moving from the
closing point.

This also bypasses ambiguities cause by overlapping polygons in this
phase of the logic.

Ticker

On Wed, 2021-03-31 at 15:56 +0100, svn commit wrote:
> Version mkgmap-r4622 was committed by gerd on Wed, 31 Mar 2021
> BRANCH: faster-mp
> - use IsInUtil to do geometry calculations like insideness or
> outsideness: Allows to remove a lot of complex code but might be
> slower in some cases.
> - document the poor completeness of collection intersectingPolygons.
> Probably will removed as well.
>
>
> http://www.mkgmap.org.uk/websvn/revision.php?repname=mkgmap&rev=4622
> ___
> mkgmap-svn mailing list
> To unsubscribe send an mail to mkgmap-svn-le...@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-svn
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev


Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do geometry calculations like insideness or outsideness: Allows to remove a lot of complex code but might be slower in some cases.

2021-04-01 Thread Gerd Petermann
Hi Ticker,

yes, that's what I plan to do. Right now I try to understand what is done with 
the data in collection intersectingPolygons.

Gerd



Von: mkgmap-dev  im Auftrag von Ticker 
Berkin 
Gesendet: Donnerstag, 1. April 2021 09:25
An: mkgmap-dev@lists.mkgmap.org.uk; mkgmap-...@lists.mkgmap.org.uk
Betreff: Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do 
geometry calculations like insideness or outsideness: Allows to remove a lot of 
complex code but might be slower in some cases.

Hi Gerd

Wouldn't it be more efficient to choose a point within a each polygon
and then use IsInUtils.isPointInShape and the relative areas to test if
this polygon is in others. The point could be the centre of the
polygon, after checking isPointInShape == IN on itself, and, if not,
make do with the closing point, or some trial and error moving from the
closing point.

This also bypasses ambiguities cause by overlapping polygons in this
phase of the logic.

Ticker

On Wed, 2021-03-31 at 15:56 +0100, svn commit wrote:
> Version mkgmap-r4622 was committed by gerd on Wed, 31 Mar 2021
> BRANCH: faster-mp
> - use IsInUtil to do geometry calculations like insideness or
> outsideness: Allows to remove a lot of complex code but might be
> slower in some cases.
> - document the poor completeness of collection intersectingPolygons.
> Probably will removed as well.
>
>
> http://www.mkgmap.org.uk/websvn/revision.php?repname=mkgmap&rev=4622
> ___
> mkgmap-svn mailing list
> To unsubscribe send an mail to mkgmap-svn-le...@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-svn
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev


Re: [mkgmap-dev] [mkgmap-svn] Commit r4622: - use IsInUtil to do geometry calculations like insideness or outsideness: Allows to remove a lot of complex code but might be slower in some cases.

2021-04-01 Thread Ticker Berkin
Hi Gerd

Wouldn't it be more efficient to choose a point within a each polygon
and then use IsInUtils.isPointInShape and the relative areas to test if
this polygon is in others. The point could be the centre of the
polygon, after checking isPointInShape == IN on itself, and, if not,
make do with the closing point, or some trial and error moving from the
closing point.

This also bypasses ambiguities cause by overlapping polygons in this
phase of the logic. 

Ticker

On Wed, 2021-03-31 at 15:56 +0100, svn commit wrote:
> Version mkgmap-r4622 was committed by gerd on Wed, 31 Mar 2021
> BRANCH: faster-mp
> - use IsInUtil to do geometry calculations like insideness or
> outsideness: Allows to remove a lot of complex code but might be
> slower in some cases. 
> - document the poor completeness of collection intersectingPolygons.
> Probably will removed as well.
> 
> 
> http://www.mkgmap.org.uk/websvn/revision.php?repname=mkgmap&rev=4622
> ___
> mkgmap-svn mailing list
> To unsubscribe send an mail to mkgmap-svn-le...@lists.mkgmap.org.uk
> http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-svn
___
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev