rdf4j-postgis  Version 0.1.0.0
IsClosed Class Reference

Returns true if the given geometry is closed, false otherwise. More...

Inheritance diagram for IsClosed:
Collaboration diagram for IsClosed:

Public Member Functions

boolean attribute (Geometry geom)
 
String getURI ()
 
Value evaluate (ValueFactory valueFactory, Value... args) throws ValueExprEvaluationException
 

Detailed Description

Returns true if the given geometry is closed, false otherwise.

Member Function Documentation

◆ attribute()

boolean attribute ( Geometry  geom)

Reimplemented from GeometricBinaryAttributeFunction.

19  {
20  if(geom instanceof Point)
21  return false;
22  if(geom instanceof MultiPoint) {
23  GeometryFactory fac=new GeometryFactory();
24  LineString line=fac.createLineString(((MultiPoint)geom).getCoordinates());
25  return line.isClosed();
26  }
27  if (geom instanceof LineString) {
28  boolean isClosed = ((LineString) geom).isClosed();
29  return isClosed;
30  }
31  if (geom instanceof Polygon) {
32  return true;
33  }
34 
35  return false;
36  }

◆ evaluate()

Value evaluate ( ValueFactory  valueFactory,
Value...  args 
) throws ValueExprEvaluationException
inherited
17  {
18  if (args.length != 1) {
19  throw new ValueExprEvaluationException(getURI() + " requires exactly 1 arguments, got " + args.length);
20  }
21 
22  LiteralType l=LiteralRegistry.getLiteral(((Literal)args[0]).getDatatype().toString());
23  System.out.println(l);
24  if(l instanceof VectorLiteral) {
25  Geometry geom=((VectorLiteral)l).read(args[0].stringValue());
26  boolean result = attribute(geom);
27  return valueFactory.createLiteral(result);
28  }
29  throw new ValueExprEvaluationException("Argument given is not a geometry literal");
30 
31  }

References GeometricBinaryAttributeFunction.attribute(), and LiteralRegistry.getLiteral().

Referenced by IsCollectionTest.testGeometryCollectionIsCollection(), HasConnectedInteriorTest.testHasConnectedInteriorFalse(), HasConnectedInteriorTest.testHasConnectedInteriorTrue(), HasDuplicateRingsTest.testHasDuplicateRingsFalse(), HasDuplicateRingsTest.testHasDuplicateRingsTrue(), HasHorizontalCRSTest.testHasHorizontalCRSFalse(), HasHorizontalCRSTest.testHasHorizontalCRSTrue(), HasRepeatedPointsTest.testHasRepeatedPoints(), HasRepeatedPointsTest.testHasRepeatedPoints2(), HasSelfIntersectionsTest.testHasSelfIntersectionsFalse(), HasSelfIntersectionsTest.testHasSelfIntersectionsTrue(), Is3DTest.testIs3DFalse(), IsAcuteTest.testIsAcuteFalse(), IsAcuteTest.testIsAcuteTrue(), IsConvexTest.testIsConvexFalse(), IsConvexTest.testIsConvexTrue(), IsEmptyTest.testIsEmptyFalse(), IsEmptyTest.testIsEmptyTrue(), IsEquilateralTriangleTest.testIsEquilateralTriangleFalse(), IsEquilateralTriangleTest.testIsEquilateralTriangleTrue(), IsIsocelesTriangleTest.testIsIsocelesTriangleFalse(), IsIsocelesTriangleTest.testIsIsocelesTriangleTrue(), IsMeasuredTest.testIsMeasuredFalse(), IsMeasuredTest.testIsMeasuredTrue(), IsNodingValidTest.testIsNodingValuedTrue(), IsObliqueTriangleTest.testIsObliqueTriangleFalse(), IsObtuseTriangleTest.testIsObliqueTriangleFalse(), IsObliqueTriangleTest.testIsObliqueTriangleTrue(), IsObtuseTriangleTest.testIsObliqueTriangleTrue(), IsPlanarTest.testIsPlanarTrue(), IsPolygonCCWTest.testIsPolygonCCWFalse(), IsPolygonCCWTest.testIsPolygonCCWTrue(), IsPolygonCWTest.testIsPolygonCWFalse(), IsPolygonCWTest.testIsPolygonCWTrue(), IsRectangleTest.testIsRectangleFalse(), IsRectangleTest.testIsRectangleTrue(), IsRightTriangleTest.testIsRightTriangleFalse(), IsRightTriangleTest.testIsRightTriangleTrue(), IsSolidTest.testIsSolidFalse(), IsSquareTest.testIsSquareFalse(), IsSquareTest.testIsSquareTrue(), IsTriangleTest.testIsTriangleFalse(), IsTriangleTest.testIsTriangleTrue(), IsValidTest.testIsValidFalse(), IsValidTest.testIsValidTrue(), IsClosedTest.testLineStringClosed(), IsCollectionTest.testLineStringIsCollection(), IsRingTest.testLineStringIsNotRing(), IsRingTest.testLineStringIsRing(), IsClosedTest.testLineStringNotClosed(), IsCollectionTest.testMultiLineStringIsCollection(), IsClosedTest.testMultiLineStringNotClosed(), IsClosedTest.testmultiPointClosed(), IsCollectionTest.testMultiPointIsCollection(), IsCollectionTest.testMultiPolygonIsCollection(), IsClosedTest.testpointClosed(), IsCollectionTest.testPointIsCollection(), IsCollectionTest.testPolygonIsCollection(), SridHasFlippedAxisTest.testSridHasFlippedAxis(), SridIsGeographicTest.testSridIsGeographicFalse(), SridIsGeographicTest.testSridIsGeographicTrue(), SridIsProjectedTest.testSridIsProjectedTrue(), and SridIsVerticalTest.testSridIsVerticalTrue().

◆ getURI()

String getURI ( )
39  {
40  return POSTGIS.st_isClosed.stringValue();
41  }

References POSTGIS.st_isClosed.