|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.geotools.filter.FilterAbstract org.geotools.filter.AbstractFilter org.geotools.filter.BinaryComparisonAbstract org.geotools.filter.GeometryFilterImpl
Implements a geometry filter.
This filter implements a relationship - of some sort - between two geometry expressions. Note that this comparison does not attempt to restict its expressions to be meaningful. This means that it considers itself a valid filter as long as it contains two geometry sub-expressions. It is also slightly less restrictive than the OGC Filter specification because it does not require that one sub-expression be an geometry attribute and the other be a geometry literal.
In other words, you may use this filter to compare two geometries in the same feature, such as: attributeA inside attributeB? You may also compare two literal geometries, although this is fairly meaningless, since it could be reduced (ie. it is always either true or false). This approach is very similar to that taken in the FilterCompare class.
Field Summary |
Fields inherited from class org.geotools.filter.BinaryComparisonAbstract |
expression1, expression2 |
Fields inherited from class org.geotools.filter.AbstractFilter |
filterType, permissiveConstruction |
Fields inherited from interface org.geotools.filter.Filter |
ALL, NONE |
Fields inherited from interface org.geotools.filter.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 |
Constructor Summary | |
protected |
GeometryFilterImpl(FilterFactory factory)
|
protected |
GeometryFilterImpl(FilterFactory factory,
org.opengis.filter.expression.Expression e1,
org.opengis.filter.expression.Expression e2)
|
protected |
GeometryFilterImpl(short filterType)
Constructor with filter type. |
Method Summary | |
void |
addLeftGeometry(Expression leftGeometry)
Deprecated. use setExpression1(org.opengis.filter.expression.Expression) |
void |
addRightGeometry(Expression rightGeometry)
Deprecated. use {@link #set |
boolean |
equals(java.lang.Object obj)
Compares this filter to the specified object. |
abstract boolean |
evaluate(Feature feature)
Determines whether or not a given feature is 'inside' this filter. |
Expression |
getLeftGeometry()
Deprecated. use BinarySpatialOperator.getExpression1() |
protected com.vividsolutions.jts.geom.Geometry |
getLeftGeometry(Feature feature)
Subclass convenience method for returning left expression as a JTS geometry. |
Expression |
getRightGeometry()
Deprecated. use {@link org.opengis.filter.spatial.BinarySpatialOperator#getExpression2()} |
protected com.vividsolutions.jts.geom.Geometry |
getRightGeometry(Feature feature)
Subclass convenience method for returning right expression as a JTS geometry. |
int |
hashCode()
Override of hashCode method. |
void |
setExpression1(org.opengis.filter.expression.Expression expression)
|
void |
setExpression2(org.opengis.filter.expression.Expression expression)
|
java.lang.String |
toString()
Return this filter as a string. |
protected boolean |
validate(Feature feature)
Subclass convenience method for validating the internals of the |
Methods inherited from class org.geotools.filter.BinaryComparisonAbstract |
and, getExpression1, getExpression2, not, or |
Methods inherited from class org.geotools.filter.AbstractFilter |
accept, contains, evaluate, getFilterType, isCompareFilter, isGeometryDistanceFilter, isGeometryFilter, isLogicFilter, isMathFilter, isSimpleFilter |
Methods inherited from class org.geotools.filter.FilterAbstract |
accept, accepts, comparable, eval, eval |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.geotools.filter.GeometryFilter |
contains |
Methods inherited from interface org.geotools.filter.Filter |
accept, and, getFilterType, not, or |
Methods inherited from interface org.opengis.filter.Filter |
accept, evaluate |
Methods inherited from interface org.opengis.filter.spatial.BinarySpatialOperator |
getExpression1, getExpression2 |
Constructor Detail |
protected GeometryFilterImpl(FilterFactory factory)
protected GeometryFilterImpl(FilterFactory factory, org.opengis.filter.expression.Expression e1, org.opengis.filter.expression.Expression e2)
protected GeometryFilterImpl(short filterType) throws IllegalFilterException
filterType
- The type of comparison.
IllegalFilterException
- Non-geometry type.Method Detail |
public final void addLeftGeometry(Expression leftGeometry) throws IllegalFilterException
setExpression1(org.opengis.filter.expression.Expression)
addLeftGeometry
in interface GeometryFilter
leftGeometry
- Expression for 'left' value.
IllegalFilterException
- Filter is not internally consistent.public void setExpression1(org.opengis.filter.expression.Expression expression)
setExpression1
in interface org.opengis.filter.BinaryComparisonOperator
setExpression1
in class BinaryComparisonAbstract
public final void addRightGeometry(Expression rightGeometry) throws IllegalFilterException
addRightGeometry
in interface GeometryFilter
rightGeometry
- Expression for 'right' value.
IllegalFilterException
- Filter is not internally consistent.public void setExpression2(org.opengis.filter.expression.Expression expression)
setExpression2
in interface org.opengis.filter.BinaryComparisonOperator
setExpression2
in class BinaryComparisonAbstract
public final Expression getLeftGeometry()
BinarySpatialOperator.getExpression1()
getLeftGeometry
in interface GeometryFilter
public final Expression getRightGeometry()
getRightGeometry
in interface GeometryFilter
protected com.vividsolutions.jts.geom.Geometry getLeftGeometry(Feature feature)
protected com.vividsolutions.jts.geom.Geometry getRightGeometry(Feature feature)
protected boolean validate(Feature feature)
public abstract boolean evaluate(Feature feature)
evaluate
in interface Filter
evaluate
in class FilterAbstract
feature
- Specified feature to examine.
public java.lang.String toString()
public boolean equals(java.lang.Object obj)
obj
- - the object to compare this GeometryFilter against.
public int hashCode()
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |