AWT Arc2D 类



介绍

Arc2D 类是所有存储由框架矩形、起始角度、角度范围(弧长)和闭合类型(OPEN、CHORD 或 PIE)定义的二维弧的对象的超类。

类声明

以下是java.awt.Arc2D类的声明

public abstract class Arc2D
   extends RectangularShape

字段

以下是java.awt.geom.Arc2D类的字段

  • static int CHORD -- 通过绘制从弧段开始到弧段结束的直线段来闭合弧的闭合类型。

  • static int OPEN -- 没有连接弧段两端的路径段的开放弧的闭合类型。

  • static int PIE -- 通过绘制从弧段开始到完整椭圆中心的直线段以及从该点到弧段结束的直线段来闭合弧的闭合类型。

类构造函数

序号构造函数 & 描述
1

protected Arc2D(int type)

这是一个抽象类,不能直接实例化。

类方法

序号方法 & 描述
1

boolean contains(double x, double y)

确定指定点是否在弧的边界内。

2

boolean contains(double x, double y, double w, double h)

确定弧的内部是否完全包含指定的矩形。

3

boolean contains(Rectangle2D r)

确定弧的内部是否完全包含指定的矩形。

4

boolean containsAngle(double angle)

确定指定角度是否在弧的角度范围内。

5

boolean equals(Object obj)

确定指定的 Object 是否等于此 Arc2D。

6

abstract double getAngleExtent()

返回弧的角度范围。

7

abstract double getAngleStart()

返回弧的起始角度。

8

int getArcType()

返回弧的弧闭合类型:OPEN、CHORD 或 PIE。

9

Rectangle2D getBounds2D()

返回弧的高精度框架矩形。

10

Point2D getEndPoint()

返回弧的结束点。

11

PathIterator getPathIterator(AffineTransform at)

返回一个迭代对象,该对象定义弧的边界。

12

Point2D getStartPoint()

返回弧的起始点。

13

int hashCode()

返回此 Arc2D 的哈希码。

14

boolean intersects(double x, double y, double w, double h)

确定弧的内部是否与指定矩形的内部相交。

15

protected abstract Rectangle2D makeBounds(double x, double y, double w, double h)

构造一个适当精度的 Rectangle2D,以容纳计算为该弧的框架矩形的参数。

16

abstract void setAngleExtent(double angExt)

将此弧的角度范围设置为指定双精度值。

17

void setAngles(double x1, double y1, double x2, double y2)

使用两组坐标设置此弧的起始角度和角度范围。

18

void setAngles(Point2D p1, Point2D p2)

使用两个点设置此弧的起始角度和角度范围。

19

abstract void setAngleStart(double angSt)

将此弧的起始角度设置为指定双精度值。

20

void setAngleStart(Point2D p)

将此弧的起始角度设置为指定点相对于此弧中心的定义角度。

21

void setArc(Arc2D a)

将此弧设置为与指定弧相同。

22

abstract void setArc(double x, double y, double w, double h, double angSt, double angExt, int closure)

将此弧的位置、大小、角度范围和闭合类型设置为指定的双精度值。

23

void setArc(Point2D loc, Dimension2D size, double angSt, double angExt, int closure)

将此弧的位置、大小、角度范围和闭合类型设置为指定的值。

24

void setArc(Rectangle2D rect, double angSt, double angExt, int closure)

将此弧的位置、大小、角度范围和闭合类型设置为指定的值。

25

void setArcByCenter(double x, double y, double radius, double angSt, double angExt, int closure)

将此弧的位置、边界、角度范围和闭合类型设置为指定的值。

26

void setArcByTangent(Point2D p1, Point2D p2, Point2D p3, double radius)

将此弧的位置、边界和角度范围设置为指定的值。

27

void setArcType(int type)

将此弧的闭合类型设置为指定的值:OPEN、CHORD 或 PIE。

28

void setFrame(double x, double y, double w, double h)

将此 Shape 的框架矩形的位置和大小设置为指定的矩形值。

继承的方法

此类继承自以下类的方法

  • java.awt.geom.RectangularShape

  • java.lang.Object

Arc2D 示例

使用您选择的任何编辑器创建以下 Java 程序,例如在D:/ > AWT > com > tutorialspoint > gui >

AWTGraphicsDemo.java
package com.tutorialspoint.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) {
      Arc2D.Float arc = new Arc2D.Float(Arc2D.PIE);
      arc.setFrame(70, 200, 150, 150);
      arc.setAngleStart(0);
      arc.setAngleExtent(145);
      Graphics2D g2 = (Graphics2D) g; 
      g2.setColor(Color.gray);
      g2.draw(arc);
      g2.setColor(Color.red);
      g2.fill(arc);
      g2.setColor(Color.black);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g2.setFont(font);
      g.drawString("Welcome to TutorialsPoint", 50, 70);
      g2.drawString("Arc2D.PIE", 100, 120); 
   }
}

使用命令提示符编译程序。转到D:/ > AWT并键入以下命令。

D:\AWT>javac com\tutorialspoint\gui\AwtGraphicsDemo.java

如果没有任何错误,则表示编译成功。使用以下命令运行程序。

D:\AWT>java com.tutorialspoint.gui.AwtGraphicsDemo

验证以下输出

AWT Arc2D
awt_graphics.htm
广告