gpt4 book ai didi

Java : smiley face

转载 作者:搜寻专家 更新时间:2023-10-31 20:33:16 26 4
gpt4 key购买 nike

Smiley Face

我想知道我应该用什么来画上面笑脸的嘴巴和眼睛。到目前为止,我设法画出了眼睛和嘴巴后面的东西(到目前为止的结果请往下看)。我尝试使用 Arc2D.double,正如您在标记为注释的代码中看到的那样。

这是我到目前为止所做的:

import java.awt.geom.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class draw2 extends JPanel
{
public void paintComponent(Graphics g)
{
super.paintComponent(g);
Graphics2D g2 = (Graphics2D) g;
this.setBackground(new Color( 255,255,255));

g.setColor(Color.yellow);
g.fillOval(100,100,300,300);

g.setColor(Color.white);
g.fillArc(110,120,250,250,90,180);

g.setColor(new Color (218,165,32));
g.drawArc(130,110,250,280,90,-180);

g.setColor(Color.yellow);
g.fillOval(125,105,250,290);

// draw Arc2D.Double
//g2.setColor(Color.black);
//g2.fill(new Arc2D.Double(130, 200, 200,150,170, 200, Arc2D.OPEN));


}


public static void main (String[] args)
{
JFrame f = new JFrame("Task 2");
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
draw2 d = new draw2();
f.add(d);
f.setSize(600,600);
f.setVisible(true);
}

}

到目前为止的结果:

enter image description here

最佳答案

左右笑线的起点可能是以下片段。

BasicStroke stroke = new BasicStroke(
12,
BasicStroke.CAP_BUTT,
0,
BasicStroke.JOIN_BEVEL
);
g2.setStroke(stroke);

GeneralPath leftLaughLine = new GeneralPath();
int x = 150;
int y = 230;
leftLaughLine.moveTo(x, y);
leftLaughLine.curveTo(x - 20, y + 5, x - 25, y + 25, x - 25, y + 25);
g2.draw(leftLaughLine);

GeneralPath rigthLaughLine = new GeneralPath();
x = 350;
y = 230;
rigthLaughLine.moveTo(x, y);
rigthLaughLine.curveTo(x + 20, y + 5, x + 25, y + 25, x + 25, y + 25);
g2.draw(rigthLaughLine);

enter image description here

关于Java : smiley face,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33165044/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com