AWT QuadCurve2D 类

简介

QuadCurve2D 类表示 (x,y) 坐标空间中的二次参数曲线段。

类声明

以下是 java.awt.geom.QuadCurve2D 类的声明:

public abstract class QuadCurve2D
    extends Object
        implements Shape, Cloneable

类构造函数

S.N.构造函数 &描述
1protected QuadCurve2D() ()

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

类方法

S.N.方法 &描述
1

Object clone()

创建与此对象具有相同类和相同内容的新对象。

2

boolean contains(double x, double y)

测试指定的坐标是否在 Shape 的边界内。

3

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

测试 Shape 的内部是否完全包含指定的矩形区域。

4

boolean contains(Point2D p)

测试指定的 Point2D位于 Shape 的边界内。

5

boolean contains(Rectangle2D r)

测试 Shape 的内部是否完全包含指定的 Rectangle2D。

6

Rectangle getBounds()

返回一个完全包围 Shape 的整数 Rectangle。

7

abstract Point2D getCtrlPt()

返回控制点。

8

abstract double getCtrlX()

返回控制点的 X 坐标双精度。

9

abstract double getCtrlY()

以双精度返回控制点的 Y 坐标。

10

doublegetFlatness()

返回此 QuadCurve2D 的平坦度,即控制点与连接端点的线之间的最大距离。

11

static double getFlatness(double[] coords, int offset)

返回由指示数组中存储的控制点指定的二次曲线的平坦度,即控制点与连接端点的线之间的最大距离索引。

12

static double getFlatness(double x1, double y1, double ctrlx, double ctrly, double x2, double y2)

返回由指定控制点指定的二次曲线的平坦度,即控制点与连接端点的线之间的最大距离。

13

double getFlatnessSq()

返回此 QuadCurve2D 的平坦度的平方,即控制点与连接端点的线之间的最大距离。

14

static double getFlatnessSq(double[] coords, int offset)

返回由指定索引处存储的指定数组中的控制点指定的二次曲线的平坦度的平方或控制点与连接端点的线的最大距离。

15

static double getFlatnessSq(double x1, double y1, double ctrlx, double ctrly, double x2, double y2)

返回由指定控制点指定的二次曲线的平坦度的平方或控制点与连接端点的线的最大距离。

16

abstract Point2D getP1()

返回起点。

17abstract Point2D getP2()

返回终点。

18

PathIterator getPathIterator(AffineTransform at)

返回定义此 QuadCurve2D 形状边界的迭代对象。

19

PathIterator getPathIterator(AffineTransform at, double flatness)

返回定义此 QuadCurve2D 扁平形状边界的迭代对象。

20

abstract double getX1()

以 double in 形式返回起点的 X 坐标精度。

21

abstract double getX2()

以双精度返回终点的 X 坐标。

22

abstract double getY1()

以双精度返回起点的 Y 坐标。

23

abstract double getY2()

以双精度返回终点的 Y 坐标。

24

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

测试内部Shape 的与指定矩形区域内部相交。

25

boolean intersects(Rectangle2D r)

测试 Shape 的内部是否与指定的 Rectangle2D 的内部相交。

26

void setCurve(double[] coords, int offset)

将此 QuadCurve2D 的端点和控制点的位置设置为指定数组中指定偏移量的双精度坐标。

27

abstract void setCurve(double x1, double y1, double ctrlx, double ctrly, double x2, double y2)

将此曲线的端点和控制点的位置设置为指定的双精度坐标。

28

void setCurve(Point2D[] pts, int offset)

将此 QuadCurve2D 的端点和控制点的位置设置为指定数组中指定偏移量的 Point2D 对象的坐标。

29

void setCurve(Point2D p1, Point2D cp, Point2D p2)

将此 QuadCurve2D 的端点和控制点的位置设置为指定的 Point2D坐标。

30

void setCurve(QuadCurve2D c)

将此 QuadCurve2D 的端点和控制点的位置设置为与指定 QuadCurve2D 中的位置相同。

31

static int solvedQuadratic(double[] eqn)

求解系数在 eqn 数组中的二次方程,并将非复数根放回同一数组中,返回根的数量。

32

static int solvedQuadratic(double[] eqn, double[] res)

求解二次方程,其系数位于 eqn 数组中,并将非复数根放入 res 数组中,返回根的数量。

33

static void subdivide(double[] src, int srcoff, double[] left, int leftoff, double[] right, int rightoff)

将存储在 src 数组中索引 srcoff 到 srcoff + 5 处的坐标指定的二次曲线细分,并将得到的两个细分曲线存储到相应索引处的两个结果数组中。

34

void subdivide(QuadCurve2D left, QuadCurve2D right)

细分此 QuadCurve2D,并将得到的两条细分曲线存储到左曲线和右曲线参数中。

35

static void subdivide(QuadCurve2D src, QuadCurve2D left, QuadCurve2D right)

细分 src 参数指定的二次曲线,并将得到的两条细分曲线存储到左曲线和右曲线参数中。

继承的方法

此类从以下类继承方法:

  • java.lang.Object

QuadCurve2D 示例

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

AWTGraphicsDemo
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) {
      QuadCurve2D shape = new QuadCurve2D.Double();
      shape.setCurve(250D,250D,100D,100D,200D,150D);  
      Graphics2D g2 = (Graphics2D) g; 
      g2.draw (shape);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g2.setFont(font);
      g.drawString("Welcome to TutorialsPoint", 50, 70);
      g2.drawString("QuadCurve2D.Curve", 100, 120);  
   }
}

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

D:\AWT>javac com	utorialspoint\gui\AWTGraphicsDemo.java

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

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

验证以下输出

AWT QuadCurve2D

awt_graphics.html