Classe AWT CubicCurve2D
Introdução
A classe CubicCurve2D indica um segmento de curva paramétrica cúbica no espaço de coordenadas (x, y).
Declaração de classe
A seguir está a declaração para java.awt.geom.CubicCurve2Dclasse:
public abstract class CubicCurve2D
extends Object
implements Shape, Cloneable
Construtores de classe
SN | Construtor e descrição |
---|---|
1 | protected CubicCurve2D() Esta é uma classe abstrata que não pode ser instanciada diretamente. |
Métodos de aula
SN | Método e Descrição |
---|---|
1 | Object clone() Cria um novo objeto da mesma classe que este objeto. |
2 | boolean contains(double x, double y) Testa se as coordenadas especificadas estão dentro dos limites da Forma. |
3 | boolean contains(double x, double y, double w, double h) Testa se o interior da Forma contém inteiramente a área retangular especificada. |
4 | boolean contains(Point2D p) Testa se um Point2D especificado está dentro dos limites da Forma. |
5 | boolean contains(Rectangle2D r) Testa se o interior da Forma contém inteiramente o Rectangle2D especificado. |
6 | Rectangle getBounds() Retorna um retângulo inteiro que envolve completamente a forma. |
7 | abstract Point2D getCtrlP1() Retorna o primeiro ponto de controle. |
8 | abstract Point2D getCtrlP2() Retorna o segundo ponto de controle. |
9 | abstract double getCtrlX1() Retorna a coordenada X do primeiro ponto de controle em precisão dupla. |
10 | abstract double getCtrlX2() Retorna a coordenada X do segundo ponto de controle em precisão dupla. |
11 | abstract double getCtrlY1() Retorna a coordenada Y do primeiro ponto de controle em precisão dupla. |
12 | abstract double getCtrlY2() Retorna a coordenada Y do segundo ponto de controle em precisão dupla. |
13 | double getFlatness() Retorna o nivelamento desta curva. |
14 | static double getFlatness(double[] coords, int offset) Retorna a planura da curva cúbica especificada pelos pontos de controle armazenados na matriz indicada no índice indicado. |
15 | static double getFlatness(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2) Retorna o nivelamento da curva cúbica especificada pelos pontos de controle indicados. |
16 | double getFlatnessSq() Retorna o quadrado da planura desta curva. |
17 | static double getFlatnessSq(double[] coords, int offset) Retorna o quadrado da planura da curva cúbica especificada pelos pontos de controle armazenados na matriz indicada no índice indicado. |
18 | static double getFlatnessSq(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2) Retorna o quadrado da planura da curva cúbica especificada pelos pontos de controle indicados. |
19 | abstract Point2D getP1() Retorna o ponto inicial. |
20 | abstract Point2D getP2() Retorna o ponto final. |
21 | PathIterator getPathIterator(AffineTransform at) Retorna um objeto de iteração que define o limite da forma. |
22 | PathIterator getPathIterator(AffineTransform at, double flatness) Retorne um objeto de iteração que define o limite da forma achatada. |
23 | abstract double getX1() Retorna a coordenada X do ponto inicial em precisão dupla. |
24 | abstract double getX2() Retorna a coordenada X do ponto final em precisão dupla. |
25 | abstract double getY1() Retorna a coordenada Y do ponto inicial em precisão dupla. |
26 | abstract double getY2() Retorna a coordenada Y do ponto final em precisão dupla. |
27 | boolean intersects(double x, double y, double w, double h) Testa se o interior da Forma cruza o interior de uma área retangular especificada. |
28 | boolean intersects(Rectangle2D r) Testa se o interior da Forma cruza o interior de um Rectangle2D especificado. |
29 | void setCurve(CubicCurve2D c) Define a localização dos pontos finais e pontos de controle desta curva para os mesmos que aqueles no CubicCurve2D especificado. |
30 | void setCurve(double[] coords, int offset) Define a localização dos pontos finais e pontos de controle desta curva para as coordenadas duplas no deslocamento especificado na matriz especificada. |
31 | abstract void setCurve(double x1, double y1, double ctrlx1, double ctrly1, double ctrlx2, double ctrly2, double x2, double y2) Define a localização dos pontos finais e pontos de controle desta curva para as coordenadas duplas especificadas. |
32 | void setCurve(Point2D[] pts, int offset) Define a localização dos pontos finais e pontos de controle desta curva para as coordenadas dos objetos Point2D no deslocamento especificado na matriz especificada. |
33 | void setCurve(Point2D p1, Point2D cp1, Point2D cp2, Point2D p2) Define a localização dos pontos finais e pontos de controle desta curva para as coordenadas Point2D especificadas. |
34 | static int solveCubic(double[] eqn) Resolve a cúbica cujos coeficientes estão na matriz eqn e coloca as raízes não complexas de volta na mesma matriz, retornando o número de raízes. |
35 | static int solveCubic(double[] eqn, double[] res) Resolva a cúbica cujos coeficientes estão na matriz eqn e coloque as raízes não complexas na matriz res, retornando o número de raízes. |
36 | void subdivide(CubicCurve2D left, CubicCurve2D right) Subdivide essa curva cúbica e armazena as duas curvas subdivididas resultantes nos parâmetros da curva esquerda e direita. |
37 | static void subdivide(CubicCurve2D src, CubicCurve2D left, CubicCurve2D right) Subdivide a curva cúbica especificada pelo parâmetro src e armazena as duas curvas subdivididas resultantes nos parâmetros da curva esquerda e direita. |
38 | static void subdivide(double[] src, int srcoff, double[] left, int leftoff, double[] right, int rightoff) Subdivide a curva cúbica especificada pelas coordenadas armazenadas na matriz src nos índices srcoff a (srcoff + 7) e armazena as duas curvas subdivididas resultantes nas duas matrizes de resultado nos índices correspondentes. |
Métodos herdados
Esta classe herda métodos das seguintes classes:
java.lang.Object
Exemplo CubicCurve2D
Crie o seguinte programa java usando qualquer editor de sua escolha em dizer D:/ > AWT > com > tutorialspoint > gui >
AWTGraphicsDemo.javapackage 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);
}
}
Compile o programa usando o prompt de comando. Vamos paraD:/ > AWT
e digite o seguinte comando.D:\AWT>javac com\tutorialspoint\gui\AWTGraphicsDemo.java
Se nenhum erro ocorrer, significa que a compilação foi bem-sucedida. Execute o programa usando o seguinte comando.
D:\AWT>java com.tutorialspoint.gui.AWTGraphicsDemo
Verifique a seguinte saída