当前位置: 首页 > 文档资料 > JAVA AWT 中文文档 >

Rectangle2D

优质
小牛编辑
140浏览
2023-12-01

介绍 (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.java
package 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

验证以下输出

AWT Rectangle2D