Search in sources :

Example 71 with GeometryWrapper

use of org.apache.jena.geosparql.implementation.GeometryWrapper in project jena by apache.

the class GenericCardinalPropertyFunctionTest method testExtractObjectArguments_3args_pos0_fail.

/**
 * Test of extractObjectArguments method, of class
 * GenericCardinalPropertyFunction.
 */
@Test(expected = ExprEvalException.class)
public void testExtractObjectArguments_3args_pos0_fail() {
    Node predicate = NodeFactory.createURI(SpatialExtension.NORTH_PROP);
    float lat = 0;
    float lon = 1;
    int limit = 10;
    Literal geometry = ConvertLatLon.toLiteral(lat, lon);
    List<Node> objectNodes = Arrays.asList(NodeValue.makeString("e").asNode(), NodeValue.makeFloat(lon).asNode(), NodeValue.makeInteger(limit).asNode());
    PropFuncArg object = new PropFuncArg(objectNodes);
    GeometryWrapper geometryWrapper = GeometryWrapper.extract(geometry);
    NorthPF instance = new NorthPF();
    SearchEnvelope searchEnvelope = instance.buildSearchEnvelope(geometryWrapper, SpatialIndexTestData.WGS_84_SRS_INFO);
    SpatialArguments expResult = new SpatialArguments(limit, geometryWrapper, searchEnvelope);
    SpatialArguments result = instance.extractObjectArguments(predicate, object, SpatialIndexTestData.WGS_84_SRS_INFO);
    assertEquals(expResult, result);
}
Also used : SpatialArguments(org.apache.jena.geosparql.spatial.property_functions.SpatialArguments) Node(org.apache.jena.graph.Node) Literal(org.apache.jena.rdf.model.Literal) GeometryWrapper(org.apache.jena.geosparql.implementation.GeometryWrapper) SearchEnvelope(org.apache.jena.geosparql.spatial.SearchEnvelope) PropFuncArg(org.apache.jena.sparql.pfunction.PropFuncArg) Test(org.junit.Test)

Example 72 with GeometryWrapper

use of org.apache.jena.geosparql.implementation.GeometryWrapper in project jena by apache.

the class NorthPFTest method testBuildSearchEnvelope.

/**
 * Test of buildSearchEnvelope method, of class NorthPF.
 */
@Test
public void testBuildSearchEnvelope() {
    GeometryWrapper geometryWrapper = SpatialIndexTestData.PARIS_GEOMETRY_WRAPPER;
    NorthPF instance = new NorthPF();
    SearchEnvelope expResult = SearchEnvelope.build(geometryWrapper, SpatialIndexTestData.WGS_84_SRS_INFO, CardinalDirection.NORTH);
    SearchEnvelope result = instance.buildSearchEnvelope(geometryWrapper, SpatialIndexTestData.WGS_84_SRS_INFO);
    assertEquals(expResult, result);
}
Also used : GeometryWrapper(org.apache.jena.geosparql.implementation.GeometryWrapper) SearchEnvelope(org.apache.jena.geosparql.spatial.SearchEnvelope) Test(org.junit.Test)

Example 73 with GeometryWrapper

use of org.apache.jena.geosparql.implementation.GeometryWrapper in project jena by apache.

the class WestGeomPFTest method testBuildSearchEnvelope.

/**
 * Test of buildSearchEnvelope method, of class WestGeomPF.
 */
@Test
public void testBuildSearchEnvelope() {
    GeometryWrapper geometryWrapper = SpatialIndexTestData.PARIS_GEOMETRY_WRAPPER;
    WestGeomPF instance = new WestGeomPF();
    SearchEnvelope expResult = SearchEnvelope.build(geometryWrapper, SpatialIndexTestData.WGS_84_SRS_INFO, CardinalDirection.WEST);
    SearchEnvelope result = instance.buildSearchEnvelope(geometryWrapper, SpatialIndexTestData.WGS_84_SRS_INFO);
    assertEquals(expResult, result);
}
Also used : GeometryWrapper(org.apache.jena.geosparql.implementation.GeometryWrapper) SearchEnvelope(org.apache.jena.geosparql.spatial.SearchEnvelope) Test(org.junit.Test)

Example 74 with GeometryWrapper

use of org.apache.jena.geosparql.implementation.GeometryWrapper in project jena by apache.

the class WestGeomPFTest method testCheckSearchEnvelope_wrap.

