随着时代的进步与发展,越来越多的人开始投入到java的学习中来。今天就来为大家介绍一些java基础知识,java中Graphics2D的几何图形类有哪些,并且通过实际的代码为大家展示。

java中Graphics2D的几何图形类主要包括以下七大类。

一、线段,代码展示如下:// 声明并创建线段对象(起点是(2,3),终点是(200,300))

Line2D line = new Line2D.Double(2, 3, 200, 300);

二、矩形,代码展示如下:// 声明并创建矩形对象,矩形的左上角是(20,30),宽是300,高是40。

Rectangle2D rect = new Rectangle2D.Double(20, 30, 80, 40);

三、圆角矩形,代码展示如下:// 左上角是(20,30),宽是130,高是100,圆角的长轴是18,短轴是15。

RoundRectangle2D rectRound = new RoundRectangle2D.Double(20, 30, 130, 100, 18, 15);

四、椭圆,代码展示如下:// 左上角 (20,30),宽是100,高是50

Ellipse2D ellipse = new Ellipse2D.Double(20, 30, 100, 50);

五、圆弧,代码展示如下:// 外接矩形的左上角(10,30),宽85,高60,起始角是5度,终止角是90度。

Arc2D arc1 = new Arc2D.Double(10, 30, 85, 60, 5, 90, Arc2D.OPEN);

Arc2D arc2 = new Arc2D.Double(20, 65, 90, 70, 0, 180, Arc2D.CHORD);

Arc2D arc3 = new Arc2D.Double(40, 110, 50, 90, 0, 270, Arc2D.PIE);

// 参数Arc2D.OPEN、Arc2D.CHORD、Arc2D.PIE分别表示圆弧是开弧、弓弧和饼弧。

六、二次曲线

1.二次曲线用二阶多项式表示:y(x) = ax2+bx+c。一条二次曲线需要三个点确定:始点、控制点和终点。代码如下所示:QuadCurve2D curve1 = new QuadCurver2D.Double(20, 10, 90, 65, 55, 115);

QuadCurve2D curve2 = new QuadCurver2D.Double(20, 10, 15, 63, 55, 115);

QuadCurve2D curve3 = new QuadCurver2D.Double(20, 10, 54, 64, 55, 115);

2.方法Double()中的6个参数分别是二次曲线的始点、控制点和终点。以上3条二次曲线的开始点和终点分别相同。

七、三次曲线

1.三次曲线用三阶多项式表示:y(x)=ax3+bx2+cx+d。一条三次曲线需要四个点确定:始点、两个控制点和终点,代码展示如下:CubicCurve2D curve1 = new CubicCurve2D.Double(12, 30, 50, 75, 15, 15, 115, 93);

CubicCurve2D curve2 = new CubicCurve2D.Double(12, 30, 15, 70, 20, 25, 35, 94);

CubicCurve2D curve3 = new CubicCurve2D.Double(12, 30, 50, 75, 20, 95, 95, 95);

2.方法Double()中的8个参数分别是三次曲线的始点、两个控制点和终点。

3.一般的方程曲线的绘制过程用一个循环控制。通过循环产生自变量的值,按照方程计算出函数值,再作必要的坐标转换:①原点定位的平移变换,②图像缩小或放大的缩放变换,③得到曲线的图像点,并绘制这个点。以绘制以下曲线方程为例:

Y=sin(x)+cos(x)

绘制的代码如下所示:double x0, y0, x1, y1, x2, y2, scale;

x0 = 100;

y0 = 80;

scale = 20.0;

for (x1 = -3.1415926 d; x1 <= 2 * 3.1415926 d; x1 += 0.01 d)

{

y1 = Math.sin(x1) + Math.cos(x1);

x2 = x0 + x1 * scale;

y2 = y0 + y1 * scale; //(x2,y2)是图像点

g.fillOval((int) x2, (int) y2, 1, 1); // 画一个圆点作为图像点

}

以上就是关于java中Graphics2D的几何图形类有哪些的实例展示。想要了解更多java经典例子以及常见问题,敬请关注奇Q工具网。

推荐阅读:

