Angus, one day you'll hate me.
But I found a regression in 6.2.9 that didn't happen in 6.2.1.
I'm clipping a set of two-point open paths with a single, convex, almost circular polygon. I'm thus expecting that any returned open path has still two points.
However, all of the horizontal paths get extra vertices where they intersect with the vertical paths. Note that this happens for all of the horizontal paths except for the one having Y = 0.
SUBJECT OPEN PATHS:
LINESTRING((-90000000 -100000000,-90000000 100000000))
LINESTRING((-100000000 -90000000,100000000 -90000000))
LINESTRING((-100000000 -80000000,100000000 -80000000))
LINESTRING((-100000000 -70000000,100000000 -70000000))
LINESTRING((-100000000 -60000000,100000000 -60000000))
LINESTRING((-100000000 -50000000,100000000 -50000000))
LINESTRING((-100000000 -40000000,100000000 -40000000))
LINESTRING((-100000000 -30000000,100000000 -30000000))
LINESTRING((-100000000 -20000000,100000000 -20000000))
LINESTRING((-100000000 -10000000,100000000 -10000000))
LINESTRING((-100000000 0,100000000 0))
LINESTRING((-100000000 10000000,100000000 10000000))
LINESTRING((-100000000 20000000,100000000 20000000))
LINESTRING((-100000000 30000000,100000000 30000000))
LINESTRING((-100000000 40000000,100000000 40000000))
LINESTRING((-100000000 50000000,100000000 50000000))
LINESTRING((-100000000 60000000,100000000 60000000))
LINESTRING((-100000000 70000000,100000000 70000000))
LINESTRING((-100000000 80000000,100000000 80000000))
LINESTRING((-100000000 90000000,100000000 90000000))
CLIP POLYGON:
POLYGON((99452190 10452846,97814760 20791169,95105652 30901699,91354546 40673664,86602540 50000000,80901699 58778525,74314483 66913061,66913061 74314483,58778525 80901699,50000000 86602540,40673664 91354546,30901699 95105652,20791169 97814760,10452846 99452190,0 100000000,-10452846 99452190,-20791169 97814760,-30901699 95105652,-40673664 91354546,-50000000 86602540,-58778525 80901699,-66913061 74314483,-74314483 66913061,-80901699 58778525,-86602540 50000000,-91354546 40673664,-95105652 30901699,-97814760 20791169,-99452190 10452846,-100000000 0,-99452190 -10452846,-97814760 -20791169,-95105652 -30901699,-91354546 -40673664,-86602540 -50000000,-80901699 -58778525,-74314483 -66913061,-66913061 -74314483,-58778525 -80901699,-50000000 -86602540,-40673664 -91354546,-30901699 -95105652,-20791169 -97814760,-10452846 -99452190,0 -100000000,10452846 -99452190,20791169 -97814760,30901699 -95105652,40673664 -91354546,50000000 -86602540,58778525 -80901699,66913061 -74314483,74314483 -66913061,80901699 -58778525,86602540 -50000000,91354546 -40673664,95105652 -30901699,97814760 -20791169,99452190 -10452846,100000000 0))
I'm attaching a screenshot of the result, showing the extra vertices that are added to the horizontal paths.
Anonymous
:)
Looks like a bug in the C++ translation since it works fine in Delphi.
I'll look into it in the next day or two.
Last edit: Angus Johnson 2015-02-22