public class GeoDegenerateVerticalLine extends GeoBaseMembershipShape
Modifier and Type | Field and Description |
---|---|
protected static int |
ALL_INSIDE
All edgepoints inside shape
|
protected double |
bottomLat
Bottom latitude of the vertical line
|
protected SidedPlane |
bottomPlane
Bottom end cutoff plane
|
protected SidedPlane |
boundingPlane
Back-side cutoff plane
|
protected GeoPoint |
centerPoint
A computed center point for the line
|
protected GeoPoint[] |
edgePoints
A point that's on the line
|
protected GeoPoint |
LHC
Point at the lower end of the vertical line
|
protected double |
longitude
Longitude of the vertical line
|
protected static int |
NONE_INSIDE
No edgepoints inside shape
|
protected Plane |
plane
The vertical line plane
|
protected GeoPoint[] |
planePoints
Notable points for the line (end points)
|
protected static int |
SOME_INSIDE
Some edgepoints inside shape
|
protected double |
topLat
Top latitude of the vertical line
|
protected SidedPlane |
topPlane
Top end cutoff plane
|
protected GeoPoint |
UHC
Point at the upper end of the vertical line
|
planetModel
Constructor and Description |
---|
GeoDegenerateVerticalLine(PlanetModel planetModel,
double topLat,
double bottomLat,
double longitude)
Accepts only values in the following ranges: lat:
-PI/2 -> PI/2 , longitude: -PI -> PI |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(Object o) |
GeoBBox |
expand(double angle)
Expand box by specified angle.
|
void |
getBounds(Bounds bounds)
Compute bounds for the shape.
|
GeoPoint |
getCenter()
Returns the center of a circle into which the area will be inscribed.
|
GeoPoint[] |
getEdgePoints()
Return a sample point that is on the outside edge/boundary of the shape.
|
double |
getRadius()
Returns the radius of a circle into which the GeoSizeable area can
be inscribed.
|
int |
getRelationship(GeoShape path)
Find the spatial relationship between a shape and the current geo area.
|
int |
hashCode() |
boolean |
intersects(Plane p,
GeoPoint[] notablePoints,
Membership... bounds)
Assess whether a plane, within the provided bounds, intersects
with the shape.
|
protected int |
isShapeInsideBBox(GeoShape path)
Determine the relationship between this BBox and the provided
shape's edgepoints.
|
boolean |
isWithin(double x,
double y,
double z)
Check if a point is within this shape.
|
protected double |
outsideDistance(DistanceStyle distanceStyle,
double x,
double y,
double z)
Called by a
computeOutsideDistance method if X/Y/Z is not within this shape. |
String |
toString() |
computeOutsideDistance, computeOutsideDistance, isWithin
getPlanetModel
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
computeOutsideDistance, computeOutsideDistance
isWithin
protected final double topLat
protected final double bottomLat
protected final double longitude
protected final GeoPoint UHC
protected final GeoPoint LHC
protected final SidedPlane topPlane
protected final SidedPlane bottomPlane
protected final SidedPlane boundingPlane
protected final Plane plane
protected final GeoPoint[] planePoints
protected final GeoPoint centerPoint
protected final GeoPoint[] edgePoints
protected static final int ALL_INSIDE
protected static final int SOME_INSIDE
protected static final int NONE_INSIDE
public GeoDegenerateVerticalLine(PlanetModel planetModel, double topLat, double bottomLat, double longitude)
-PI/2 -> PI/2
, longitude: -PI -> PI
public GeoBBox expand(double angle)
GeoBBox
angle
- is the angle amount to expand the GeoBBox by.public boolean isWithin(double x, double y, double z)
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 double getRadius()
GeoSizeable
public GeoPoint getCenter()
GeoSizeable
public GeoPoint[] getEdgePoints()
GeoShape
public boolean intersects(Plane p, GeoPoint[] notablePoints, Membership... bounds)
GeoShape
p
- 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 void getBounds(Bounds bounds)
GeoShape
getBounds
in interface GeoShape
getBounds
in class GeoBaseShape
bounds
- is the input bounds object.
The input object will be modified.public int getRelationship(GeoShape path)
GeoArea
path
- is the shape to consider.protected double outsideDistance(DistanceStyle distanceStyle, double x, double y, double z)
GeoBaseMembershipShape
computeOutsideDistance
method if X/Y/Z is not within this shape.outsideDistance
in class GeoBaseMembershipShape
public boolean equals(Object o)
equals
in class BasePlanetObject
public int hashCode()
hashCode
in class BasePlanetObject
protected int isShapeInsideBBox(GeoShape path)
path
- is the shape.Copyright © 2000-2017 Apache Software Foundation. All Rights Reserved.