Classe AWT QuadCurve2D

introduzione

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

Dichiarazione di classe

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

public abstract class QuadCurve2D
   extends Object
      implements Shape, Cloneable

Costruttori di classi

SNCostruttore e descrizione
1protected QuadCurve2D() ()

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 e con lo stesso contenuto 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 getCtrlPt()

Restituisce il punto di controllo.

8

abstract double getCtrlX()

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

9

abstract double getCtrlY()

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

10

doublegetFlatness()

Restituisce la planarità, o la distanza massima di un punto di controllo dalla linea che collega i punti finali, di questo QuadCurve2D.

11

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

Restituisce la planarità, o la distanza massima di un punto di controllo dalla linea che collega i punti finali, della curva quadratica specificata dai punti di controllo memorizzati nella matrice indicata all'indice indicato.

12

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

Restituisce la planarità, o la distanza massima di un punto di controllo dalla linea che collega i punti finali, della curva quadratica specificata dai punti di controllo indicati.

13

double getFlatnessSq()

Restituisce il quadrato della planarità, o distanza massima di un punto di controllo dalla linea che collega i punti finali, di questo QuadCurve2D.

14

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

Restituisce il quadrato della planarità, o distanza massima di un punto di controllo dalla linea che collega i punti finali, della curva quadratica specificata dai punti di controllo memorizzati nella matrice indicata all'indice indicato.

15

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

Restituisce il quadrato della planarità, o distanza massima di un punto di controllo dalla linea che collega i punti finali, della curva quadratica specificata dai punti di controllo indicati.

16

abstract Point2D getP1()

Restituisce il punto di partenza.

17abstract Point2D getP2()

Restituisce il punto finale.

18

PathIterator getPathIterator(AffineTransform at)

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

19

PathIterator getPathIterator(AffineTransform at, double flatness)

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

20

abstract double getX1()

Restituisce la coordinata X del punto iniziale in doppia precisione.

21

abstract double getX2()

Restituisce la coordinata X del punto finale con doppia precisione.

22

abstract double getY1()

Restituisce la coordinata Y del punto iniziale in doppia precisione.

23

abstract double getY2()

Restituisce la coordinata Y del punto finale con doppia precisione.

24

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

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

25

boolean intersects(Rectangle2D r)

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

26

void setCurve(double[] coords, int offset)

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

27

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

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

28

void setCurve(Point2D[] pts, int offset)

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

29

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

Imposta la posizione dei punti finali e del punto di controllo di questo QuadCurve2D sulle coordinate Point2D specificate.

30

void setCurve(QuadCurve2D c)

Imposta la posizione dei punti finali e del punto di controllo di questo QuadCurve2D sullo stesso di quelli nel QuadCurve2D specificato.

31

static int solveQuadratic(double[] eqn)

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

32

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

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

33

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

Suddivide la curva quadratica specificata dalle coordinate memorizzate nell'array src agli indici da srcoff a srcoff + 5 e memorizza le due curve suddivise risultanti nelle due matrici di risultati agli indici corrispondenti.

34

void subdivide(QuadCurve2D left, QuadCurve2D right)

Suddivide questo QuadCurve2D e memorizza le due curve suddivise risultanti nei parametri della curva sinistra e destra.

35

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

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

Metodi ereditati

Questa classe eredita i metodi dalle classi seguenti:

  • java.lang.Object

QuadCurve2D Esempio

Crea il seguente programma java usando qualsiasi editor di tua scelta, diciamo D:/ > AWT > com > tutorialspoint > gui >

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);  
   }
}

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