Package ucar.unidata.geoloc
Class ProjectionRect
- java.lang.Object
-
- ucar.unidata.geoloc.ProjectionRect
-
- All Implemented Interfaces:
Serializable
public class ProjectionRect extends Object implements Serializable
Bounding box for ProjectionPoint's. Note that getX() getY() really means getMinX(), getMinY(), rather than "upper left point" of the rectangle. LOOK will not implement Serializable in ver6 LOOK may be immutable AutoValue in ver6- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ProjectionRect()
default constructor, initialized to center (0,0) and width (10000, 10000)ProjectionRect(double x1, double y1, double x2, double y2)
construct a MapArea from any two opposite corner pointsProjectionRect(ProjectionPoint minimum, double width, double height)
Construct a ProjectionRect from any two opposite corner points.ProjectionRect(ProjectionPoint corner1, ProjectionPoint corner2)
Construct a ProjectionRect from any two opposite corner points.ProjectionRect(ProjectionRect r)
Copy Constructor
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
add(double newx, double newy)
Deprecated.use buildervoid
add(ProjectionPoint pt)
Deprecated.use buildervoid
add(ProjectionRect r)
Deprecated.use builderboolean
contains(ProjectionPoint point)
Returnstrue
if this bounding box containspoint
.boolean
contains(ProjectionRect rect)
Returnstrue
if this bounding box containsrect
.boolean
equals(Object o)
double
getCenterX()
Returns the X coordinate of the center of the framing rectangle of theShape
indouble
precision.double
getCenterY()
Returns the Y coordinate of the center of the framing rectangle of theShape
indouble
precision.double
getHeight()
ProjectionPoint
getLowerLeftPoint()
Get the Lower Right Point (same as getMinPoint)ProjectionPoint
getLowerRightPoint()
Get the Lower Right PointProjectionPoint
getMaxPoint()
Get the maximum corner of the bounding box.double
getMaxX()
Returns the largest X coordinate of the framing rectangle of theShape
indouble
precision.double
getMaxY()
Returns the largest Y coordinate of the framing rectangle of theShape
indouble
precision.ProjectionPoint
getMinPoint()
Get the minimum corner of the bounding box.double
getMinX()
Returns the smallest X coordinate of the framing rectangle of theShape
indouble
precision.double
getMinY()
Returns the smallest Y coordinate of the framing rectangle of theShape
indouble
precision.ProjectionPoint
getUpperLeftPoint()
Get the Upper Left PointProjectionPoint
getUpperRightPoint()
Get the Upper Left Point (same as getMaxPoint)double
getWidth()
double
getX()
double
getY()
int
hashCode()
static void
intersect(ProjectionRect src1, ProjectionRect src2, ProjectionRect dest)
Intersects the pair of specified sourceRectangle2D
objects and puts the result into the specified destinationRectangle2D
object.boolean
intersects(double x, double y, double w, double h)
boolean
intersects(ProjectionRect r)
boolean
isEmpty()
boolean
nearlyEquals(ProjectionRect other)
Returns the result ofnearlyEquals(ProjectionRect, double)
, withMisc.defaultMaxRelativeDiffFloat
.boolean
nearlyEquals(ProjectionRect other, double maxRelDiff)
Returnstrue
if this rectangle is nearly equal toother
.void
setHeight(double h)
Deprecated.use buildervoid
setRect(double x, double y, double w, double h)
Deprecated.use buildervoid
setRect(ProjectionRect r)
Deprecated.use buildervoid
setWidth(double w)
Deprecated.use buildervoid
setX(double x)
Deprecated.use buildervoid
setY(double y)
Deprecated.use builderString
toString()
Get a String representation of this object.String
toString2(int ndec)
-
-
-
Constructor Detail
-
ProjectionRect
public ProjectionRect()
default constructor, initialized to center (0,0) and width (10000, 10000)
-
ProjectionRect
public ProjectionRect(ProjectionPoint corner1, ProjectionPoint corner2)
Construct a ProjectionRect from any two opposite corner points.- Parameters:
corner1
- a corner.corner2
- the opposite corner.
-
ProjectionRect
public ProjectionRect(ProjectionPoint minimum, double width, double height)
Construct a ProjectionRect from any two opposite corner points.- Parameters:
minimum
- lower left corner, ie the minimum x and ywidth
- x width.height
- y height
-
ProjectionRect
public ProjectionRect(ProjectionRect r)
Copy Constructor- Parameters:
r
- rectangle to copy
-
ProjectionRect
public ProjectionRect(double x1, double y1, double x2, double y2)
construct a MapArea from any two opposite corner points- Parameters:
x1
- x coord of any corner of the bounding boxy1
- y coord of the same corner as x1x2
- x coord of opposite corner from x1,y1y2
- y coord of same corner as x2
-
-
Method Detail
-
getX
public double getX()
-
getY
public double getY()
-
getWidth
public double getWidth()
-
getHeight
public double getHeight()
-
getMinX
public double getMinX()
Returns the smallest X coordinate of the framing rectangle of theShape
indouble
precision.- Returns:
- the smallest X coordinate of the framing
rectangle of the
Shape
. - Since:
- 1.2
-
getMinY
public double getMinY()
Returns the smallest Y coordinate of the framing rectangle of theShape
indouble
precision.- Returns:
- the smallest Y coordinate of the framing
rectangle of the
Shape
. - Since:
- 1.2
-
getMaxX
public double getMaxX()
Returns the largest X coordinate of the framing rectangle of theShape
indouble
precision.- Returns:
- the largest X coordinate of the framing
rectangle of the
Shape
. - Since:
- 1.2
-
getMaxY
public double getMaxY()
Returns the largest Y coordinate of the framing rectangle of theShape
indouble
precision.- Returns:
- the largest Y coordinate of the framing
rectangle of the
Shape
. - Since:
- 1.2
-
getCenterX
public double getCenterX()
Returns the X coordinate of the center of the framing rectangle of theShape
indouble
precision.- Returns:
- the X coordinate of the center of the framing rectangle
of the
Shape
. - Since:
- 1.2
-
getCenterY
public double getCenterY()
Returns the Y coordinate of the center of the framing rectangle of theShape
indouble
precision.- Returns:
- the Y coordinate of the center of the framing rectangle
of the
Shape
. - Since:
- 1.2
-
add
@Deprecated public void add(ProjectionRect r)
Deprecated.use builderAdds aRectangle2D
object to thisRectangle2D
. The resultingRectangle2D
is the union of the twoRectangle2D
objects.- Parameters:
r
- theRectangle2D
to add to thisRectangle2D
.- Since:
- 1.2
-
add
@Deprecated public void add(double newx, double newy)
Deprecated.use builderAdds a point, specified by the double precision argumentsnewx
andnewy
, to thisRectangle2D
. The resultingRectangle2D
is the smallestRectangle2D
that contains both the originalRectangle2D
and the specified point.After adding a point, a call to
contains
with the added point as an argument does not necessarily returntrue
. Thecontains
method does not returntrue
for points on the right or bottom edges of a rectangle. Therefore, if the added point falls on the left or bottom edge of the enlarged rectangle,contains
returnsfalse
for that point.- Parameters:
newx
- the X coordinate of the new pointnewy
- the Y coordinate of the new point- Since:
- 1.2
-
add
@Deprecated public void add(ProjectionPoint pt)
Deprecated.use builderAdds thePoint2D
objectpt
to thisRectangle2D
. The resultingRectangle2D
is the smallestRectangle2D
that contains both the originalRectangle2D
and the specifiedPoint2D
.After adding a point, a call to
contains
with the added point as an argument does not necessarily returntrue
. Thecontains
method does not returntrue
for points on the right or bottom edges of a rectangle. Therefore, if the added point falls on the left or bottom edge of the enlarged rectangle,contains
returnsfalse
for that point.- Parameters:
pt
- the newPoint2D
to add to thisRectangle2D
.- Since:
- 1.2
-
isEmpty
public boolean isEmpty()
-
intersects
public boolean intersects(ProjectionRect r)
-
intersects
public boolean intersects(double x, double y, double w, double h)
-
intersect
public static void intersect(ProjectionRect src1, ProjectionRect src2, ProjectionRect dest)
Intersects the pair of specified sourceRectangle2D
objects and puts the result into the specified destinationRectangle2D
object. One of the source rectangles can also be the destination to avoid creating a third Rectangle2D object, but in this case the original points of this source rectangle will be overwritten by this method.- Parameters:
src1
- the first of a pair ofRectangle2D
objects to be intersected with each othersrc2
- the second of a pair ofRectangle2D
objects to be intersected with each otherdest
- theRectangle2D
that holds the results of the intersection ofsrc1
andsrc2
- Since:
- 1.2
-
contains
public boolean contains(ProjectionPoint point)
Returnstrue
if this bounding box containspoint
.- Parameters:
point
- a point in projection coordinates.- Returns:
true
if this bounding box containspoint
.
-
contains
public boolean contains(ProjectionRect rect)
Returnstrue
if this bounding box containsrect
.- Parameters:
rect
- a bounding box in projection coordinates- Returns:
true
if this bounding box containsrect
.
-
getLowerRightPoint
public ProjectionPoint getLowerRightPoint()
Get the Lower Right Point- Returns:
- the Lower Right Point
-
getUpperRightPoint
public ProjectionPoint getUpperRightPoint()
Get the Upper Left Point (same as getMaxPoint)- Returns:
- the Upper Left Point
-
getLowerLeftPoint
public ProjectionPoint getLowerLeftPoint()
Get the Lower Right Point (same as getMinPoint)- Returns:
- the Lower Right Point
-
getUpperLeftPoint
public ProjectionPoint getUpperLeftPoint()
Get the Upper Left Point- Returns:
- the Upper Left Point
-
getMinPoint
public ProjectionPoint getMinPoint()
Get the minimum corner of the bounding box.- Returns:
- minimum corner of the bounding box
-
getMaxPoint
public ProjectionPoint getMaxPoint()
Get the maximum corner of the bounding box.- Returns:
- maximum corner of the bounding box
-
toString
public String toString()
Get a String representation of this object.
-
toString2
public String toString2(int ndec)
-
setX
@Deprecated public void setX(double x)
Deprecated.use builderset minimum X
-
setY
@Deprecated public void setY(double y)
Deprecated.use builderset minimum Y- Parameters:
y
- minimum y
-
setWidth
@Deprecated public void setWidth(double w)
Deprecated.use builderset X width- Parameters:
w
- x width
-
setHeight
@Deprecated public void setHeight(double h)
Deprecated.use builderset Y height- Parameters:
h
- Y height
-
setRect
@Deprecated public void setRect(ProjectionRect r)
Deprecated.use builder
-
setRect
@Deprecated public void setRect(double x, double y, double w, double h)
Deprecated.use builder
-
nearlyEquals
public boolean nearlyEquals(ProjectionRect other)
Returns the result ofnearlyEquals(ProjectionRect, double)
, withMisc.defaultMaxRelativeDiffFloat
.
-
nearlyEquals
public boolean nearlyEquals(ProjectionRect other, double maxRelDiff)
Returnstrue
if this rectangle is nearly equal toother
. The "near equality" of corners is determined usingProjectionPoint.nearlyEquals(ProjectionPoint, double)
, with the specified maxRelDiff.- Parameters:
other
- the other rectangle to check.maxRelDiff
- the maximumrelative difference
that two corners may have.- Returns:
true
if this rectangle is nearly equal toother
.
-
-