通过java画一个大风车.doc_第1页
通过java画一个大风车.doc_第2页
通过java画一个大风车.doc_第3页
通过java画一个大风车.doc_第4页
通过java画一个大风车.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

今天的作业我做的是画一个风车:运行结果:1首先:写个Point类:(作用作为风车的中点)package com.huang.exam;/* * * author 黄燕斌 * version 1.0 * since 2013-05-28 * */public class Point private double x;private double y;/* * 构造器 */public Point()/* * 构造器 * param x * param y */public Point(double x,double y)this.x = x;this.y = y;/* * return X */public double getX() return x;/* * * param x X */public void setX(int x) this.x = x;/* * * return Y */public double getY() return y;/* * * param y Y */public void setY(int y) this.y = y;2.写一个风车Windmill类package com.huang.exam;import java.awt.Color;import java.awt.Graphics;/* * 风车 * author 黄 * version 1.0 * since 2013-05-28 * */public class Windmill private Point center;private int radius;private Color color;public Windmill()/* * 构造器 * param center * param radius * param color */public Windmill(Point center, int radius,Color color)this.radius = radius;this.center = center;this.color = color;public Color getColor() return color;public void setColor(Color color) this.color = color;public Point getCenter() return center;public void setCenter(Point center) this.center = center;public int getRadius() return radius;public void setRadius(int radius) this.radius = radius;/* * 画风车 * param g */public void draw(Graphics g)/*通过计算出风车10点的位置*/int arrayX = new int10;int arrayY = new int10;Pointp1 = newPoint(center.getX(),center.getY()+ radius);Point p3 = new Point(center.getX()+Math.cos(18*Math.PI/180)*radius,center.getY()+Math.sin(18*Math.PI/180)*radius);Point p5 = new Point(center.getX()+Math.cos(54*Math.PI/180)*radius,center.getY()-Math.sin(54*Math.PI/180)*radius);Point p7 = new Point(center.getX()-Math.cos(54*Math.PI/180)*radius,center.getY()-Math.sin(54*Math.PI/180)*radius);Point p9 = new Point(center.getX()-Math.cos(18*Math.PI/180)*radius,center.getY()+Math.sin(18*Math.PI/180)*radius);double T = 0.3819;Point p2= new Point(center.getX(),center.getY()-T*radius);Point p4 = new Point(center.getX()-Math.cos(18*Math.PI/180)*T*radius,center.getY()-Math.sin(18*Math.PI/180)*T*radius);Point p6 = new Point(center.getX()-Math.cos(54*Math.PI/180)*T*radius,center.getY()+Math.sin(54*Math.PI/180)*T*radius);Point p8 = new Point(center.getX()+Math.cos(54*Math.PI/180)*T*radius,center.getY()+Math.sin(54*Math.PI/180)*T*radius);Point p10 = new Point(center.getX()+Math.cos(18*Math.PI/180)*T*radius,center.getY()-Math.sin(18*Math.PI/180)*T*radius);arrayX0 = (int)p1.getX();arrayY0 = (int)p1.getY();arrayX1 = (int)p2.getX();arrayY1 = (int)p2.getY();arrayX2 = (int)p3.getX();arrayY2 = (int)p3.getY();arrayX3 = (int)p4.getX();arrayY3 = (int)p4.getY();arrayX4 = (int)p5.getX();arrayY4 = (int)p5.getY();arrayX5 = (int)p6.getX();arrayY5 = (int)p6.getY();arrayX6 = (int)p7.getX();arrayY6 = (int)p7.getY();arrayX7 = (int)p8.getX();arrayY7 = (int)p8.getY();arrayX8 = (int)p9.getX();arrayY8 = (int)p9.getY();arrayX9 = (int)p10.getX();arrayY9 = (int)p10.getY();g.setColor(color);g.drawPolygon(arrayX, arrayY, 10);3. 写一个 CompantPanel 继承JPanel package com.huang.exam;import java.awt.Color;import java.awt.Graphics;import javax.swing.JPanel;public class CompantPanel extends JPanel public void paintComponent(Graphics g) Point p = new Point(250,200);Windmill fs = new Windmill(p,200,Color.blue);fs.draw(g); 4. main类package com.huang.exam;import javax.swing.JFrame;public class Main public static void main(String

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论