Classe AWT CubicCurve2D

introduzione

La classe CubicCurve2D indica un segmento di curva parametrica cubica nello spazio delle coordinate (x, y).

Dichiarazione di classe

Di seguito è riportata la dichiarazione per java.awt.geom.CubicCurve2Dclasse:

public abstract class CubicCurve2D
   extends Object
      implements Shape, Cloneable

Costruttori di classi

SNCostruttore e descrizione
1protected CubicCurve2D()

Questa è una classe astratta che non può essere istanziata direttamente.

Metodi di classe

SNMetodo e descrizione
1

Object clone()

Crea un nuovo oggetto della stessa classe di questo oggetto.

2

boolean contains(double x, double y)

Verifica se le coordinate specificate si trovano all'interno del limite della forma.

3

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

Verifica se l'interno della forma contiene interamente l'area rettangolare specificata.

4

boolean contains(Point2D p)

Verifica se un Point2D specificato si trova all'interno del limite di Shape.

5

boolean contains(Rectangle2D r)

Verifica se l'interno di Shape contiene interamente il Rectangle2D specificato.

6

Rectangle getBounds()

Restituisce un intero rettangolo che racchiude completamente la forma.

7

abstract Point2D getCtrlP1()

Restituisce il primo punto di controllo.

8

abstract Point2D getCtrlP2()

Restituisce il secondo punto di controllo.

9

abstract double getCtrlX1()

Restituisce la coordinata X del primo punto di controllo in doppia precisione.

10

abstract double getCtrlX2()

Restituisce la coordinata X del secondo punto di controllo con doppia precisione.

11

abstract double getCtrlY1()

Restituisce la coordinata Y del primo punto di controllo in doppia precisione.

12

abstract double getCtrlY2()

Restituisce la coordinata Y del secondo punto di controllo in doppia precisione.

13

double getFlatness()

Restituisce la planarità di questa curva.

14

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

Restituisce la planarità della curva cubica specificata dai punti di controllo memorizzati nella matrice indicata all'indice indicato.

15

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

Restituisce la planarità della curva cubica specificata dai punti di controllo indicati.

16

double getFlatnessSq()

Restituisce il quadrato della planarità di questa curva.

17

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

Restituisce il quadrato della planarità della curva cubica specificata dai punti di controllo memorizzati nella matrice indicata all'indice indicato.

18

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

Restituisce il quadrato della planarità della curva cubica specificata dai punti di controllo indicati.

19

abstract Point2D getP1()

Restituisce il punto di partenza.

20

abstract Point2D getP2()

Restituisce il punto finale.

21

PathIterator getPathIterator(AffineTransform at)

Restituisce un oggetto di iterazione che definisce il limite della forma.

22

PathIterator getPathIterator(AffineTransform at, double flatness)

Restituisce un oggetto di iterazione che definisce il confine della forma appiattita.

23

abstract double getX1()

Restituisce la coordinata X del punto iniziale in doppia precisione.

24

abstract double getX2()

Restituisce la coordinata X del punto finale con doppia precisione.

25

abstract double getY1()

Restituisce la coordinata Y del punto iniziale in doppia precisione.

26

abstract double getY2()

Restituisce la coordinata Y del punto finale con doppia precisione.

27

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

Verifica se l'interno della forma interseca l'interno di un'area rettangolare specificata.

28

boolean intersects(Rectangle2D r)

Verifica se l'interno di Shape interseca l'interno di un Rectangle2D specificato.

29

void setCurve(CubicCurve2D c)

Imposta la posizione dei punti finali e dei punti di controllo di questa curva come quelli nella CubicCurve2D specificata.

30

void setCurve(double[] coords, int offset)

Imposta la posizione dei punti finali e dei punti di controllo di questa curva sulle coordinate doppie all'offset specificato nella matrice specificata.

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

Imposta la posizione dei punti finali e dei punti di controllo di questa curva sulle coordinate doppie specificate.

32

void setCurve(Point2D[] pts, int offset)

Imposta la posizione dei punti finali e dei punti di controllo di questa curva sulle coordinate degli oggetti Point2D all'offset specificato nella matrice specificata.

33

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

Imposta la posizione dei punti finali e dei punti di controllo di questa curva sulle coordinate Point2D specificate.

34

static int solveCubic(double[] eqn)

Risolve il cubo i cui coefficienti sono nell'array eqn e inserisce le radici non complesse nello stesso array, restituendo il numero di radici.

35

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

Risolvi il cubo i cui coefficienti sono nell'array eqn e posiziona le radici non complesse nell'array res, restituendo il numero di radici.

36

void subdivide(CubicCurve2D left, CubicCurve2D right)

Suddivide questa curva cubica e memorizza le due curve suddivise risultanti nei parametri della curva sinistra e destra.

37

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

Suddivide la curva cubica specificata dal parametro src e memorizza le due curve suddivise risultanti nei parametri della curva sinistra e destra.

38

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

Suddivide la curva cubica specificata dalle coordinate memorizzate nella matrice src agli indici da srcoff a (srcoff + 7) e memorizza le due curve suddivise risultanti nelle due matrici di risultati agli indici corrispondenti.

Metodi ereditati

Questa classe eredita i metodi dalle classi seguenti:

  • java.lang.Object

CubicCurve2D Esempio

Crea il seguente programma java usando qualsiasi editor di tua scelta, diciamo 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) {
      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 TutorialsPoint", 50, 70);
      g2.drawString("CubicCurve2D.Curve", 100, 120);
   }
}

Compilare il programma utilizzando il prompt dei comandi. Vai aD:/ > AWT

e digita il seguente comando.

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

Se non viene visualizzato alcun errore, significa che la compilazione è riuscita. Esegui il programma utilizzando il seguente comando.

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

Verificare il seguente output