Java之绘制艺术图案
前面已经介绍过绘制方法。这里不再赘述。
package com.caiduping; import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.Ellipse2D;
import java.util.Random;
import javax.swing.JFrame;
import javax.swing.JPanel; public class ArtDesignFrame extends JFrame {
ArtDesignPanel artDesignPanel = new ArtDesignPanel(); // 创建面板类的实例 public static void main(String args[]) { // 主方法
ArtDesignFrame frame = new ArtDesignFrame(); // 创建窗体类的实例
frame.setVisible(true); // 显示窗体
} public ArtDesignFrame() {
super(); // 调用超类的构造方法
setTitle("绘制艺术图案"); // 窗体标题
setBounds(100, 100, 338, 230); // 窗体的显示位置和大小
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 窗体关闭方式
add(artDesignPanel); // 将面板类的实例添加到窗体容器中
} class ArtDesignPanel extends JPanel { // 创建内部面板类
public void paint(Graphics g) { // 重写paint()方法
Graphics2D g2 = (Graphics2D)g; // 获得Graphics2D对象
Ellipse2D.Float ellipse = new Ellipse2D.Float(-80, 5, 160, 10);// 创建椭圆对象
Random random = new Random();// 创建随机数对象
g2.translate(160, 90);// 平移坐标轴
int R = random.nextInt(256);//随机产生颜色的R值
int G = random.nextInt(256);//随机产生颜色的G值
int B = random.nextInt(256);//随机产生颜色的B值
Color color = new Color(R,G,B);//创建颜色对象
g2.setColor(color);//指定颜色
g2.draw(ellipse);// 绘制椭圆
int i=0;
while (i<100){
R = random.nextInt(256);//随机产生颜色的R值
G = random.nextInt(256);//随机产生颜色的G值
B = random.nextInt(256);//随机产生颜色的B值
color = new Color(R,G,B);//创建新的颜色对象
g2.setColor(color);//指定颜色
g2.rotate(10);// 旋转画布
g2.draw(ellipse);// 绘制椭圆
i++;
}
}
}
}
run:
Java之绘制艺术图案的更多相关文章
- Java之绘制五环图案
前面已经介绍过绘制方法.这里不再赘述. package com.caiduping; import java.awt.BasicStroke; import java.awt.Color; impor ...
- Java绘制艺术图形
本例主要是通过使用坐标轴平移,图形旋转和获得随机数等技术来绘制艺术图案.通过重写JPanel类中的paint()方法,并在该方法中使用Graphics2D类中的translate(),setColor ...
- 分享:Java 开发精美艺术二维码
博客地址:https://ainyi.com/58 Java 开发精美艺术二维码 看到网络上各种各样的二维码层出不穷,好像很炫酷的样子,一时兴起,我也要制作这种炫酷二维码效果 例如: 根据以往例子 根 ...
- 纯php实现中秋博饼游戏(1):绘制骰子图案
最近公司中秋博饼(在厦门),自己没事也想玩玩,所以就想动手写了一个纯php实现的中秋博饼游戏,既然要纯php实现,就要用php来生成图案,所以第一步就先绘制骰子图案. 平时很少使用php绘图,不过查查 ...
- html5--5-14 阶段小练习:绘制太极图案
html5--5-14 阶段小练习:绘制太极图案 学习要点 运用前几节课的知识完成一个小练习 这个图案有多种不同的绘制方法,这里只做一个简单的演示,练习的时候可以自己思考一下,尝试其他的方法,或者对这 ...
- canvas一周一练 -- canvas绘制马尾图案 (5)
运行效果: <!DOCTYPE html> <html> <head> </head> <body> <canvas id=" ...
- Java 窗口 绘制图形 #2
写在前面: 高考结束咧,爽到啊,好耶 完善了Java 窗口 绘制图形 #1里面的程序 加入了缩放平移功能,给代码加了注释 1 package my_package; 2 3 import java.a ...
- 如何评价《Java 并发编程艺术》这本书?
对于书评这件事情,我其实是不想写的,因为每个人都有自己的一个衡量标准,每个人眼中都有自己的哈姆雷特,是好是坏每个人都褒贬不一.如果对于书中的知识你都掌握了,你只是想把它作为一种知识串联的记忆体的话,那 ...
- canvas——绘制解锁图案
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
随机推荐
- 剑指OFFER之链表中倒数第k个节点(九度OJ1517)
题目描述: 输入一个链表,输出该链表中倒数第k个结点.(hint: 请务必使用链表.) 输入: 输入可能包含多个测试样例,输入以EOF结束.对于每个测试案例,输入的第一行为两个整数n和k(0<= ...
- TFS代码签入指导
1. 如果文件没有被放入到TFS中, 那么它是不存在的. 这一点是最好被理解的, 如果你的代码没有被签入到代码管理中,那么就不可能被团队的其他人获取的得到. 具体如何将文件纳入到TFS中请参考 Pla ...
- SqlServer刷新所有视图
CREATE PROCEDURE RefreshAllView AS DECLARE MyCursor CURSOR FOR select Name from dbo.sysobjects where ...
- hibernate-mapping的各种属性配置
先给出一份常见的持久化类配置文件大概熟悉一下 <strong><spanstyle="font-size: 18px;"><hibernate-map ...
- 【转】web测试内容及工具经典总结
基于Web的系统测试在基于Web的系统开发中,如果缺乏严格的过程,我们在开发.发布.实施和维护Web的过程中,可能就会碰到一些严重的问题,失败的可能性很大.而且,随着基于Web的系统变得越来越复杂,一 ...
- 一个无聊的实验:验证网站是否通过web容器还是微服务部署
一般来说一台web服务器会部署多个实例(且共享80端口),举个栗子例如nginx通常部署多个站点,每个站点都有自己的端口 例如 8091,8092之类的. 通过nginx进行代理.(前提微服务直接使用 ...
- Android - 软件自动更新的实现
转自:http://blog.csdn.net/wwj_748/article/details/8195565 接触到一个很实用的技术,那就是软件自动更新.一般开发者是通过自行在应用平台添加更新版本的 ...
- php生成CSV格式(转)
参考网址: php对csv文件的常用操作集合 http://blog.xhbin.com/archives/748 1,下载CSV格式文档 唯一需要特别注意的是编码. <? include_on ...
- Linux 内核动态函数调用可视化工具
要求: python .7以上 https://www.python.org/ftp/python/ EG:wget --no-check-certificate https://www.python ...
- Redis 服务器
Redis 服务器命令主要是用于管理 redis 服务. 实例 以下实例演示了如何获取 redis 服务器的统计信息: redis 127.0.0.1:6379> INFO # Server r ...