Package org.apache.lucene.spatial3d.geom
Class GeoBaseMembershipShape
java.lang.Object
org.apache.lucene.spatial3d.geom.BasePlanetObject
org.apache.lucene.spatial3d.geom.GeoBaseShape
org.apache.lucene.spatial3d.geom.GeoBaseMembershipShape
- All Implemented Interfaces:
Bounded
,GeoMembershipShape
,GeoOutsideDistance
,GeoShape
,Membership
,PlanetObject
,SerializableObject
- Direct Known Subclasses:
GeoBaseDistanceShape
,GeoDegenerateVerticalLine
Membership shapes have capabilities of both geohashing and membership determination. This is a
useful baseclass for them.
- WARNING: This API is experimental and might change in incompatible ways in the next release.
-
Field Summary
Fields inherited from class org.apache.lucene.spatial3d.geom.BasePlanetObject
planetModel
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptiondouble
computeOutsideDistance
(DistanceStyle distanceStyle, double x, double y, double z) Compute this shape's distance to the GeoPoint.double
computeOutsideDistance
(DistanceStyle distanceStyle, GeoPoint point) Compute this shape's distance to the GeoPoint.boolean
Check if a point is within this shape.protected abstract double
outsideDistance
(DistanceStyle distanceStyle, double x, double y, double z) Called by acomputeOutsideDistance
method if X/Y/Z is not within this shape.Methods inherited from class org.apache.lucene.spatial3d.geom.GeoBaseShape
getBounds
Methods inherited from class org.apache.lucene.spatial3d.geom.BasePlanetObject
equals, getPlanetModel, hashCode, write
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.apache.lucene.spatial3d.geom.GeoShape
getEdgePoints, intersects
Methods inherited from interface org.apache.lucene.spatial3d.geom.Membership
isWithin
Methods inherited from interface org.apache.lucene.spatial3d.geom.PlanetObject
getPlanetModel
Methods inherited from interface org.apache.lucene.spatial3d.geom.SerializableObject
write
-
Constructor Details
-
GeoBaseMembershipShape
Constructor.- Parameters:
planetModel
- is the planet model to use.
-
-
Method Details
-
isWithin
Description copied from interface:Membership
Check if a point is within this shape.- Specified by:
isWithin
in interfaceMembership
- Parameters:
point
- is the point to check.- Returns:
- true if the point is within this shape
-
computeOutsideDistance
Description copied from interface:GeoOutsideDistance
Compute this shape's distance to the GeoPoint. A return value of 0.0 should be returned for points inside of the shape.- Specified by:
computeOutsideDistance
in interfaceGeoOutsideDistance
- Parameters:
distanceStyle
- is the distance style.point
- is the point to compute the distance to.- Returns:
- the distance.
-
computeOutsideDistance
Description copied from interface:GeoOutsideDistance
Compute this shape's distance to the GeoPoint. A return value of 0.0 should be returned for points inside of the shape.- Specified by:
computeOutsideDistance
in interfaceGeoOutsideDistance
- Parameters:
distanceStyle
- is the distance style.x
- is the point's unit x coordinate (using U.S. convention).y
- is the point's unit y coordinate (using U.S. convention).z
- is the point's unit z coordinate (using U.S. convention).- Returns:
- the distance.
-
outsideDistance
protected abstract double outsideDistance(DistanceStyle distanceStyle, double x, double y, double z) Called by acomputeOutsideDistance
method if X/Y/Z is not within this shape.
-