public abstract class GeoBaseExtendedShape extends Object implements GeoShape
Modifier and Type | Field and Description |
---|---|
protected static GeoPoint |
NORTH_POLE |
protected static GeoPoint |
SOUTH_POLE |
Constructor and Description |
---|
GeoBaseExtendedShape() |
Modifier and Type | Method and Description |
---|---|
Bounds |
getBounds(Bounds bounds)
Compute longitude/latitude bounds for the shape.
|
abstract GeoPoint[] |
getEdgePoints()
Return a sample point that is on the edge of the shape.
|
abstract boolean |
intersects(Plane plane,
GeoPoint[] notablePoints,
Membership... bounds)
Assess whether a plane, within the provided bounds, intersects
with the shape.
|
abstract boolean |
isWithin(double x,
double y,
double z)
Check if a point is within this shape.
|
abstract boolean |
isWithin(Vector point)
Check if a point is within this shape.
|
protected static final GeoPoint NORTH_POLE
protected static final GeoPoint SOUTH_POLE
public abstract boolean isWithin(Vector point)
isWithin
in interface Membership
point
- is the point to check.public abstract boolean isWithin(double x, double y, double z)
isWithin
in interface Membership
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 abstract GeoPoint[] getEdgePoints()
getEdgePoints
in interface GeoShape
public abstract boolean intersects(Plane plane, GeoPoint[] notablePoints, Membership... bounds)
intersects
in interface GeoShape
plane
- is the plane to assess for intersection with the shape's edges or
bounding curves.bounds
- are a set of bounds that define an area that an
intersection must be within in order to qualify (provided by a GeoArea).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.public Bounds getBounds(Bounds bounds)
getBounds
in interface GeoShape
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 © 2000-2015 Apache Software Foundation. All Rights Reserved.