rdf4j-postgis  Version 0.1.0.0
IsNodingValid Class Reference

Returns true if the given geometries' noding is valid. More...

Inheritance diagram for IsNodingValid:
Collaboration diagram for IsNodingValid:

Public Member Functions

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

Detailed Description

Returns true if the given geometries' noding is valid.

Member Function Documentation

◆ attribute()

boolean attribute ( Geometry  geom)

Reimplemented from GeometricBinaryAttributeFunction.

16  {
17  FastNodingValidator nv = new FastNodingValidator(
18  SegmentStringUtil.extractNodedSegmentStrings(geom));
19  return nv.isValid();
20  }

◆ 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 ( )
23  {
24  return POSTGIS.st_isNodingValid.stringValue();
25  }

References POSTGIS.st_isNodingValid.