public void testIsIntersects() { assertTrue(! (new IntersectionMatrix("FF*FF****")).isIntersects()); assertTrue(! (new IntersectionMatrix("FF1FF2T*0")).isIntersects()); assertTrue((new IntersectionMatrix("*F*FF****")).isIntersects()); }
@Override public <P extends C2D> boolean intersects(final Geometry<P> geometry, final Geometry<P> other) { if (geometry.isEmpty() || other.isEmpty()) return Boolean.FALSE; checkCompatibleCRS(geometry, other); if (!envelopeIntersect(geometry, other)) return Boolean.FALSE; RelateOp relateOp = new RelateOp(JTS.to(geometry), JTS.to(other)); return relateOp.getIntersectionMatrix().isIntersects(); }
private void runRectanglePredicates(Geometry rect, Geometry testGeom) { boolean intersectsValue = rect.intersects(testGeom); boolean relateIntersectsValue = rect.relate(testGeom).isIntersects(); boolean intersectsOK = intersectsValue == relateIntersectsValue; boolean containsValue = rect.contains(testGeom); boolean relateContainsValue = rect.relate(testGeom).isContains(); boolean containsOK = containsValue == relateContainsValue; //System.out.println(testGeom); if (! intersectsOK || ! containsOK) { System.out.println(testGeom); } assertTrue(intersectsOK); assertTrue(containsOK); }
private void runRectanglePred(Geometry rect, Geometry testGeom) { boolean intersectsValue = rect.intersects(testGeom); boolean relateIntersectsValue = rect.relate(testGeom).isIntersects(); boolean intersectsOK = intersectsValue == relateIntersectsValue; boolean containsValue = rect.contains(testGeom); boolean relateContainsValue = rect.relate(testGeom).isContains(); boolean containsOK = containsValue == relateContainsValue; //System.out.println(testGeom); if (! intersectsOK || ! containsOK) { //System.out.println(testGeom); } assertTrue(intersectsOK); assertTrue(containsOK); }
return relate(g).isIntersects();
setPredicate(intersectsAB, im.isIntersects()); setPredicate(touchesAB, im.isTouches(dimA, dimB)); setPredicate(crossesAB, im.isCrosses(dimA, dimB)); setPredicate(intersectsBA, imBA.isIntersects()); setPredicate(touchesBA, imBA.isTouches(dimB, dimA)); setPredicate(crossesBA, imBA.isCrosses(dimB, dimA));
public void doPredicates(Geometry a, Geometry b) throws Exception { assertTrue( a.contains(b) == a.relate(b).isContains() ); assertTrue( a.crosses(b) == a.relate(b).isCrosses(a.getDimension(), b.getDimension()) ); assertTrue( a.disjoint(b) == a.relate(b).isDisjoint() ); assertTrue( a.equals(b) == a.relate(b).isEquals(a.getDimension(), b.getDimension()) ); assertTrue( a.intersects(b) == a.relate(b).isIntersects() ); assertTrue( a.overlaps(b) == a.relate(b).isOverlaps(a.getDimension(), b.getDimension()) ); assertTrue( a.touches(b) == a.relate(b).isTouches(a.getDimension(), b.getDimension()) ); assertTrue( a.within(b) == a.relate(b).isWithin() ); }