org.geotools.filter
Class CartesianDistanceFilter
Object
FilterAbstract
AbstractFilter
BinaryComparisonAbstract
GeometryFilterImpl
CartesianDistanceFilter
- All Implemented Interfaces:
- FilterType, GeometryDistanceFilter, GeometryFilter, BinaryComparisonOperator, Filter, BinarySpatialOperator, DistanceBufferOperator, SpatialOperator
- Direct Known Subclasses:
- BeyondImpl, DWithinImpl
public abstract class CartesianDistanceFilter
- extends GeometryFilterImpl
- implements GeometryDistanceFilter
Defines geometry filters with a distance element.
These filters are defined in the filter spec by the DistanceBufferType,
which contains an additioinal field for a distance. The two filters that
use the distance buffer type are Beyond and DWithin.
From the spec: The spatial operators DWithin and Beyond test whether the
value of a geometric property is within or beyond a specified distance of
the specified literal geometric value. Distance values are expressed using
the Distance element.
For now this code does not take into account the units of distance, we will
assume that the filter units are the same as the geometry being filtered,
and that they are cartesian.
- Author:
- Chris Holmes, TOPP
- Module:
modules/library/main (gt-main.jar)
- TODO:
- REVISIT: add units for distance.
Fields inherited from interface FilterType |
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, NULL |
Fields inherited from interface Filter |
EXCLUDE, INCLUDE |
Fields inherited from interface Filter |
EXCLUDE, INCLUDE |
Fields inherited from interface Filter |
EXCLUDE, INCLUDE |
Methods inherited from interface Filter |
accept, evaluate |
Methods inherited from interface BinarySpatialOperator |
getExpression1, getExpression2 |
Methods inherited from interface Filter |
accept, evaluate |
Methods inherited from interface BinarySpatialOperator |
getExpression1, getExpression2 |
Methods inherited from interface Filter |
accept, evaluate |
CartesianDistanceFilter
protected CartesianDistanceFilter(FilterFactory factory)
CartesianDistanceFilter
protected CartesianDistanceFilter(FilterFactory factory,
Expression e1,
Expression e2)
CartesianDistanceFilter
protected CartesianDistanceFilter(short filterType)
throws IllegalFilterException
- Constructor which flags the operator as between.
- Parameters:
filterType
- The type of filter to create - dwithin and beyond are
allowed.
- Throws:
IllegalFilterException
- If a filter other than dwithin or beyond
is attempted.
setDistance
public void setDistance(double distance)
- Sets the distance allowed by this filter.
- Specified by:
setDistance
in interface GeometryDistanceFilter
- Parameters:
distance
- the length beyond which this filter is valid or not.
getDistance
public double getDistance()
- Gets the distance allowed by this filter.
- Specified by:
getDistance
in interface GeometryDistanceFilter
- Specified by:
getDistance
in interface DistanceBufferOperator
- Returns:
- distance the length beyond which this filter is valid or not.
getDistanceUnits
public String getDistanceUnits()
- Specified by:
getDistanceUnits
in interface DistanceBufferOperator
setUnits
public void setUnits(String units)
toString
public String toString()
- Returns a string representation of this filter.
- Overrides:
toString
in class GeometryFilterImpl
- Returns:
- String representation of the between filter.
equals
public boolean equals(Object oFilter)
- Returns true if the passed in object is the same as this filter. Checks
to make sure the filter types are the same as well as all three of the
values.
- Specified by:
equals
in interface GeometryDistanceFilter
- Overrides:
equals
in class GeometryFilterImpl
- Parameters:
oFilter
- The filter to test equality against.
- Returns:
- True if the objects are equal.
hashCode
public int hashCode()
- Override of hashCode method.
- Overrides:
hashCode
in class GeometryFilterImpl
- Returns:
- a code to hash this object by.
Copyright © 1996-2009 Geotools. All Rights Reserved.