/** * Test if this geometry envelope intersects with the other geometry * envelope. * * @param r the other geometry * @return true if the two overlap */ public boolean intersectsBoundingBox(ValueGeometry r) { // the Geometry object caches the envelope return getGeometryNoCopy().getEnvelopeInternal().intersects( r.getGeometryNoCopy().getEnvelopeInternal()); }
public boolean intersects(Envelope bounds) { // TODO: optimize this one return new Envelope(minx, maxx, miny, maxy).intersects(bounds); } }
public boolean evaluate(Object feature) { if (feature == null) return false; Geometry other = (Geometry) property.evaluate(feature); if (other == null) return false; return other.getEnvelopeInternal().intersects(envelope); }
/** * Check if this bounding box intersects the provided bounds. * * @since 2.4 */ public boolean intersects(final BoundingBox bbox) { ensureCompatibleReferenceSystem(bbox); return super.intersects(getJTSEnvelope(bbox)); } /** Check if this bounding box intersects the provided bounds. */
/** * Returns true if there is any label in the index within the specified distance from the * bounds. For speed reasons the bounds will be simply expanded by the distance, no curved * buffer will be generated * * @param bounds * @param distance * @return */ @SuppressWarnings("unchecked") public boolean labelsWithinDistance(Rectangle2D bounds, double distance) { if (distance < 0) return false; Envelope e = toEnvelope(bounds); e.expandBy(distance); List<InterferenceItem> results = index.query(e); if (results.size() == 0) return false; for (Iterator<InterferenceItem> it = results.iterator(); it.hasNext(); ) { InterferenceItem item = it.next(); if (item.env.intersects(e)) { return true; } } return false; }
@Override protected boolean basicEvaluate(Geometry left, Geometry right) { Envelope envLeft = left.getEnvelopeInternal(); Envelope envRight = right.getEnvelopeInternal(); if (envRight.intersects(envLeft)) return left.disjoint(right); return true; }
@Override public boolean evaluateInternal(Geometry left, Geometry right) { Envelope envLeft = left.getEnvelopeInternal(); Envelope envRight = right.getEnvelopeInternal(); if (envLeft.intersects(envRight)) return left.overlaps(right); else return false; }
protected boolean basicEvaluate(Geometry left, Geometry right) { Envelope envLeft = left.getEnvelopeInternal(); Envelope envRight = right.getEnvelopeInternal(); if (envRight.intersects(envLeft)) { return left.intersects(right); } else { return false; } // Note that this is a pretty permissive logic // if the type has somehow been mis-set (can't happen externally) // then true is returned in all cases }
protected final boolean basicEvaluate(Geometry left, Geometry right) { Envelope envLeft = left.getEnvelopeInternal(); Envelope envRight = right.getEnvelopeInternal(); return envRight.intersects(envLeft) && left.intersects(right); } }
@Override public boolean evaluateInternal(Geometry left, Geometry right) { Envelope envLeft = left.getEnvelopeInternal(); Envelope envRight = right.getEnvelopeInternal(); if (envRight.intersects(envLeft)) return left.crosses(right); return false; }
private boolean preppedEvaluate(PreparedGeometry prepped, Geometry other) { Envelope envLeft = prepped.getGeometry().getEnvelopeInternal(); Envelope envRight = other.getEnvelopeInternal(); if (envRight.intersects(envLeft)) { return prepped.intersects(other); } else { return false; } // Note that this is a pretty permissive logic // if the type has somehow been mis-set (can't happen externally) // then true is returned in all cases }
if (geometryEnvelope.intersects(tileBBox.getEnvelopeInternal())
for (int i = 0; i < cleanedLines.size(); i++) { LineString cleaned = cleanedLines.get(i); if (g.getEnvelopeInternal().intersects(cleaned.getEnvelopeInternal())) { Geometry buffer = bufferCache.get(i); if (buffer == null) {
if (idIndex < current.getNumShapeIds() && !current.isVisited() && current.getBounds().intersects(bounds)) { indices.add(current.getShapeId(idIndex)); idIndex++; for (int i = 0; i < current.getNumSubNodes(); i++) { Node node = current.getSubNode(i); if (!node.isVisited() && node.getBounds().intersects(bounds)) { foundUnvisited = true; parents.add(current);
for (int i = 0; i < numGeometries; i++) { Geometry g = geometry.getGeometryN(i); if (g.getEnvelopeInternal().intersects(mask.getEnvelopeInternal())) { Geometry intersected = intersect(g, mask, geometryCRS); if (intersected != null) {
if (schema.getGeometryDescriptor() != null) { if (targetBBox != null && !targetBBox.isNull() && !targetBBox.intersects(envelope)) { geometry = SKIP;
} else if (!bounds.intersects(geomEnvelope)) { return null;
clipped = clipper.clip(geom, true); } else { if (geom.getEnvelopeInternal().intersects(clip.getEnvelopeInternal())) { clipped = clip.intersection(geom);
private void findNearVertices(LineString targetLine) { Coordinate[] pts = targetLine.getCoordinates(); // don't process the last point of a ring twice int n = geomPointsLen(pts); for (int i = 0; i < n; i++) { if (limitEnv.intersects(pts[i])) findNearVertex(pts, i); } }
assertTrue(e1.contains(e2)); assertTrue(p.getEnvelopeInternal().contains(e2)); assertTrue(p.getEnvelopeInternal().intersects(e1)); BBOXImpl bbox1 = (BBOXImpl)