Returns true if the boundingbox of the first geometry equals the boundingbox of the second geometry.
More...
Returns true if the boundingbox of the first geometry equals the boundingbox of the second geometry.
Value evaluate |
( |
ValueFactory |
valueFactory, |
|
|
Value... |
args |
|
) |
| throws ValueExprEvaluationException |
|
inherited |
18 if (args.length != 2) {
19 throw new ValueExprEvaluationException(getURI() +
" requires exactly 2 arguments, got " + args.length);
21 LiteralType l=LiteralRegistry.getLiteral(((Literal)args[0]).getDatatype().toString());
22 LiteralType l2=LiteralRegistry.getLiteral(((Literal)args[1]).getDatatype().toString());
23 if(l instanceof VectorLiteral && l2 instanceof VectorLiteral) {
24 Geometry geom=((VectorLiteral)l).read(args[0].stringValue());
25 Geometry geom2=((VectorLiteral)l2).read(args[1].stringValue());
26 Geometry transformed=LiteralUtils.transform(geom2, geom);
27 boolean result =
relation(geom,transformed);
28 return valueFactory.createLiteral(result);
30 throw new ValueExprEvaluationException(
"Arguments given are not a geometry literal");
abstract boolean relation(Geometry g1, Geometry g2)
References LiteralRegistry.getLiteral(), GeometricRelationBinaryFunction.relation(), and LiteralUtils.transform().
Referenced by BBOXAboveTest.testBBOXAbove(), BBOXAboveTest.testBBOXAbove1(), BBOXBelowTest.testBBOXBelow(), BBOXBelowTest.testBBOXBelow1(), BBOXContainsTest.testBBOXContainsFalse(), BBOXContainsTest.testBBOXContainsTrue(), BBOXEqualsTest.testBBOXEqualsFalse(), BBOXEqualsTest.testBBOXEqualsTrue(), BBOXIntersectsTest.testBBOXIntersectsFalse(), BBOXIntersectsTest.testBBOXIntersectsTrue(), BBOXIsContainedByTest.testBBOXIsContainedByFalse(), BBOXIsContainedByTest.testBBOXIsContainedByTrue(), BBOXLeftOfTest.testBBOXLeftOf(), BBOXLeftOfTest.testBBOXLeftOf1(), BBOXOverlapsLeftTest.testBBOXLeftOfFalse(), BBOXOverlapsLeftTest.testBBOXLeftOfTrue(), BBOXOverlapsRightTest.testBBOXRightOf(), BBOXRightOfTest.testBBOXRightOf(), BBOXOverlapsRightTest.testBBOXRightOf1(), BBOXRightOfTest.testBBOXRightOf1(), EqualTypeTest.testEqual(), EqualNormTest.testEqualNormFalse(), EqualNormTest.testEqualNormTrue(), EqualSRSTest.testEqualSRS(), EqualTopoTest.testEqualTopoFalse(), EqualTopoTest.testEqualTopoTrue(), EqualSRSTest.testNoSRS(), EqualTypeTest.testNotEqual(), EqualSRSTest.testNotEqualSRS(), OrderingEqualsTest.testOrderingEquals1(), OrderingEqualsTest.testOrderingEquals2(), and OrderingEqualsTest.testOrderingEquals3().