Awt-cubiccurve2d-class

提供:Dev Guides
移動先:案内検索

AWT CubicCurve2Dクラス

前書き

CubicCurve2Dクラスは、(x、y)座標空間で3次パラメトリック曲線セグメントを示します。

クラス宣言

  • java.awt.geom.CubicCurve2D *classの宣言は次のとおりです。
public abstract class CubicCurve2D
   extends Object
      implements Shape, Cloneable

クラスコンストラクター

S.N. Constructor & Description
1
  • protected CubicCurve2D()*

これは、直接インスタンス化できない抽象クラスです。

クラスメソッド

S.N. Method & Description
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 getCtrlP1()

最初の制御点を返します。

8

abstract Point2D getCtrlP2()

2番目の制御点を返します。

9

abstract double getCtrlX1()

最初の制御点のX座標を倍精度で返します。

10

abstract double getCtrlX2()

2番目の制御点のX座標を倍精度で返します。

11

abstract double getCtrlY1()

最初の制御点のY座標を倍精度で返します。

12

abstract double getCtrlY2()

2番目の制御点のY座標を倍精度で返します。

13

double getFlatness()

この曲線の平坦度を返します。

14

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

指定されたインデックスで指定された配列に格納されたコントロールポイントによって指定された3次曲線の平坦性を返します。

15

static double getFlatness(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)

指定されたコントロールポイントによって指定された3次曲線の平坦度を返します。

16

double getFlatnessSq()

この曲線の平坦度の二乗を返します。

17

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

指定されたインデックスの指定された配列に格納されたコントロールポイントによって指定された3次曲線の平坦度の2乗を返します。

18

static double getFlatnessSq(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)

指定されたコントロールポイントによって指定された3次曲線の平坦度の2乗を返します。

19

abstract Point2D getP1()

開始点を返します。

20

abstract Point2D getP2()

終点を返します。

21

PathIterator getPathIterator(AffineTransform at)

形状の境界を定義する反復オブジェクトを返します。

22

PathIterator getPathIterator(AffineTransform at, double flatness)

平坦化された形状の境界を定義する反復オブジェクトを返します。

23

abstract double getX1()

開始点のX座標を倍精度で返します。

24

abstract double getX2()

終点のX座標を倍精度で返します。

25

abstract double getY1()

開始点のY座標を倍精度で返します。

26

abstract double getY2()

終点のY座標を倍精度で返します。

27

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

Shapeの内部が指定された矩形領域の内部と交差するかどうかをテストします。

28

boolean intersects(Rectangle2D r)

Shapeの内部が指定されたRectangle2Dの内部と交差するかどうかをテストします。

29

void setCurve(CubicCurve2D c)

この曲線の終点と制御点の位置を、指定されたCubicCurve2Dの位置と同じに設定します。

30

void setCurve(double[] coords, int offset)

この曲線の終点と制御点の位置を、指定された配列内の指定されたオフセットにある二重座標に設定します。

31

abstract void setCurve(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2)

この曲線の終点と制御点の位置を、指定された二重座標に設定します。

32

void setCurve(Point2D[] pts, int offset)

この曲線の端点と制御点の位置を、指定された配列内の指定されたオフセットにあるPoint2Dオブジェクトの座標に設定します。

33

void setCurve(Point2D p1, Point2D cp1, Point2D cp2, Point2D p2)

この曲線の終点と制御点の位置を、指定されたPoint2D座標に設定します。

34

static int solveCubic(double[] eqn)

係数がeqn配列にあるキュービックを解き、複雑でない根を同じ配列に戻し、根の数を返します。

35

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

係数がeqn配列にあるキュービックを解き、非複雑なルートをres配列に配置して、ルートの数を返します。

36

void subdivide(CubicCurve2D left, CubicCurve2D right)

この3次曲線を細分割し、結果の2つの細分割された曲線を左右の曲線パラメーターに保存します。

37

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

srcパラメータで指定された3次曲線を細分割し、結果の2つの細分割された曲線を左右の曲線パラメータに保存します。

38

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

srcoffから(srcoff + 7)のインデックスでsrc配列に保存された座標で指定された3次曲線を分割し、結果の2つの分割曲線を対応するインデックスの2つの結果配列に保存します。

継承されたメソッド

このクラスは、次のクラスからメソッドを継承します。

  • java.lang.Object

CubicCurve2Dの例

たとえば、 D:/> AWT> com> finddevguides> gui> の任意のエディターを使用して、次のJavaプログラムを作成します。

AWTGraphicsDemo.java

package com.finddevguides.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) {
      CubicCurve2D shape = new CubicCurve2D.Float();
      shape.setCurve(250F,250F,20F,90F,140F,100F,350F,330F);
      Graphics2D g2 = (Graphics2D) g;
      g2.draw (shape);
      Font font = new Font("Serif", Font.PLAIN, 24);
      g2.setFont(font);
      g.drawString("Welcome to finddevguides", 50, 70);
      g2.drawString("CubicCurve2D.Curve", 100, 120);
   }
}

コマンドプロンプトを使用してプログラムをコンパイルします。 D:/> AWT に移動します

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

エラーが発生しない場合は、コンパイルが成功したことを意味します。 次のコマンドを使用してプログラムを実行します。

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

次の出力を確認します

AWT CubicCurve2D