[Geom4j-developer] SF.net SVN: geom4j:[30] trunk/src/net/sourceforge/geom4j/ SegmentIntersectionAlg
Status: Pre-Alpha
Brought to you by:
skhenkin
From: <skh...@us...> - 2010-01-16 08:24:42
|
Revision: 30 http://geom4j.svn.sourceforge.net/geom4j/?rev=30&view=rev Author: skhenkin Date: 2010-01-16 08:24:36 +0000 (Sat, 16 Jan 2010) Log Message: ----------- Precision bug fixed in Bentley-Ottmann algorithm implementation Modified Paths: -------------- trunk/src/net/sourceforge/geom4j/SegmentIntersectionAlgorithm.java Modified: trunk/src/net/sourceforge/geom4j/SegmentIntersectionAlgorithm.java =================================================================== --- trunk/src/net/sourceforge/geom4j/SegmentIntersectionAlgorithm.java 2010-01-15 22:21:21 UTC (rev 29) +++ trunk/src/net/sourceforge/geom4j/SegmentIntersectionAlgorithm.java 2010-01-16 08:24:36 UTC (rev 30) @@ -22,6 +22,7 @@ import java.util.Set; import net.sourceforge.geom4j.util.BinaryTreeBasedSmartQueue; +import net.sourceforge.geom4j.util.ListBasedSmartQueue; import net.sourceforge.geom4j.util.SmartQueue; /** @@ -149,8 +150,8 @@ Segment seg2, Point curPoint, boolean isLeftPoint) { if (seg1 != null && seg2 != null) { for (Point p : seg1.intersects(seg2).getPoints()) { - if (p.getX() >= curPoint.getX() && isLeftPoint - || p.getX() > curPoint.getX() && !isLeftPoint) { + if (Config.greaterThanOrEqual(p.getX(), curPoint.getX()) && isLeftPoint + || Config.greaterThan(p.getX(), curPoint.getX()) && !isLeftPoint) { IntersectionEvent templateEvent = new IntersectionEvent(p, seg1, seg2, sweepLineComparator); Event existingEvent = eventQueue.find(templateEvent); if (existingEvent != null && existingEvent instanceof IntersectionEvent) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |