Rectangle2D
介绍 (Introduction)
Rectangle2D类声明由位置(x,y)和尺寸(wxh)定义的矩形。
类声明
以下是java.awt.geom.Rectangle2D类的声明:
public abstract class Rectangle2D
extends RectangularShape
字段 (Field)
以下是java.awt.geom.Arc2D类的字段:
static int OUT_BOTTOM - 指示某个点位于此Rectangle2D下方的位掩码。
static int OUT_LEFT - 指示某个点位于此Rectangle2D左侧的位掩码。
static int OUT_RIGHT - 指示某个点位于此Rectangle2D右侧的位掩码。
static int OUT_TOP - 指示某个点位于此Rectangle2D上方的位掩码。
类构造函数
SN | 构造函数和描述 |
---|---|
1 | protected Rectangle2D() 这是一个无法直接实例化的抽象类。 |
类方法
SN | 方法和描述 |
---|---|
1 | void add(double newx, double newy) 将双精度参数newx和newy指定的点添加到此Rectangle2D。 |
2 | void add(Point2D pt) 将Point2D对象pt添加到此Rectangle2D。 |
3 | void add(Rectangle2D r) 将Rectangle2D对象添加到此Rectangle2D。 |
4 | boolean contains(double x, double y) 测试指定的坐标是否在Shape的边界内。 |
5 | boolean contains(double x, double y, double w, double h) 测试Shape的内部是否完全包含指定的矩形区域。 |
6 | abstract Rectangle2D createIntersection(Rectangle2D r) 返回一个新的Rectangle2D对象,表示此Rectangle2D与指定Rectangle2D的交集。 |
7 | abstract Rectangle2D createUnion(Rectangle2D r) 返回一个新的Rectangle2D对象,表示此Rectangle2D与指定Rectangle2D的并集。 |
8 | boolean equals(Object obj) 确定指定的Object是否等于此Rectangle2D。 |
9 | Rectangle2D getBounds2D() 返回Shape的高精度和更精确的边界框,而不是getBounds方法。 |
10 | PathIterator getPathIterator(AffineTransform at) 返回一个迭代对象,该对象定义此Rectangle2D的边界。 |
11 | PathIterator getPathIterator(AffineTransform at, double flatness) 返回一个迭代对象,该对象定义展平的Rectangle2D的边界。 |
12 | int hashCode() 返回此Rectangle2D的哈希码。 |
13 | static void intersect(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest) 将指定的源Rectangle2D对象相交,并将结果放入指定的目标Rectangle2D对象。 |
14 | boolean intersects(double x, double y, double w, double h) 测试Shape的内部是否与指定矩形区域的内部相交。 |
15 | boolean intersectsLine(double x1, double y1, double x2, double y2) 测试指定的线段是否与此Rectangle2D的内部相交。 |
16 | boolean intersectsLine(Line2D l) 测试指定的线段是否与此Rectangle2D的内部相交。 |
17 | abstract int outcode(double x, double y) 确定指定坐标相对于此Rectangle2D的位置。 |
18 | int outcode(Point2D p) 确定指定的Point2D相对于此Rectangle2D的位置。 |
19 | void setFrame(double x, double y, double w, double h) 将此Rectangle2D的外边界的位置和大小设置为指定的矩形值。 |
20 | abstract void setRect(double x, double y, double w, double h) 将此Rectangle2D的位置和大小设置为指定的double值。 |
21 | void setRect(Rectangle2D r) 将此Rectangle2D设置为与指定的Rectangle2D相同。 |
22 | static void union(Rectangle2D src1, Rectangle2D src2, Rectangle2D dest) 联合一对源Rectangle2D对象,并将结果放入指定的目标Rectangle2D对象。 |
方法继承
该类继承以下类中的方法:
java.awt.geom.RectangularShape
java.lang.Object
Rectangle2D示例
使用您选择的任何编辑器创建以下java程序,例如D:/ 》 AWT 》 com 》 iowiki 》 gui 》
AWTGraphicsDemo.javapackage com.iowiki.gui;
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
public class AWTGraphicsDemo extends Frame {
public AWTGraphicsDemo(){
super("Java AWT Examples");
prepareGUI();
}
public static void main(String[] args){
AWTGraphicsDemo awtGraphicsDemo = new AWTGraphicsDemo();
awtGraphicsDemo.setVisible(true);
}
private void prepareGUI(){
setSize(400,400);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent windowEvent){
System.exit(0);
}
});
}
@Override
public void paint(Graphics g) {
Rectangle2D shape = new Rectangle2D.Float();
shape.setFrame(100, 150, 200,100);
Graphics2D g2 = (Graphics2D) g;
g2.draw (shape);
Font font = new Font("Serif", Font.PLAIN, 24);
g2.setFont(font);
g.drawString("Welcome to IoWiki", 50, 70);
g2.drawString("Rectangle2D.Rectangle", 100, 120);
}
}
使用命令提示符编译程序。 转到D:/ 》 AWT并键入以下命令。
D:\AWT>javac com\iowiki\gui\AWTGraphicsDemo.java
如果没有错误,那意味着编译成功。 使用以下命令运行程序。
D:\AWT>java com.iowiki.gui.AWTGraphicsDemo
验证以下输出