java几何体类_java中Graphics2D的几何图形类有哪些?实例展示相关推荐

  1. java 不能继承的类_java中不能继承的类有哪些?

    在Java中,只要是被定义为final的类,也可以说是被final修饰的类,就是不能被继承的. 因为jdk的开发者认为,有一些最基本的类没要必要对开发者开放,如果用户继承时操作有误,很可能引入很多问题 ...

  2. java的日历类_java 中的Calendar日历类

    一.java 中的Calendar日历类解析 Calendar类是一个抽象类public abstract class Calendar implements Serializable, Clonea ...

  3. java正则表达式类_java中正则表达式之Pattern类与Matcher类

    java中正则表达式之Pattern类与Matcher类 ======================================================================= ...

  4. java 的方法是静态的类_Java中单例模式和静态方法类的区别

    最近翻看了一些资料,发现JAVA的单例模式并不简单:PHP并没有线程安全的问题,一个请求在结束后生命周期就结束了,PHP设计单例模式仅仅是为了如果在同一个页面多次处理,可以不用重复创建对象而已:JAV ...

  5. java中的并发类_java中并发常用工具类

    前言:在你无聊的时候,想想比你优秀还努力的人,也许就不觉的无聊了 今天下午没事干把买的java并发编程艺术这本书拿出来看了看,看了下也记不住,还是好记性不如烂笔头,今天讲四个并发中可能会用到的工具类, ...

  6. java异常类_java中常见的异常类

    展开全部 从异常类的继承架构图中可以看出:Exception 类扩展出数个子类,其中 IOException.RunntimeException 是较常用的两种. 习惯上将 Error 与 Excep ...

  7. java example 去重_Java中mybatis关于example类的使用详解

    这几天刚接触example,很多内容都是破碎的,写一篇博文加深理解. 一.什么是example类 mybatis-generator会为每个字段产生如上的Criterion,如果表的字段比较多,产生的 ...

  8. java中的常用日期类_Java中的常用日期类说明

    日期类常用的有三个,Date类,Calendar(日历)类和日期格式转换类(DateFormat) Date类中的大部分的方法都已经过时,一般只会用到构造方法取得系统当前的时间.public clas ...

  9. java json 工具类_Java中JSON处理工具类使用详解

    本文实例为大家分享了JSON处理工具类的具体代码,供大家参考,具体内容如下 import java.io.IOException; import java.util.Date; import java ...

最新文章

  1. spring配置文件_SpringBoot入门建站全系列(二十三)配置文件优先级及自定义配置文件...
  2. 彻底弄懂dalvik字节码【二】
  3. NCspider项目总结
  4. sctp和tcp的区别
  5. Linux vi 中移动光标 命令
  6. ThinkPhp5 | 模块分析
  7. Java 14的新功能
  8. Java 注解:@PostConstruct和@PreConstruct
  9. 深入理解5种IO模型
  10. E9表单按钮置灰功能与单元格自定义属性说明
  11. 详解.NET IL代码
  12. 【目标检测】CNN的训练图像与测试图像不一致的多尺度问题
  13. 解决win10可以上网但出现小地球的情况
  14. 返回顶部代码 缓慢的返回顶部
  15. 计算机基础cpu知识,CPU基础知识大全详解
  16. HDU-4417-Super Mario(划分树+二分)
  17. Java集合框架笔记记录 --- 原创@余胜军 但有个人心得
  18. 电感啸叫的成因与解决方法
  19. 企业网站制作需要注意什么?
  20. C语言实现实数和复数矩阵及其各种运算(四)

热门文章

  1. 四年级计算机下册美术教案,2015年四年级下册美术教案
  2. 【Apache】Web 服务器配置与 FTP 服务器配置
  3. 个人全能服务器完美设置
  4. python隐藏画笔_Python14_绘图小海龟(turtle)
  5. 鲁班猫1S配置ROS环境
  6. python函数操作_python_函数的基本操作
  7. My97DatePicker控件用法说明
  8. static函数与普通函数有什么区别
  9. Python爬取的网页,需要解码怎么办
  10. asp.net2.0自动根据用户自定义字数生成带分页的静态(HTML)页