public class Rectangle2D
extends java.lang.Object
implements java.io.Serializable
二维矩形类。
该类主要用来描述地图的地理坐标范围。
限定符和类型 | 字段和说明 |
---|---|
Point2D |
leftBottom
左下角坐标。
|
Point2D |
rightTop
右上角坐标。
|
构造器和说明 |
---|
Rectangle2D()
默认构造函数。
|
Rectangle2D(double left, double bottom, double right, double top)
带参构造函数。
|
Rectangle2D(Point2D leftBottom, Point2D rightTop)
带参构造函数。
|
Rectangle2D(Rectangle2D rect2D)
拷贝构造函数。
|
限定符和类型 | 方法和说明 |
---|---|
Point2D |
center()
获取矩形的中心点。
|
boolean |
contains(double x, double y)
判定指定坐标构成的点是否包含在此矩形内。
|
boolean |
contains(Point2D point2D)
判定指定的点是否包含在此矩形内。
|
boolean |
contains(Rectangle2D rect2D)
判定指定的矩形区域是否完全包含在此矩形内。
|
boolean |
equals(java.lang.Object obj)
比较指定对象与当前 Rectangle2D 对象是否相等。
|
double |
getBottom()
设置矩形范围的左下角 y 坐标。
|
Point2D |
getCenter()
已过时。
|
double |
getHeight()
已过时。
|
double |
getLeft()
获取矩形范围的左下角 x 坐标
|
double |
getRight()
获取矩形范围的右上角 x 坐标
|
double |
getTop()
获取矩形范围的右上角 y 坐标。
|
double |
getWidth()
已过时。
|
int |
hashCode()
生成哈希码。
|
double |
height()
获取矩形的高度。
|
static boolean |
isIntersected(Rectangle2D oneRect2D, Rectangle2D anotherRect2D)
判断两个矩形是否相交。
|
static boolean |
isIntersected(Rectangle2D oneRect2D, Rectangle2D anotherRect2D, int precision)
根据指定的对比精度,判断两个矩形是否相交。
|
boolean |
isValid()
判断所获取的二维矩形宽度和高度是否合法。
|
Rectangle2D |
moveToCenter(double x, double y)
移动 Rectangle2D 对象,使其中心点在指定的 X ,Y 位置上。
|
Rectangle2D |
moveToCenter(Point2D point2D)
移动 Rectangle2D 对象,使其中心点在指定的二维点位置上。
|
Rectangle2D |
offset(double offsetX, double offsetY)
将矩形在 x 方向平移 dx,在 y 方向平移 dy。
|
Rectangle2D |
setBottom(double bottom)
设置矩形范围的左下角 y 坐标
|
Rectangle2D |
setLeft(double left)
设置矩形范围的左下角 x 坐标
|
Rectangle2D |
setRight(double right)
设置矩形范围的右上角 x 坐标。
|
Rectangle2D |
setTop(double top)
设置矩形范围的右上角 y 坐标。
|
java.lang.String |
toString()
将 Rectangle2D 对象的左下角和右上角的坐标转换成 String 形式。
|
static Rectangle2D |
union(Rectangle2D[] rect2Ds)
对 Rectangle2D 数组中的 Rectangle2D 进行并集计算,获取并集的最小外接矩形。
|
double |
width()
获取矩形的宽度。
|
Rectangle2D |
zoom(double ratio)
缩放。
|
public Rectangle2D()
默认构造函数。
public Rectangle2D(Rectangle2D rect2D)
拷贝构造函数。
rect2D
- 二维矩形几何对象。java.lang.IllegalArgumentException
- 当二维矩形几何对象为 Null 或当二维矩形几何对象的参数不合法时抛出异常。public Rectangle2D(Point2D leftBottom, Point2D rightTop)
带参构造函数。
用指定的坐标初始化 Rectangle2D 类的新实例。
leftBottom
- 左下角坐标。rightTop
- 右上角坐标。java.lang.IllegalArgumentException
- 当左下角坐标或右上角坐标为 Null 时抛出异常。public Rectangle2D(double left, double bottom, double right, double top)
带参构造函数。
用指定的坐标初始化 Rectangle2D 类的新实例。
left
- 左下角 x 坐标。bottom
- 左下角 y 坐标。right
- 右上角 x 坐标。top
- 右上角 y 坐标。public double width()
获取矩形的宽度。
其值为右边界坐标值与左边界坐标值之差。
@Deprecated public double getWidth()
public double height()
获取矩形的高度。
其值为上边界坐标值与下边界坐标值之差。
@Deprecated public double getHeight()
public Point2D center()
获取矩形的中心点。
其 x 坐标为(左边界坐标值+右边界坐标值)/2,y 坐标值为(上边界坐标值+下边界坐标值)/2。
@Deprecated public Point2D getCenter()
public static Rectangle2D union(Rectangle2D[] rect2Ds)
对 Rectangle2D 数组中的 Rectangle2D 进行并集计算,获取并集的最小外接矩形。
rect2Ds
- 用于求并的 Rectangle2D 对象数组。public static boolean isIntersected(Rectangle2D oneRect2D, Rectangle2D anotherRect2D)
判断两个矩形是否相交。
oneRect2D
- 矩形1。anotherRect2D
- 矩形2。java.lang.IllegalArgumentException
- 当矩形1或矩形2为 Null 时抛出异常。public static boolean isIntersected(Rectangle2D oneRect2D, Rectangle2D anotherRect2D, int precision)
根据指定的对比精度,判断两个矩形是否相交。
oneRect2D
- 矩形1。anotherRect2D
- 矩形2。precision
- 指示精度为 10 的 -precision 方,例如设置为“10”,则精度为 1E-10。java.lang.IllegalArgumentException
- 当矩形1或矩形2为 Null 时抛出异常。public boolean equals(java.lang.Object obj)
比较指定对象与当前 Rectangle2D 对象是否相等。
equals
在类中 java.lang.Object
obj
- 与当前 Rectangle2D 对象进行比较的对象。public int hashCode()
生成哈希码。
hashCode
在类中 java.lang.Object
public java.lang.String toString()
将 Rectangle2D 对象的左下角和右上角的坐标转换成 String 形式。
toString
在类中 java.lang.Object
Rectangle2D 对象的左下角和右上角的坐标转换成 String 形式。
public boolean contains(Point2D point2D)
判定指定的点是否包含在此矩形内。
当点在矩形内部和边界上时,均认为其包含在矩形内。
point2D
- 指定的二维点对象。java.lang.IllegalArgumentException
- 当指定的二维点对象为 Null 时抛出异常。public boolean contains(Rectangle2D rect2D)
判定指定的矩形区域是否完全包含在此矩形内。
当指定矩形在此矩形内部,或与此矩形重合时,均认为其完全包含在此矩形内。
rect2D
- 指定的矩形对象。java.lang.IllegalArgumentException
public boolean contains(double x, double y)
判定指定坐标构成的点是否包含在此矩形内。
当点在矩形内部和边界上时,均认为其包含在矩形内。
x
- 指定的 x 坐标。y
- 指定的 y 坐标。public Rectangle2D moveToCenter(Point2D point2D)
移动 Rectangle2D 对象,使其中心点在指定的二维点位置上。
point2D
- 指定的二维点对象。public Rectangle2D moveToCenter(double x, double y)
移动 Rectangle2D 对象,使其中心点在指定的 X ,Y 位置上。
x
- 指定的 X 坐标。y
- 指定的 Y 坐标。public Rectangle2D offset(double offsetX, double offsetY)
将矩形在 x 方向平移 dx,在 y 方向平移 dy。
新的左边界坐标值=原始左边界坐标值+dx;
新的下边界坐标值=原始下边界坐标值+dy;
新的右边界坐标值=原始右边界坐标值+dx;
新的上边界坐标值=原始上边界坐标值+dy。
如图所示为一个矩形平移后的效果,注意矩形的大小未发生变化。
offsetX
- 水平偏移量。offsetY
- 垂直偏移量。public Rectangle2D zoom(double ratio)
缩放。
保持中心点不变,将矩形的宽度与高度按照指定的比例进行缩放。
ratio
- 缩放比例。public boolean isValid()
判断所获取的二维矩形宽度和高度是否合法。
public double getLeft()
public Rectangle2D setLeft(double left)
left
- 左下角 x 坐标public double getRight()
public Rectangle2D setRight(double right)
right
- 右上角 x 坐标。public Rectangle2D setTop(double top)
top
- 右上角 y 坐标。public double getTop()
public Rectangle2D setBottom(double bottom)
bottom
- 左下角 y 坐标public double getBottom()