/** * Returns 1 (TRUE) if this geometric object “spatially contains” anotherGeometry. * * @param geometry other geometry * @return true, if contains */ public BooleanExpression contains(Geometry geometry) { return contains(ConstantImpl.create(geometry)); }
/** * Returns 1 (TRUE) if this geometric object “spatially crosses’ anotherGeometry. * * @param geometry other geometry * @return trye, if crosses */ public BooleanExpression crosses(Geometry geometry) { return crosses(ConstantImpl.create(geometry)); }
/** * Returns a geometric object that represents the Point * set difference of this geometric object with anotherGeometry. * * @param geometry other geometry * @return difference between this and the other geometry */ public GeometryExpression<Geometry> difference(Geometry geometry) { return difference(ConstantImpl.create(geometry)); }
/** * Returns 1 (TRUE) if this geometric object is “spatially disjoint” from anotherGeometry. * * @param geometry other geometry * @return true, if disjoint */ public BooleanExpression disjoint(Geometry geometry) { return disjoint(ConstantImpl.create(geometry)); }
/** * Returns the shortest distance between any two Points in the two geometric objects as * calculated in the spatial reference system of this geometric object. Because the geometries * are closed, it is possible to find a point on each geometric object involved, such that the * distance between these 2 points is the returned distance between their geometric objects. * * @param geometry other geometry * @return distance between this and the other geometry */ public NumberExpression<Double> distance(Geometry geometry) { return distance(ConstantImpl.create(geometry)); }
/** * Returns 1 (TRUE) if this geometric object “spatially overlaps” anotherGeometry. * * @param geometry other geometry * @return true, if overlaps */ public BooleanExpression overlaps(Geometry geometry) { return overlaps(ConstantImpl.create(geometry)); }
/** * Returns a geometric object that represents the Point set intersection of this geometric * object with anotherGeometry. * * @param geometry other geometry * @return intersection of this and the other geometry */ public GeometryExpression<Geometry> intersection(Geometry geometry) { return intersection(ConstantImpl.create(geometry)); }
/** * Returns 1 (TRUE) if this geometric object “spatially intersects” anotherGeometry. * * @param geometry other geometry * @return true, if intersects */ public BooleanExpression intersects(Geometry geometry) { return intersects(ConstantImpl.create(geometry)); }
@Override public BooleanExpression eq(Geometry right) { return eq(ConstantImpl.create(right)); }
@Test @IncludeIn(Target.POSTGRESQL) public void extensions() { List<Expression<?>> expressions = Lists.newArrayList(); GeometryExpression<?> expr1 = shapes.geometry; expressions.add(GeometryExpressions.asEWKT(expr1)); expressions.add(GeometryExpressions.fromText(expr1.asText())); expressions.add(GeometryExpressions.setSRID(expr1, 4326)); expressions.add(GeometryExpressions.xmin(expr1)); expressions.add(GeometryExpressions.xmax(expr1)); expressions.add(GeometryExpressions.ymin(expr1)); expressions.add(GeometryExpressions.ymax(expr1)); expressions.add(GeometryExpressions.dwithin(expr1, expr1, 1)); expressions.add(GeometryExpressions.collect(expr1, expr1)); expressions.add(GeometryExpressions.translate(expr1, 1, 1)); for (Expression<?> expr : expressions) { boolean logged = false; for (Object row : withPoints().select(expr).fetch()) { if (row == null && !logged) { System.err.println(expr.toString()); logged = true; } } } }