Java程序设计教程(第七版) John Lewis & William Loftus 电子工业出版社

PP2.16编写一个applet,画出北斗七星,并在夜空中添加一些其他的星星。

注意:
1. 在不同的IDE环境下,有部分代码可能需要变更。Java代码中的package和class名称自行设置,本文中采用Test。
2. 本程序应用到Applet,使用IDE时需要注意配置问题,具体请参考:https://blog.csdn.net/Trista_1999/article/details/103204112,如果还有其他配置问题,可自行搜索。
IDE工具:IntelliJ IDEA

代码块:


import javax.swing.JApplet;
import java.awt.*;
import java.util.Random;public class Test extends JApplet {public void paint (Graphics page) {setBackground (Color.black);page.setColor(Color.white);//Basic starint[] xP = {100, 104, 106, 108, 112, 109, 110, 106, 102, 103};int[] yP = {100, 100, 97, 100, 100, 102, 108, 103, 108, 102};page.drawPolygon(xP, yP, 10);page.fillPolygon(xP, yP, 10);//Big Dipperint[][] xBD = new int[7][10];int[][] yBD = new int[7][10];int[] xAdd = {1000, 1050, 1350, 1400, 650, 400, 100};int[] yAdd = {350, 550, 550, 300, 250, 210, 290};for(int i=0; i<xAdd.length; i++){for(int j=0; j<xP.length; j++){xBD[i][j] = xP[j] + xAdd[i];yBD[i][j] = yP[j] + yAdd[i];}page.drawPolygon(xBD[i], yBD[i], 10);page.fillPolygon(xBD[i], yBD[i], 10);}//Connect the star with linepage.drawLine(1106, 455, 1156, 655);page.drawLine(1156, 655, 1455, 655);page.drawLine(1455, 655, 1505, 405);page.drawLine(1505, 405, 1106, 455);page.drawLine(1106, 455, 755, 355);page.drawLine(755, 355, 505, 315);page.drawLine(505, 315, 205, 395);//Basic Small Starint[] xSmall = new int[10];int[] ySmall = new int[10];for(int i=0; i<xP.length; i++){xSmall[i] = xP[i]/2 - 100;ySmall[i] = yP[i]/2;}page.drawPolygon(xSmall, ySmall, 10);page.fillPolygon(xSmall, ySmall, 10);//Randomly Generated StarsRandom rand = new Random();int randX, randY;int[] randSmallX = new int[10];int[] randSmallY = new int[10];for(int i=0; i<50; i++){randX = rand.nextInt(2000);randY = rand.nextInt(2000);for(int j=0; j<xP.length; j++){randSmallX[j] = xSmall[j] + randX;randSmallY[j] = ySmall[j] + randY;}page.drawPolygon(randSmallX, randSmallY, 10);page.fillPolygon(randSmallX, randSmallY, 10);}}
}

实现效果如下:

Java //PP2.16编写一个applet,画出北斗七星,并在夜空中添加一些其他的星星相关推荐

  1. Java //PP2.17 编写一个applet,画出一些用绳子拴住的各种颜色的气球

    Java程序设计教程(第七版) John Lewis & William Loftus 电子工业出版社 PP2.17 编写一个applet,画出一些用绳子拴住的各种颜色的气球. 注意: 1. ...

  2. Java //PP2.6 编写一个应用程序,将英里转换为千米(1英里等于1.60935千米)。以浮点数类型读取用户输入的英里数

    Java程序设计教程(第七版) John Lewis & William Loftus 电子工业出版社 PP2.6 编写一个应用程序,将英里转换为千米(1英里等于1.60935千米).以浮点数 ...

  3. Java //PP2.10 编写一个程序,确定瓶子里的硬币总面值并以美元和美分为单位打印输出总钱数。读取分别代表25美分、10美分、5美分、1美分硬币数量的整数

    Java程序设计教程(第七版) John Lewis & William Loftus 电子工业出版社 PP2.10 编写一个程序,确定瓶子里的硬币总面值并以美元和美分为单位打印输出总钱数.读 ...

  4. 编写一个Applet,画出20条水平的、随机颜色的平行线。要求线的长度相同,整条线段都要在可视区域内

    编写一个Applet,画出20条水平的.随机颜色的平行线.要求线的长度相同,整条线段都要在可视区域内. ` package p2; import java.applet.Applet; import ...

  5. 编写一个APPlet,再随机的位置上画出几个随机大小的矩形。

    编写一个APPlet,再随机的位置上画出几个随机大小的矩形.如果一个矩形的宽度小于高度,则矩形填充成亮紫色:如果矩形的宽度大于高度,则矩形填充为浅黄色:如果矩形的宽度和高度相等,则只用红色线画出矩形的 ...

  6. 编写一个Applet在屏幕上画椭圆,椭圆的大小和位置由鼠标决定

    编写一个Applet在屏幕上画椭圆,椭圆的大小和位置由鼠标决定 package p1;import java.applet.Applet; import java.awt.Dimension; imp ...

  7. 编写一个Applet在屏幕上画一组同心圆

    编写一个Applet在屏幕上画一组同心圆 package p1;import java.applet.Applet; import java.awt.Dimension; import java.aw ...

  8. 编写一个Applet,随机选择矩形、圆形、椭圆、直线等形状,在可视区域内绘制20个图形,同一种图形使用同一种颜色,不需要填充。

    编写一个Applet,随机选择矩形.圆形.椭圆.直线等形状,在可视区域内绘制20个图形,同一种图形使用同一种颜色,不需要填充. package p2;import java.applet.Applet ...

  9. 求助:使用jCreator编写一个applet小程序

    要求: 1.随机生成1~6之间的数字,统计100次,输出每个生成数字出现的次数 2.输出方式用Applet画出柱状图,运行结果如下,红色轴,绿色轴分别代表最小次数和最大次数 大学实验作业,小白一个不知 ...

最新文章

  1. 对未标记为可安全执行的脚本_Script Debugger for Mac(脚本调试软件)
  2. vc2010中开始执行不调试灰的_反编译动态调试smali全过程
  3. c#控制台应用程序,如何实现隐藏DOS窗口
  4. android替换电话应用,android – 替换调用应用程序
  5. Combine two strings into one.
  6. javaone_JavaOne 2015 –又一年,又向前迈进了一步
  7. isDate()函数
  8. linux yum提示Loaded plugins: fastestmirror, security错误的解决方法
  9. php calendar,php编译安装calendar扩展模块
  10. Java Web之Cookie和Session的理解
  11. 十个最佳方法保护Windows文件服务器
  12. 阶段3 2.Spring_10.Spring中事务控制_11 spring5新特性的介绍
  13. 华为手机隐藏app图标_3秒钟轻松隐藏华为手机桌面图标!不需要下载安装第三方软件哦!...
  14. 如何优雅的保存微信公众号封面图
  15. Linux(七,八)SHELL解释器、用户和用户组管理详解
  16. html+css基础教程之html标题学习
  17. C++PTA题解(1)——厘米换算英尺英寸
  18. 【Redis学习10】好友关注---关注与取关,共同关注及关注推送
  19. Unity和Autodesk:通过更高效的工作流程提供沉浸式体验
  20. 央行紧急通知:你在用的这种支付方式将有重大变化

热门文章

  1. tf.control_dependencies与tf.identity组合详解
  2. Android系统解除USER版本无法进入Recovery模式限制
  3. 小灰整理了一套Java学习路线图,面试和实战都能用得上!
  4. caxa画图怎么倒角_CAXA电子图板如何倒角?CAXA电子图板倒角的绘制方法一览
  5. 网络设计部分知识点总结
  6. [算法] 两个质数的乘积是707829217,求解该质数
  7. 利用随机森林对特征重要性进行评估 方法一
  8. pdf会签_设备验收管理办法20140604(会签签批版).pdf
  9. 验证tomcat安装成功
  10. 普通文艺二逼的iPhone音乐应用推荐