Package org.geotools.filter.spatial
Class BBOXImpl
-
- All Implemented Interfaces:
Filter
,MultiValuedFilter
,BBOX
,BinarySpatialOperator
,SpatialOperator
,FilterType
public class BBOXImpl extends AbstractPreparedGeometryFilter implements BBOX
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class AbstractPreparedGeometryFilter
AbstractPreparedGeometryFilter.Literals
-
Nested classes/interfaces inherited from interface MultiValuedFilter
MultiValuedFilter.MatchAction
-
-
Field Summary
-
Fields inherited from class AbstractPreparedGeometryFilter
cacheValue, leftPreppedGeom, literals, rightPreppedGeom
-
Fields inherited from class GeometryFilterImpl
matchAction
-
Fields inherited from class BinaryComparisonAbstract
expression1, expression2
-
Fields inherited from class AbstractFilter
LOGGER
-
Fields inherited from interface FilterType
ALL, BETWEEN, COMPARE_EQUALS, COMPARE_GREATER_THAN, COMPARE_GREATER_THAN_EQUAL, COMPARE_LESS_THAN, COMPARE_LESS_THAN_EQUAL, COMPARE_NOT_EQUALS, FID, GEOMETRY_BBOX, GEOMETRY_BEYOND, GEOMETRY_CONTAINS, GEOMETRY_CROSSES, GEOMETRY_DISJOINT, GEOMETRY_DWITHIN, GEOMETRY_EQUALS, GEOMETRY_INTERSECTS, GEOMETRY_OVERLAPS, GEOMETRY_TOUCHES, GEOMETRY_WITHIN, LIKE, LOGIC_AND, LOGIC_NOT, LOGIC_OR, NONE, NULL
-
-
Constructor Summary
Constructors Constructor Description BBOXImpl(Expression name, double minx, double miny, double maxx, double maxy, String srs)
BBOXImpl(Expression name, double minx, double miny, double maxx, double maxy, String srs, MultiValuedFilter.MatchAction matchAction)
BBOXImpl(Expression e1, Expression e2)
BBOXImpl(Expression e1, Expression e2, MultiValuedFilter.MatchAction matchAction)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Object
accept(FilterVisitor visitor, Object extraData)
Accepts a visitor.protected boolean
basicEvaluate(Geometry left, Geometry right)
Performs the calculation on the two geometries.static Polygon
boundingPolygon(Envelope env)
Generate bounding polygon for provided envelope.boolean
evaluateInternal(Geometry left, Geometry right)
Performs the calculation on the two geometries.BoundingBox
getBounds()
Return Bounding Box object representing the bounds of the filter @Return Bounds of Filtervoid
setExpression1(Expression expression)
void
setExpression2(Expression expression)
void
setPropertyName(String propertyName)
-
Methods inherited from class GeometryFilterImpl
equals, evaluate, getGeometries, getMatchAction, hashCode, toString
-
Methods inherited from class BinaryComparisonAbstract
comparable, eval, eval, getExpression1, getExpression2, isMatchingCase
-
Methods inherited from class AbstractFilter
isCompareFilter, isGeometryDistanceFilter, isGeometryFilter, isLogicFilter, isMathFilter, isSimpleFilter
-
Methods inherited from class FilterAbstract
accepts, eval, eval
-
Methods inherited from interface BinarySpatialOperator
getExpression1, getExpression2
-
Methods inherited from interface MultiValuedFilter
getMatchAction
-
-
-
-
Constructor Detail
-
BBOXImpl
public BBOXImpl(Expression e1, Expression e2)
-
BBOXImpl
public BBOXImpl(Expression name, double minx, double miny, double maxx, double maxy, String srs)
-
BBOXImpl
public BBOXImpl(Expression e1, Expression e2, MultiValuedFilter.MatchAction matchAction)
-
BBOXImpl
public BBOXImpl(Expression name, double minx, double miny, double maxx, double maxy, String srs, MultiValuedFilter.MatchAction matchAction)
-
-
Method Detail
-
setPropertyName
public void setPropertyName(String propertyName)
-
evaluateInternal
public boolean evaluateInternal(Geometry left, Geometry right)
Description copied from class:GeometryFilterImpl
Performs the calculation on the two geometries.- Specified by:
evaluateInternal
in classGeometryFilterImpl
- Parameters:
left
- the geometry on the left of the equations (the geometry obtained from evaluating Expression1)right
- the geometry on the right of the equations (the geometry obtained from evaluating Expression2)- Returns:
- true if the filter evaluates to true for the two geometries
-
basicEvaluate
protected boolean basicEvaluate(Geometry left, Geometry right)
Description copied from class:AbstractPreparedGeometryFilter
Performs the calculation on the two geometries. This is used to calculate the cached value in the case that both geometries are Literals. But in practice it is useful to extract this functionality into its own method.- Specified by:
basicEvaluate
in classAbstractPreparedGeometryFilter
- Parameters:
left
- the geometry on the left of the equations (the geometry obtained from evaluating Expression1)right
- the geometry on the right of the equations (the geometry obtained from evaluating Expression2)- Returns:
- true if the filter evaluates to true for the two geometries
-
accept
public Object accept(FilterVisitor visitor, Object extraData)
Description copied from interface:Filter
Accepts a visitor.Implementations of all subinterfaces must have with a method whose content is the following:
return visitor.visit(this, extraData);
-
setExpression1
public void setExpression1(Expression expression)
- Overrides:
setExpression1
in classAbstractPreparedGeometryFilter
-
setExpression2
public void setExpression2(Expression expression)
- Overrides:
setExpression2
in classAbstractPreparedGeometryFilter
-
boundingPolygon
public static Polygon boundingPolygon(Envelope env)
Generate bounding polygon for provided envelope.For a ReferenedEnvelope the CoordinateReferenceSystem wil be preserved.
- Parameters:
env
- The envelope to set as the bounds.- Throws:
IllegalFilterException
- If the box can not be created.- TODO:
- Currently sets the SRID to null, which can cause problems with JTS when it comes to doing spatial tests
-
getBounds
public BoundingBox getBounds()
Description copied from interface:BBOX
Return Bounding Box object representing the bounds of the filter @Return Bounds of Filter
-
-