- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
练习45 三次贝塞尔曲线 本例知识点 一句话讲解 新学知识 Graphics2D类 绘制图形 使用CubicCurve2D类 绘制图形 已学知识 Graphics类 画屏幕图像 使用String类 管理字符串 一、练习具体要求 本例制作二维图形三次贝塞尔曲线。效果如图45-1所示。执行本例实例后,将创建一个绘有三次贝塞尔曲线的帧。本实例的知识点有:Graphics2D类和Rectangular类的应用,曲线绘制的方法。 二、程序及注释 (1)编程思路: java2中Graphics2D中绘图的第一步是用setColor(),setFont(),setPointMode,setXORMODE()之类的方法制定绘图属性,第二步生成一个shape接口的对象,指定要画的形体,第三步是绘图。绘制形体是用三个Graphics2D方法完成的。Chip()方法将绘图区缩小到指定形体与当前剪接区的交接部分,影响后面的绘图操作。Draw()方法用当前Stroke绘制Shape的外形。Fill()方法用当前Point模式填充Shape。CubicCurve2D类生成三次曲线,他与其他曲线类不同,不是描述闭合形体,而是描述曲线。曲线类用贝塞尔曲线定义曲线上的实际点。生成曲线后,应用Draw()或Fill()方法,可以把起点和终点看成相连接的,从而得到闭合区域。 (2) 程序实现及注释: //ExitableJFrame.java import javax.swing.*; public class ExitableJFrame extends JFrame{ //构造函数 public ExitableJFrame(){ } //带窗口标题的构造函数 public ExitableJFrame(String title){ super(title); } //窗口的初始化 protected void frameInit(){ super.frameInit(); setDefaultCloseOperation(EXIT_ON_CLOSE); } } //Cubic.java import java.awt.*; import java.awt.geom.*; public class Cubic extends ExitableJFrame{ //画屏函数 public void paint(Graphics g){ //实例化Graphics2D类 Graphics2D g2d = (Graphics2D)g; g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); //设置颜色 g2d.setPaint(Color.blue); g2d.setStroke(new BasicStroke(3)); //CubicCurve2D CubicCurve2D cubic = new CubicCurve2D.Float(10,80,60,30,110,130,160,80); g2d.draw(cubic); cubic = new CubicCurve2D.Float(60,205,150,120,20,120,110,205); g2d.fill(cubic); cubic = new CubicCurve2D.Float(160,130,210,30,260,30,310,130); g2d.fill(cubic); cubic = new CubicCurve2D.Float(160,130,260,230,210,230,310,130); g2d.fill(cubic); //设置颜色 g.setColor(Color.black); //填充颜色 g.fillRect(58,28,5,5); g.fillRect(108,128,5,5); g.fillRect(148,118,5,5); g.fillRect(18,118,5,5); g.fillRect(208,28,5,5); g.fillRect(258,28,5,5); g.fillRect(258,228,5,5); g.fillRect(208,228,5,5); } //主函数 public static void main(String args[]){ Frame f = new Cubic(); f.setTitle(Cu
有哪些信誉好的足球投注网站
文档评论(0)