public abstract class GeoBaseDistanceShape extends GeoBaseMembershipShape implements GeoDistanceShape
Modifier and Type  Field and Description 

protected static int 
ALL_INSIDE
All edgepoints inside shape

protected static int 
NONE_INSIDE
No edgepoints inside shape

protected static int 
SOME_INSIDE
Some edgepoints inside shape

planetModel
Constructor and Description 

GeoBaseDistanceShape(PlanetModel planetModel)
Constructor.

Modifier and Type  Method and Description 

double 
computeDeltaDistance(DistanceStyle distanceStyle,
double x,
double y,
double z)
Compute the shape's delta distance given a point.

double 
computeDeltaDistance(DistanceStyle distanceStyle,
GeoPoint point)
Compute the shape's delta distance given a point.

double 
computeDistance(DistanceStyle distanceStyle,
double x,
double y,
double z)
Compute this shape's internal "distance" to the GeoPoint.

double 
computeDistance(DistanceStyle distanceStyle,
GeoPoint point)
Compute this shape's internal "distance" to the GeoPoint.

protected double 
deltaDistance(DistanceStyle distanceStyle,
double x,
double y,
double z)
Called by a
computeDeltaDistance method if X/Y/Z is within this shape. 
protected abstract double 
distance(DistanceStyle distanceStyle,
double x,
double y,
double z)
Called by a
computeDistance method if X/Y/Z is within this shape. 
protected abstract void 
distanceBounds(Bounds bounds,
DistanceStyle distanceStyle,
double distanceValue)
Called by a
getDistanceBounds method if distanceValue is not Double.POSITIVE_INFINITY. 
void 
getDistanceBounds(Bounds bounds,
DistanceStyle distanceStyle,
double distanceValue)
Compute a bound based on a provided distance measure.

int 
getRelationship(GeoShape geoShape)
Find the spatial relationship between a shape and the current geo area.

protected int 
isGeoAreaShapeInsideShape(GeoShape geoshape)
Determine the relationship between the GeoAreaShape's edgepoints and the
provided shape.

protected int 
isShapeInsideGeoAreaShape(GeoShape geoShape)
Determine the relationship between the GeoAreShape and the
shape's edgepoints.

boolean 
isWithin(Vector point)
Check if a point is within this shape.

computeOutsideDistance, computeOutsideDistance, outsideDistance
getBounds
equals, getPlanetModel, hashCode, write
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
intersects
getEdgePoints, intersects
getPlanetModel
readBitSet, readBoolean, readByteArray, readClass, readDouble, readHeterogeneousArray, readHomogeneousArray, readInt, readLong, readObject, readObject, readObject, readObject, readPlanetObject, readPointArray, readPolygonArray, readString, write, writeBitSet, writeBoolean, writeByteArray, writeClass, writeDouble, writeHeterogeneousArray, writeHeterogeneousArray, writeHomogeneousArray, writeHomogeneousArray, writeInt, writeLong, writeObject, writePlanetObject, writePointArray, writePointArray, writePolygonArray, writePolygonArray, writeString
computeOutsideDistance, computeOutsideDistance
isWithin
getRelationship
protected static final int ALL_INSIDE
protected static final int SOME_INSIDE
protected static final int NONE_INSIDE
public GeoBaseDistanceShape(PlanetModel planetModel)
planetModel
 is the planet model to use.public boolean isWithin(Vector point)
Membership
isWithin
in interface Membership
isWithin
in class GeoBaseMembershipShape
point
 is the point to check.public double computeDistance(DistanceStyle distanceStyle, GeoPoint point)
GeoDistance
computeDistance
in interface GeoDistance
distanceStyle
 is the distance style.point
 is the point to compute the distance to.public double computeDistance(DistanceStyle distanceStyle, double x, double y, double z)
GeoDistance
computeDistance
in interface GeoDistance
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).protected abstract double distance(DistanceStyle distanceStyle, double x, double y, double z)
computeDistance
method if X/Y/Z is within this shape.public double computeDeltaDistance(DistanceStyle distanceStyle, GeoPoint point)
GeoDistance
computeDeltaDistance
in interface GeoDistance
distanceStyle
 is the distance style.point
 is the point to compute the distance to.public double computeDeltaDistance(DistanceStyle distanceStyle, double x, double y, double z)
GeoDistance
computeDeltaDistance
in interface GeoDistance
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).protected double deltaDistance(DistanceStyle distanceStyle, double x, double y, double z)
computeDeltaDistance
method if X/Y/Z is within this shape.public void getDistanceBounds(Bounds bounds, DistanceStyle distanceStyle, double distanceValue)
GeoDistanceShape
getDistanceBounds
in interface GeoDistanceShape
bounds
 is the bounds object to update.distanceStyle
 describes the type of distance metric provided.distanceValue
 is the distance metric to use. It is presumed that the distance metric
was produced with the same distance style as is provided to this method.protected abstract void distanceBounds(Bounds bounds, DistanceStyle distanceStyle, double distanceValue)
getDistanceBounds
method if distanceValue is not Double.POSITIVE_INFINITY.protected int isShapeInsideGeoAreaShape(GeoShape geoShape)
geoShape
 is the shape.protected int isGeoAreaShapeInsideShape(GeoShape geoshape)
geoshape
 is the shape.public int getRelationship(GeoShape geoShape)
GeoArea
getRelationship
in interface GeoArea
geoShape
 is the shape to consider.Copyright © 20002021 Apache Software Foundation. All Rights Reserved.