JAVA笛卡尔曲线

本文介绍了一段使用Java编程语言实现的复杂图形绘制代码,通过双缓冲技术创建不可见画布,实现高效的图形渲染。代码展示了如何利用数学公式和几何形状绘制出独特图案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

效果图如下:

 

 1 import java.applet.*;
 2 import java.awt.*;
 3 
 4 public class Descartes extends Applet 
 5 {
 6     int AppletWidth,AppletHeight;
 7     Image OffScreen;
 8     Graphics drawOffScreen;
 9     public void init()
10     {
11         setBackground(Color.black);    //设置背景为黑色
12         AppletWidth = getSize().width * 2; //获取applet的宽度
13         AppletHeight = getSize().height * 2; //获取appplet的高度
14         OffScreen = createImage(AppletWidth,AppletHeight); //创建一副使用了双缓冲技术的不可见的画布
15         drawOffScreen = OffScreen.getGraphics();
16     }
17     public void paint(Graphics g)
18     {
19         //设置前景色为白色
20         drawOffScreen.clearRect(0,0,AppletWidth,AppletHeight);
21         drawOffScreen.setColor(Color.white);
22         double x,y,r;
23         for(int i=0; i<=90 ; i++)
24         {
25             for(int j=0; j<=90; j++)
26             {
27                 r=Math.PI / 45 * i * ( 1 - Math.sin(Math.PI / 45 * j)) * 18;
28                 x = r * Math.cos(Math.PI / 45 * j) * Math.sin(Math.PI / 45 * i)+AppletWidth / 2;
29                 y = -r*Math.sin(Math.PI / 45 * j) + AppletHeight / 4;
30                 drawOffScreen.fillOval((int)x,(int)y,2,2); //绘制椭圆形
31             }
32         }
33         g.drawImage(OffScreen,0,0,this); //生成图片
34     }
35 }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值