java给太极加背景_java实现太极八卦的绘制

Graphics2D g2d=(Graphics2D)g;

g2d.setColor(Color.cyan);

Rectangle2D rect=new Rectangle2D.Double(0,0,200,200);

g2d.fill(rect);

Arc2D arc1=new Arc2D.Double(0,0,200,200,0,180,Arc2D.CHORD);

Arc2D arc2=new Arc2D.Double(0,0,200,200,0,-180,Arc2D.CHORD);

RoundRectangle2D round1=new RoundRectangle2D.Double(0,50,100,100,100,100);

RoundRectangle2D round2=new RoundRectangle2D.Double(100,50,100,100,100,100);

RoundRectangle2D round3=new RoundRectangle2D.Double(37.5,87.8,25,25,25,25);

RoundRectangle2D round4=new RoundRectangle2D.Double(137.5,87.8,25,25,25,25);

g2d.setColor(Color.white);

g2d.fill(arc1);

g2d.setColor(Color.black);

g2d.fill(arc2);

g2d.fill(round1);

g2d.setColor(Color.white);

g2d.fill(round2);

g2d.fill(round3);

g2d.setColor(Color.black);

g2d.fill(round4);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java Applet 是一种在网页中嵌入 Java 程序的技术,通过使用 Java Applet 可以在网页中实现一些动态效果。下面是一个简单的 Java Applet 绘制太极图的示例代码: ```java import java.applet.*; import java.awt.*; public class Taiji extends Applet implements Runnable { int x, y, r; int angle = 0; boolean flag = true; Thread t; public void init() { x = getWidth() / 2; y = getHeight() / 2; r = Math.min(getWidth(), getHeight()) / 2 - 50; setBackground(Color.white); } public void start() { if (t == null) { t = new Thread(this); t.start(); } } public void run() { while (true) { if (flag) { angle += 5; if (angle >= 360) { angle = 0; } } else { angle -= 5; if (angle <= -360) { angle = 0; } } try { Thread.sleep(50); } catch (InterruptedException e) { e.printStackTrace(); } repaint(); } } public void stop() { if (t != null) { t = null; } } public void paint(Graphics g) { g.setColor(Color.black); g.drawOval(x - r, y - r, r * 2, r * 2); g.fillArc(x - r, y - r, r * 2, r * 2, 90 + angle / 2, -180); g.setColor(Color.white); g.fillArc(x - r, y - r, r * 2, r * 2, 90 + angle / 2, 180); g.setColor(Color.black); g.fillOval(x - r / 2, y - r, r, r); g.setColor(Color.white); g.fillOval(x - r / 2, y, r, r); } public boolean mouseDown(Event e, int x, int y) { flag = !flag; return true; } } ``` 在这个例子中,我们创建了一个名为 Taiji 的 Java Applet,通过继承 Applet 类并实现 Runnable 接口来实现动态效果。 在 init 方法中,我们初始化了太极图的圆心坐标和半径,并设置了背景颜色。 在 start 方法中,我们创建并启动了一个新的线程,在这个线程中不断更新太极图的旋转角度,并调用 repaint 方法重新绘制太极图。 在 run 方法中,我们使用一个循环来不断更新太极图的旋转角度。当 flag 为 true 时,太极图顺时针旋转;当 flag 为 false 时,太极图逆时针旋转。我们通过调用 Thread.sleep 方法来控制更新速度。 在 paint 方法中,我们绘制太极图的两个半圆和两个小圆。我们使用 setColor 方法设置颜色,使用 drawOval 和 fillOval 方法绘制圆形,使用 fillArc 方法绘制半圆形。 在 mouseDown 方法中,我们处理了鼠标单击事件,将 flag 取反以改变太极图的旋转方向。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值