/**
 * Test of checkSearchEnvelope method, of class WestGeomPF.
 */
@Test
public void testCheckSearchEnvelope_wrap() {
    SpatialIndex spatialIndex = SpatialIndexTestData.createTestIndex();
    // Search Envelope
    GeometryWrapper geometryWrapper = SpatialIndexTestData.HONOLULU_GEOMETRY_WRAPPER;
    WestGeomPF instance = new WestGeomPF();
    // Needed to initialise the search.
    SearchEnvelope searchEnvelope = instance.buildSearchEnvelope(geometryWrapper, SpatialIndexTestData.WGS_84_SRS_INFO);
    HashSet<Resource> expResult = new HashSet<>(Arrays.asList(SpatialIndexTestData.AUCKLAND_FEATURE, SpatialIndexTestData.PERTH_FEATURE, SpatialIndexTestData.HONOLULU_FEATURE));
    HashSet<Resource> result = searchEnvelope.check(spatialIndex);
    assertEquals(expResult, result);
}
Also used : SpatialIndex(org.apache.jena.geosparql.spatial.SpatialIndex) GeometryWrapper(org.apache.jena.geosparql.implementation.GeometryWrapper) Resource(org.apache.jena.rdf.model.Resource) SearchEnvelope(org.apache.jena.geosparql.spatial.SearchEnvelope) HashSet(java.util.HashSet) Test(org.junit.Test)

Example 75 with GeometryWrapper

use of org.apache.jena.geosparql.implementation.GeometryWrapper in project jena by apache.

the class WestGeomPFTest method testCheckSearchEnvelope_no_wrap.

/**
 * Test of checkSearchEnvelope method, of class WestGeomPF.
 */
@Test
public void testCheckSearchEnvelope_no_wrap() {
    SpatialIndex spatialIndex = SpatialIndexTestData.createTestIndex();
    // Search Envelope
    GeometryWrapper geometryWrapper = SpatialIndexTestData.PERTH_GEOMETRY_WRAPPER;
    WestGeomPF instance = new WestGeomPF();
    // Needed to initialise the search.
    SearchEnvelope searchEnvelope = instance.buildSearchEnvelope(geometryWrapper, SpatialIndexTestData.WGS_84_SRS_INFO);
    HashSet<Resource> expResult = new HashSet<>(Arrays.asList(SpatialIndexTestData.LONDON_FEATURE, SpatialIndexTestData.PERTH_FEATURE));
    HashSet<Resource> result = searchEnvelope.check(spatialIndex);
    assertEquals(expResult, result);
}
Also used : SpatialIndex(org.apache.jena.geosparql.spatial.SpatialIndex) GeometryWrapper(org.apache.jena.geosparql.implementation.GeometryWrapper) Resource(org.apache.jena.rdf.model.Resource) SearchEnvelope(org.apache.jena.geosparql.spatial.SearchEnvelope) HashSet(java.util.HashSet) Test(org.junit.Test)

Aggregations

GeometryWrapper (org.apache.jena.geosparql.implementation.GeometryWrapper)356 Test (org.junit.Test)297 DimensionInfo (org.apache.jena.geosparql.implementation.DimensionInfo)70 Node (org.apache.jena.graph.Node)64 SearchEnvelope (org.apache.jena.geosparql.spatial.SearchEnvelope)63 Literal (org.apache.jena.rdf.model.Literal)59 PropFuncArg (org.apache.jena.sparql.pfunction.PropFuncArg)53 LineString (org.locationtech.jts.geom.LineString)52 SpatialArguments (org.apache.jena.geosparql.spatial.property_functions.SpatialArguments)51 Geometry (org.locationtech.jts.geom.Geometry)48 CustomCoordinateSequence (org.apache.jena.geosparql.implementation.jts.CustomCoordinateSequence)39 ExprEvalException (org.apache.jena.sparql.expr.ExprEvalException)36 DatatypeFormatException (org.apache.jena.datatypes.DatatypeFormatException)32 NodeValue (org.apache.jena.sparql.expr.NodeValue)24 TransformException (org.opengis.referencing.operation.TransformException)21 FactoryException (org.opengis.util.FactoryException)21 Envelope (org.locationtech.jts.geom.Envelope)19 MismatchedDimensionException (org.opengis.geometry.MismatchedDimensionException)19 Coordinate (org.locationtech.jts.geom.Coordinate)15 Resource (org.apache.jena.rdf.model.Resource)13