- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
课程设计说明书
第一部分:绘图项目
一、用户需求
根据用户需求设计图形绘制项目,主要通过点击面板上的按钮,可以在画布上画出想要的图形,比如:矩形,圆。
二、系统设计
创建5个包,分别用来存放图形接口类包,图形类包,形状管理包,形状行为包 测试类包,图形界面包。
三、实施过程
图形接口包(erfaze)具体实现
package erfaze;
import java.awt.Graphics;
import org.ngweb.drawing.shapes.MyLocation;
public interface IShape {
MyLocation getMyLocation();//获取位置
void setMyLocation(MyLocation location);//设置位置
int area();//计算形状面积
void drawing(Graphics g);//绘制自己
void moveTo(MyLocation location);//形状移动至新位置
boolean insideMe(int x , int y);//判断用户是否移动图形
}
图形类包(org.ngweb.drawing.shapes)
其中包括多个类:位置类(MyLocation)、形状类(Myshape)、矩形类(MyRectangle)、圆类(Circle)
位置类(MyLocation)
package org.ngweb.drawing.shapes;
public class MyLocation {
public MyLocation(){}
public MyLocation(int x, int y) {
this.x = x;
this.y = y;
}
public void setMyLocation(int x, int y) {
this.x = x;
this.y = y;
}
public int getX() {
return x;
}
public void setX(int x) {
this.x = x;
}
public int getY() {
return y;
}
public void setY(int y) {
this.y = y;
}
private int x ;
private int y;
}
形状类
package org.ngweb.drawing.shapes;
import erfaze.IShape;
public abstract class MyShape implements IShape{
MyLocation location;//参考位置
public MyLocation getMyLocation() {
return location;
}
public void setMyLocation(MyLocation location) {
this.location = location;
}
public void moveTo(MyLocation location) {
this.location = location;
}
}
矩形类
package org.ngweb.drawing.shapes;
import java.awt.Graphics;
public class MyRectangle extends MyShape{
public int getWidth() {
return width;
}
public void setWidth(int width) {
this.width = width;
}
public int getHeight() {
return height;
}
public void setHeight(int height) {
this.height = height;
}
int width , height;
public int area() {
return width * height;
}
public void drawing(Graphics g) {
g.fillRect(location.getX(), location.getY(), width, height);
System.out.println(在位置(+location.getX()+,+location.getY()+)画一个长方形,面积为:+area()
您可能关注的文档
最近下载
- 防盗门施工组织设计方案.doc VIP
- 2025年版高等职业教育专科专业教学标准 460115 智能光电制造技术.docx
- [美国时代周刊]Time2012-06-25.pdf VIP
- 中医医疗医院设备配置标准.pdf VIP
- 陕2023TJ 077《住宅厨房、卫生间装配式L型构件排气道系统图集》.pdf VIP
- (完整word版)JGJ107-2016钢筋机械连接技术规程.doc VIP
- 三+《品质》(教学课件)-【中职专用】高二语文(高教版2023·职业模块).pptx VIP
- 新课标下体育中考项目现状的分析与思考.docx VIP
- 新员工入职适应期的评估体系与职业发展建议.docx VIP
- 第三周(9月15日)国旗下讲话稿:勿忘国耻振兴中华.pdf VIP
文档评论(0)