lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Smiley (JIRA)" <>
Subject [jira] [Commented] (LUCENE-4167) Remove the use of SpatialOperation
Date Wed, 27 Jun 2012 14:57:43 GMT


David Smiley commented on LUCENE-4167:

I agree with your complaint.  The only two supported operations are:
* Intersects -- equivalent to IsWithin when index data is points
* BBoxWIntersects -- again, equivalent to BBoxIsWithin when the indexed data is points.

The distinction of "overlaps" with "intersects" seems dubious.

The bbox handling is universally handled in SpatialArgs.getShape() which checks the operation
and returns the wrapping rectangle.  So effectively the strategies need not even bother with
the whole SpatialOperation concept, at least not at the moment.

My concern with your suggestion to remove SpatialOperation is that I do think it will return.
 I know I want to work on an IsWithin when indexed data is shapes with area.  And it is serving
the purpose of SpatialArgsParser parsing out the operation you want to do, which I don't think
should go away (i.e. the query string shouldn't assume an intersect, it should include "Intersects(...)"
 Perhaps the unsupported operations could be commented out?

Separately, I think com.spatial4j.core.query.* belongs in Lucene spatial.  It's not used by
any of the rest of Spatial4j, yet it's tightly related to the concept of querying which is
Lucene spatial's business, and is not the business of Spatial4j.
> Remove the use of SpatialOperation
> ----------------------------------
>                 Key: LUCENE-4167
>                 URL:
>             Project: Lucene - Java
>          Issue Type: Bug
>          Components: modules/spatial
>            Reporter: Chris Male
> Looking at the code in TwoDoublesStrategy I noticed SpatialOperations.BBoxWithin vs isWithin
which confused me.  Looking over the other Strategys I see that really only isWithin and Intersects
is supported.  Only TwoDoublesStrategy supports IsDisjointTo.  The remainder of SpatialOperations
are not supported.
> I don't think we should use SpatialOperation as this stage since it is not clear what
Operations are supported by what Strategys, many Operations are not supported, and the code
for handling the Operations is usually the same.  We can spin off the code for TwoDoublesStrategy's
IsDisjointTo support into a different Strategy.

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message