Search in sources :

Example 26 with SpatialArguments

use of org.apache.jena.geosparql.spatial.property_functions.SpatialArguments in project jena by apache.

the class GenericCardinalGeomPropertyFunctionTest method testCheckSecondFilter.

/**
 * Test of checkSecondFilter method, of class
 * GenericCardinalGeomPropertyFunction.
 */
@Test
public void testCheckSecondFilter() {
    // Property Function
    Node predicate = NodeFactory.createURI(SpatialExtension.NORTH_GEOM_PROP);
    // Geometry and Envelope parameters
    float lat = 0;
    float lon = 1;
    Literal targetGeometry = ConvertLatLon.toLiteral(lat, lon);
    List<Node> objectNodes = Arrays.asList(NodeValue.makeFloat(lat).asNode(), NodeValue.makeFloat(lon).asNode());
    PropFuncArg object = new PropFuncArg(objectNodes);
    GeometryWrapper targetGeometryWrapper = GeometryWrapper.extract(targetGeometry);
    NorthPF instance = new NorthPF();
    SpatialArguments spatialArgumemts = instance.extractObjectArguments(predicate, object, SpatialIndexTestData.WGS_84_SRS_INFO);
    boolean expResult = true;
    boolean result = instance.checkSecondFilter(spatialArgumemts, targetGeometryWrapper);
    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) PropFuncArg(org.apache.jena.sparql.pfunction.PropFuncArg) Test(org.junit.Test)

Example 27 with SpatialArguments

use of org.apache.jena.geosparql.spatial.property_functions.SpatialArguments in project jena by apache.

the class GenericSpatialBoxPropertyFunctionTest method testExtractObjectArguments_5args.

/**
 * Test of extractObjectArguments method, of class
 * GenericSpatialBoxPropertyFunction.
 */
@Test
public void testExtractObjectArguments_5args() {
    GenericSpatialBoxPropertyFunction instance = new WithinBoxPF();
    Node predicate = NodeFactory.createURI(SpatialExtension.WITHIN_BOX_PROP);
    // Geometry and Envelope parameters
    float latMin = 0;
    float lonMin = 1;
    float latMax = 2;
    float lonMax = 3;
    int limit = 10;
    List<Node> objectNodes = Arrays.asList(NodeValue.makeFloat(latMin).asNode(), NodeValue.makeFloat(lonMin).asNode(), NodeValue.makeFloat(latMax).asNode(), NodeValue.makeFloat(lonMax).asNode(), NodeValue.makeInteger(limit).asNode());
    PropFuncArg object = new PropFuncArg(objectNodes);
    // Function arguments
    Literal geometry = ConvertLatLonBox.toLiteral(latMin, lonMin, latMax, lonMax);
    GeometryWrapper geometryWrapper = GeometryWrapper.extract(geometry);
    SearchEnvelope searchEnvelope = SearchEnvelope.build(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 28 with SpatialArguments

use of org.apache.jena.geosparql.spatial.property_functions.SpatialArguments in project jena by apache.

the class GenericSpatialBoxPropertyFunctionTest method testExtractObjectArguments_6args_fail.

/**
 * Test of extractObjectArguments method, of class
 * GenericSpatialBoxPropertyFunction.
 */
@Test(expected = ExprEvalException.class)
public void testExtractObjectArguments_6args_fail() {
    GenericSpatialBoxPropertyFunction instance = new WithinBoxPF();
    Node predicate = NodeFactory.createURI(SpatialExtension.WITHIN_BOX_PROP);
    // Geometry and Envelope parameters
    float latMin = 0;
    float lonMin = 1;
    float latMax = 2;
    float lonMax = 3;
    int limit = 10;
    List<Node> objectNodes = Arrays.asList(NodeValue.makeFloat(latMin).asNode(), NodeValue.makeFloat(lonMin).asNode(), NodeValue.makeFloat(latMax).asNode(), NodeValue.makeFloat(lonMax).asNode(), NodeValue.makeInteger(limit).asNode(), NodeValue.makeBoolean(false).asNode());
    PropFuncArg object = new PropFuncArg(objectNodes);
    // Function arguments
    Literal geometry = ConvertLatLonBox.toLiteral(latMin, lonMin, latMax, lonMax);
    GeometryWrapper geometryWrapper = GeometryWrapper.extract(geometry);
    SearchEnvelope searchEnvelope = SearchEnvelope.build(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 29 with SpatialArguments

use of org.apache.jena.geosparql.spatial.property_functions.SpatialArguments in project jena by apache.

the class GenericSpatialBoxPropertyFunctionTest method testExtractObjectArguments_5args_pos2_fail.

/**
 * Test of extractObjectArguments method, of class
 * GenericSpatialBoxPropertyFunction.
 */
@Test(expected = ExprEvalException.class)
public void testExtractObjectArguments_5args_pos2_fail() {
    GenericSpatialBoxPropertyFunction instance = new WithinBoxPF();
    Node predicate = NodeFactory.createURI(SpatialExtension.WITHIN_BOX_PROP);
    // Geometry and Envelope parameters
    float latMin = 0;
    float lonMin = 1;
    float latMax = 2;
    float lonMax = 3;
    int limit = 10;
    List<Node> objectNodes = Arrays.asList(NodeValue.makeFloat(latMin).asNode(), NodeValue.makeFloat(lonMin).asNode(), NodeValue.makeString("e").asNode(), NodeValue.makeFloat(lonMax).asNode(), NodeValue.makeInteger(limit).asNode());
    PropFuncArg object = new PropFuncArg(objectNodes);
    // Function arguments
    Literal geometry = ConvertLatLonBox.toLiteral(latMin, lonMin, latMax, lonMax);
    GeometryWrapper geometryWrapper = GeometryWrapper.extract(geometry);
    SearchEnvelope searchEnvelope = SearchEnvelope.build(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 30 with SpatialArguments

use of org.apache.jena.geosparql.spatial.property_functions.SpatialArguments in project jena by apache.

the class GenericSpatialBoxPropertyFunctionTest method testExtractObjectArguments_5args_pos4_fail.

/**
 * Test of extractObjectArguments method, of class
 * GenericSpatialBoxPropertyFunction.
 */
@Test(expected = ExprEvalException.class)
public void testExtractObjectArguments_5args_pos4_fail() {
    GenericSpatialBoxPropertyFunction instance = new WithinBoxPF();
    Node predicate = NodeFactory.createURI(SpatialExtension.WITHIN_BOX_PROP);
    // Geometry and Envelope parameters
    float latMin = 0;
    float lonMin = 1;
    float latMax = 2;
    float lonMax = 3;
    int limit = 10;
    List<Node> objectNodes = Arrays.asList(NodeValue.makeFloat(latMin).asNode(), NodeValue.makeFloat(lonMin).asNode(), NodeValue.makeFloat(latMax).asNode(), NodeValue.makeFloat(lonMax).asNode(), NodeValue.makeString("10").asNode());
    PropFuncArg object = new PropFuncArg(objectNodes);
    // Function arguments
    Literal geometry = ConvertLatLonBox.toLiteral(latMin, lonMin, latMax, lonMax);
    GeometryWrapper geometryWrapper = GeometryWrapper.extract(geometry);
    SearchEnvelope searchEnvelope = SearchEnvelope.build(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)

Aggregations

GeometryWrapper (org.apache.jena.geosparql.implementation.GeometryWrapper)51 SpatialArguments (org.apache.jena.geosparql.spatial.property_functions.SpatialArguments)51 Node (org.apache.jena.graph.Node)51 Literal (org.apache.jena.rdf.model.Literal)47 PropFuncArg (org.apache.jena.sparql.pfunction.PropFuncArg)47 Test (org.junit.Test)47 SearchEnvelope (org.apache.jena.geosparql.spatial.SearchEnvelope)39 DatatypeFormatException (org.apache.jena.datatypes.DatatypeFormatException)4 ExprEvalException (org.apache.jena.sparql.expr.ExprEvalException)4 NodeValue (org.apache.jena.sparql.expr.NodeValue)4