Java图案绘制
2017-11-20 16:25
211 查看
图案绘制主要是通过在JPanel类的子类中,重写paint()方法,并在该方法中使用Graphics2D类中的方法来实现的。
先上个效果图:
—ps:其实很简单,真不知道该怎么描述了。。。
在main方法中绘制一个显示图案的窗口:
写一个类,去继承JFrame,把图案添加到窗口中
接下来就是继承JPanel绘图了:
除此之外,对于图案的加减交异或运算:
Area area1 = new Area(ellipse1);
Area area2 = new Area(ellipse2);
加:
area1.add(area2);
减:
area1.subtract(area2);
交:
area1.intersect(area2);
异或:
area1.wxclusiveOr(area2);
g2.draw(area1);
先上个效果图:
—ps:其实很简单,真不知道该怎么描述了。。。
在main方法中绘制一个显示图案的窗口:
JFrame window = new DrawFrame(); window.setTitle("绘制图形"); window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); window.setBounds(100,100,600,400); window.setVisible(true);
写一个类,去继承JFrame,把图案添加到窗口中
class DrawFrame extends JFrame{ public DrawFrame(){ add(new ArtDesignJPanel()); pack(); } }
接下来就是继承JPanel绘图了:
public class ArtDesignJPanel extends JPanel{ private Graphics2D g2; public void paint(Graphics g){ g2 = (Graphics2D) g; paintFlower(); } public void paintFlower(){ g2.translate(getWidth()/2, getHeight()/2); Ellipse2D.Float ellipse = new Ellipse2D.Float(30, 0, 70, 20); Color color = new Color(0, 255, 0); g2.setColor(color); g2.fill(ellipse); int i = 0; while(i < 8){ g2.rotate(30); g2.fill(ellipse); i ++; } ellipse = new Ellipse2D.Float(20, 0, 60, 15); color = new Color(255, 0, 0); g2.setColor(color); g2.fill(ellipse); i = 0; while(i < 8){ g2.rotate(30); g2.fill(ellipse); i ++; } ellipse = new Ellipse2D.Float(10, 0, 50, 10); color = new Color(0, 0, 255); g2.setColor(color); g2.fill(ellipse); i = 0; while(i < 8){ g2.rotate(30); g2.fill(ellipse); i ++; } ellipse = new Ellipse2D.Float(-10, -10, 20, 20); color = new Color(255, 0, 0); g2.setColor(color); g2.fill(ellipse); } }
除此之外,对于图案的加减交异或运算:
Area area1 = new Area(ellipse1);
Area area2 = new Area(ellipse2);
加:
area1.add(area2);
减:
area1.subtract(area2);
交:
area1.intersect(area2);
异或:
area1.wxclusiveOr(area2);
g2.draw(area1);
相关文章推荐
- Java之绘制艺术图案
- C/C++ 和 Java 命令行绘制心形图案
- 使用Java 2D绘制黑白太极图案
- 使用Java 2D绘制黑白太极图案
- 使用Java 2D绘制黑白太极图案
- Java之绘制五环图案
- 分别用Java应用程序和Applet程序实现星星三角形图案的绘制
- Java循环练习:打印图案-1
- Java循环练习:打印图案-5
- 钻石图案的绘制(Diamond Printing Program)
- java 绘制数值计算云图
- Java绘制PNG图片时的黑色背景问题
- 妙用Photoshop画笔调试绘制美丽图案
- JAVA学习---绘制图形
- 【开源java游戏框架libgdx专题】-08-中文显示与绘制
- java 在屏幕上绘制图像(单例运行)
- Java基本功练习二十(图形【时钟模拟、绘制弧形多边形折线段、显示图像、消息显示面板等】)
- Java Graphics 图形绘制
- Java箭头的绘制
- Java中Swing绘制只有一个圆角的边框