branch for distance and bearing calculations also using rhumb lines

git-svn-id: http://svn.mkgmap.org.uk/mkgmap/branches/rhumbline@3321 25d90789-57f7-4ee0-8453-03a3dfeeeb22
Calculate most distances and bearings using rhumb lines
and not great circle paths.
This matters only when distances are rather long.

Add some unit tests (to be continued)

git-svn-id: http://svn.mkgmap.org.uk/mkgmap/branches/rhumbline@3322 25d90789-57f7-4ee0-8453-03a3dfeeeb22
- correction:  don't convert to degrees twice in bearingToOnGreatCircle()
- remove debug code
- move common code to calculate shortestDistToLineSegment into Coord
- improve unit tests

git-svn-id: http://svn.mkgmap.org.uk/mkgmap/branches/rhumbline@3323 25d90789-57f7-4ee0-8453-03a3dfeeeb22
improve Coord.makeBetweenPoint() 
improve JavaDoc
simplify code (remove some else clauses and casts)

git-svn-id: http://svn.mkgmap.org.uk/mkgmap/branches/rhumbline@3324 25d90789-57f7-4ee0-8453-03a3dfeeeb22
improve speed: with bearings on rhumb lines we can 
easily calculate the reverse bearing
improve JavaDoc: add hints reg. rhumb line vs. great circle path


git-svn-id: http://svn.mkgmap.org.uk/mkgmap/branches/rhumbline@3325 25d90789-57f7-4ee0-8453-03a3dfeeeb22
handle the case that getAngle() return exactly 0.0, which is more
likely now

git-svn-id: http://svn.mkgmap.org.uk/mkgmap/branches/rhumbline@3327 25d90789-57f7-4ee0-8453-03a3dfeeeb22
merge from trunk r3326

git-svn-id: http://svn.mkgmap.org.uk/mkgmap/branches/rhumbline@3328 25d90789-57f7-4ee0-8453-03a3dfeeeb22
use also faster calculation for reverse direct heading


git-svn-id: http://svn.mkgmap.org.uk/mkgmap/branches/rhumbline@3329 25d90789-57f7-4ee0-8453-03a3dfeeeb22
fix error "Did not find CoordPOI node at ..." introduced with r3330

Todo: Prefer to move barrier nodes away from a junction instead of
merging with the junction node.

git-svn-id: http://svn.mkgmap.org.uk/mkgmap/trunk@3332 25d90789-57f7-4ee0-8453-03a3dfeeeb22
merge branch rhumbline to fix issues with very long lines which are 
great circle paths like the "Great Britain National Grid".
Since Garmin assumes that all line segments are rhumb lines, we 
have to make sure that we don't remove too many points from GC lines.
The advantage is that this reduces the number of needed complex bearing 
calculation a little bit.

git-svn-id: http://svn.mkgmap.org.uk/mkgmap/trunk@3333 25d90789-57f7-4ee0-8453-03a3dfeeeb22