public class GeoPath extends GeoBaseExtendedShape implements GeoDistanceShape
Modifier and Type  Class and Description 

static class 
GeoPath.PathSegment
This is the precalculated data for a path segment.

static class 
GeoPath.SegmentEndpoint
This is precalculated data for segment endpoint.

Modifier and Type  Field and Description 

double 
chordDistance 
double 
cutoffAngle 
double 
cutoffOffset 
GeoPoint[] 
edgePoints 
double 
originDistance 
List<GeoPath.SegmentEndpoint> 
points 
List<GeoPath.PathSegment> 
segments 
NORTH_POLE, SOUTH_POLE
Constructor and Description 

GeoPath(double cutoffAngle) 
Modifier and Type  Method and Description 

void 
addPoint(double lat,
double lon) 
double 
computeArcDistance(GeoPoint point)
Compute a true, accurate, greatcircle distance.

double 
computeLinearDistance(double x,
double y,
double z)
Compute a linear distance to the point.

double 
computeLinearDistance(GeoPoint point)
Compute a linear distance to the point.

double 
computeNormalDistance(double x,
double y,
double z)
Compute an estimate of "distance" to the GeoPoint.

double 
computeNormalDistance(GeoPoint point)
Compute an estimate of "distance" to the GeoPoint.

double 
computeSquaredLinearDistance(double x,
double y,
double z)
Compute a squared linear distance to the vector.

double 
computeSquaredLinearDistance(GeoPoint point)
Compute a squared linear distance to the vector.

double 
computeSquaredNormalDistance(double x,
double y,
double z)
Compute a squared estimate of the "distance" to the
GeoPoint.

double 
computeSquaredNormalDistance(GeoPoint point)
Compute a squared estimate of the "distance" to the
GeoPoint.

void 
done() 
boolean 
equals(Object o)
Equals

Bounds 
getBounds(Bounds bounds)
Compute longitude/latitude bounds for the shape.

GeoPoint[] 
getEdgePoints()
Return a sample point that is on the edge of the shape.

int 
hashCode() 
boolean 
intersects(Plane plane,
GeoPoint[] notablePoints,
Membership... bounds)
Assess whether a plane, within the provided bounds, intersects
with the shape.

boolean 
isWithin(double x,
double y,
double z)
Check if a point is within this shape.

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

String 
toString() 
public final double cutoffAngle
public final double cutoffOffset
public final double originDistance
public final double chordDistance
public final List<GeoPath.SegmentEndpoint> points
public final List<GeoPath.PathSegment> segments
public GeoPoint[] edgePoints
public void addPoint(double lat, double lon)
public void done()
public double computeNormalDistance(GeoPoint point)
computeNormalDistance
in interface GeoDistance
point
 is the point to compute the distance to.public double computeNormalDistance(double x, double y, double z)
computeNormalDistance
in interface GeoDistance
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).public double computeSquaredNormalDistance(GeoPoint point)
computeSquaredNormalDistance
in interface GeoDistance
point
 is the point to compute the distance to.public double computeSquaredNormalDistance(double x, double y, double z)
computeSquaredNormalDistance
in interface GeoDistance
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).public double computeLinearDistance(GeoPoint point)
computeLinearDistance
in interface GeoDistance
point
 is the point to compute the distance to.public double computeLinearDistance(double x, double y, double z)
computeLinearDistance
in interface GeoDistance
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).public double computeSquaredLinearDistance(GeoPoint point)
computeSquaredLinearDistance
in interface GeoDistance
point
 is the point to compute the distance to.public double computeSquaredLinearDistance(double x, double y, double z)
computeSquaredLinearDistance
in interface GeoDistance
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).public double computeArcDistance(GeoPoint point)
computeArcDistance
in interface GeoDistance
point
 is the point.public boolean isWithin(Vector point)
GeoBaseExtendedShape
isWithin
in interface Membership
isWithin
in class GeoBaseExtendedShape
point
 is the point to check.public boolean isWithin(double x, double y, double z)
GeoBaseExtendedShape
isWithin
in interface Membership
isWithin
in class GeoBaseExtendedShape
x
 is x coordinate of point to check.y
 is y coordinate of point to check.z
 is z coordinate of point to check.public GeoPoint[] getEdgePoints()
GeoBaseExtendedShape
getEdgePoints
in interface GeoShape
getEdgePoints
in class GeoBaseExtendedShape
public boolean intersects(Plane plane, GeoPoint[] notablePoints, Membership... bounds)
GeoBaseExtendedShape
intersects
in interface GeoShape
intersects
in class GeoBaseExtendedShape
plane
 is the plane to assess for intersection with the shape's edges or
bounding curves.notablePoints
 represents the intersections of the plane with the supplied
bounds. These are used to disambiguate when two planes are identical and it needs
to be determined whether any points exist that fulfill all the bounds.bounds
 are a set of bounds that define an area that an
intersection must be within in order to qualify (provided by a GeoArea).public Bounds getBounds(Bounds bounds)
getBounds
in interface GeoShape
getBounds
in class GeoBaseExtendedShape
bounds
 is the optional input bounds object. If this is null,
a bounds object will be created. Otherwise, the input object will be modified.Copyright © 20002015 Apache Software Foundation. All Rights Reserved.