Home > サンプル集 > Swingサンプル集 > いろいろなテクスチャーパターン -Swing版-
いろいろなテクスチャーパターン -Swing版-
このページには、以下のサンプルを掲載しています。
下の項目をクリックをすると各サンプルにジャンプします。
※2週間以内の新着記事はNewアイコン、更新記事はUpアイコンが表示されます。
- テクスチャーパターン(市松模様) ( TextureSample01.java )
- テクスチャーパターン(格子模様) ( TextureSample02.java )<
- テクスチャーパターン(ドットパターン) ( TextureSample03.java )
- テクスチャーパターン(斜めの格子模様) ( TextureSample04.java )
- テクスチャーパターン(斜めの格子模様)
- テクスチャーパターン(十字模様) ( TextureSample06.java )
- テクスチャーパターン(文字列) ( TextureSample07.java )
■テクスチャーパターン(市松模様)
[ サンプルプログラムのソースコード - TextureSample01.java - ]
- import javax.swing.JFrame;
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Graphics2D;
- import java.awt.Rectangle;
- import java.awt.TexturePaint;
- import java.awt.image.BufferedImage;
- public class TextureSample01 extends JFrame {
- private static final long serialVersionUID = 1L;
- public TextureSample01() {
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- }
- public void paint(Graphics g){
- Graphics2D g2 = (Graphics2D)g;
- g2.clearRect(0, 0, getWidth(), getHeight());
- BufferedImage bi = new BufferedImage(20,20,BufferedImage.TYPE_INT_RGB);
- Graphics2D bg = bi.createGraphics();
- Rectangle r = new Rectangle(0,0,20,20);
- bg.setColor(Color.ORANGE);
- bg.fillRect(0, 0, 10, 10);
- bg.fillRect(10, 10, 10, 10);
- bg.setColor(Color.GREEN);
- bg.fillRect(10, 0, 10, 10);
- bg.fillRect(0, 10, 10, 10);
- TexturePaint tp = new TexturePaint(bi,r);
- g2.setPaint(tp);
- g2.fillOval(50, 60, 100, 100);
- }
- public static void main(String[] args) {
- JFrame f = new TextureSample01();
- f.setTitle("Swingサンプル(市松模様のテクスチャーパターン)");
- f.setSize(200,200);
- f.setBackground(Color.WHITE);
- f.setVisible(true);
- }
- }
|
[ サンプルプログラムの実行結果 ]
■テクスチャーパターン(格子模様)
[ サンプルプログラムのソースコード - TextureSample02.java - ]
- import javax.swing.JFrame;
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Graphics2D;
- import java.awt.Rectangle;
- import java.awt.TexturePaint;
- import java.awt.image.BufferedImage;
- public class TextureSample02 extends JFrame {
- private static final long serialVersionUID = 1L;
- public TextureSample02() {
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- }
- public void paint(Graphics g){
- Graphics2D g2 = (Graphics2D)g;
- g2.clearRect(0, 0, getWidth(), getHeight());
- BufferedImage bi = new BufferedImage(10,10,BufferedImage.TYPE_INT_RGB);
- Graphics2D bg = bi.createGraphics();
- Rectangle r = new Rectangle(0,0,10,10);
- bg.setColor(Color.CYAN);
- bg.fillRect(0, 0, 10, 10);
- bg.setColor(Color.BLUE);
- bg.drawLine(0, 5, 10, 5);
- bg.drawLine(5, 0, 5, 10);
- TexturePaint tp = new TexturePaint(bi,r);
- g2.setPaint(tp);
- g2.fillOval(50, 60, 100, 100);
- }
- public static void main(String[] args) {
- JFrame f = new TextureSample02();
- f.setTitle("Swingサンプル(格子模様のテクスチャーパターン)");
- f.setSize(200,200);
- f.setBackground(Color.WHITE);
- f.setVisible(true);
- }
- }
|
[ サンプルプログラムの実行結果 ]
■テクスチャーパターン(ドットパターン)
[ サンプルプログラムのソースコード - TextureSample03.java - ]
- import javax.swing.JFrame;
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Graphics2D;
- import java.awt.Rectangle;
- import java.awt.TexturePaint;
- import java.awt.image.BufferedImage;
- public class TextureSample03 extends JFrame {
- private static final long serialVersionUID = 1L;
- public TextureSample03() {
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- }
- public void paint(Graphics g){
- Graphics2D g2 = (Graphics2D)g;
- g2.clearRect(0, 0, getWidth(), getHeight());
- BufferedImage bi = new BufferedImage(10,10,BufferedImage.TYPE_INT_RGB);
- Graphics2D bg = bi.createGraphics();
- Rectangle r = new Rectangle(0,0,10,10);
- bg.setColor(Color.ORANGE);
- bg.fillRect(0, 0, 10, 10);
- bg.setColor(Color.BLUE);
- bg.fillRect(2, 2, 2, 2);
- bg.fillRect(7, 2, 2, 2);
- bg.fillRect(2, 7, 2, 2);
- bg.fillRect(7, 7, 2, 2);
- TexturePaint tp = new TexturePaint(bi,r);
- g2.setPaint(tp);
- g2.fillOval(50, 60, 100, 100);
- }
- public static void main(String[] args) {
- JFrame f = new TextureSample03();
- f.setTitle("Swingサンプル(ドットパターンのテクスチャーパターン)");
- f.setSize(200,200);
- f.setBackground(Color.WHITE);
- f.setVisible(true);
- }
- }
|
[ サンプルプログラムの実行結果 ]
■テクスチャーパターン(斜めの格子模様)
[ サンプルプログラムのソースコード - TextureSample04.java - ]
- import javax.swing.JFrame;
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Graphics2D;
- import java.awt.Rectangle;
- import java.awt.TexturePaint;
- import java.awt.image.BufferedImage;
- public class TextureSample04 extends JFrame {
- private static final long serialVersionUID = 1L;
- public TextureSample04() {
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- }
- public void paint(Graphics g){
- Graphics2D g2 = (Graphics2D)g;
- g2.clearRect(0, 0, getWidth(), getHeight());
- BufferedImage bi = new BufferedImage(10,10,BufferedImage.TYPE_INT_RGB);
- Graphics2D bg = bi.createGraphics();
- Rectangle r = new Rectangle(0,0,10,10);
- bg.setColor(Color.ORANGE);
- bg.fillRect(0, 0, 10, 10);
- bg.setColor(Color.BLUE);
- bg.drawLine(0, 0, 10, 10);
- bg.drawLine(10, 0, 0, 10);
- TexturePaint tp = new TexturePaint(bi,r);
- g2.setPaint(tp);
- g2.fillOval(50, 60, 100, 100);
- }
- public static void main(String[] args) {
- JFrame f = new TextureSample04();
- f.setTitle("Swingサンプル(斜めの格子模様のテクスチャーパターン)");
- f.setSize(200,200);
- f.setBackground(Color.WHITE);
- f.setVisible(true);
- }
- }
|
[ サンプルプログラムの実行結果 ]
■テクスチャーパターン(十字模様)
[ サンプルプログラムのソースコード - TextureSample05.java - ]
- import javax.swing.JFrame;
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Graphics2D;
- import java.awt.Rectangle;
- import java.awt.TexturePaint;
- import java.awt.image.BufferedImage;
- public class TextureSample05 extends JFrame {
- private static final long serialVersionUID = 1L;
- public TextureSample05() {
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- }
- public void paint(Graphics g){
- Graphics2D g2 = (Graphics2D)g;
- g2.clearRect(0, 0, getWidth(), getHeight());
- BufferedImage bi = new BufferedImage(10,10,BufferedImage.TYPE_INT_RGB);
- Graphics2D bg = bi.createGraphics();
- Rectangle r = new Rectangle(0,0,10,10);
- bg.setColor(Color.ORANGE);
- bg.fillRect(0, 0, 10, 10);
- bg.setColor(Color.BLUE);
- bg.drawLine(5, 3, 5, 7);
- bg.drawLine(3, 5, 7, 5);
- TexturePaint tp = new TexturePaint(bi,r);
- g2.setPaint(tp);
- g2.fillOval(50, 60, 100, 100);
- }
- public static void main(String[] args) {
- JFrame f = new TextureSample05();
- f.setTitle("Swingサンプル(十字模様のテクスチャーパターン)");
- f.setSize(200,200);
- f.setBackground(Color.WHITE);
- f.setVisible(true);
- }
- }
|
[ サンプルプログラムの実行結果 ]
■テクスチャーパターン(ハート模様)
[ サンプルプログラムのソースコード - TextureSample06.java - ]
- import javax.swing.JFrame;
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Graphics2D;
- import java.awt.RadialGradientPaint;
- import java.awt.Rectangle;
- import java.awt.TexturePaint;
- import java.awt.geom.Arc2D;
- import java.awt.geom.Area;
- import java.awt.geom.Ellipse2D;
- import java.awt.image.BufferedImage;
- public class TextureSample06 extends JFrame {
- private static final long serialVersionUID = 1L;
- public TextureSample06() {
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- }
- public void paint(Graphics g){
- Graphics2D g2 = (Graphics2D)g;
- g2.clearRect(0, 0, getWidth(), getHeight());
- BufferedImage bi = new BufferedImage(30,30,BufferedImage.TYPE_INT_RGB);
- Graphics2D bg = bi.createGraphics();
- Rectangle r = new Rectangle(0,0,30,30);
- Ellipse2D e1 = new Ellipse2D.Double( 0, 0, 10, 10);
- Ellipse2D e2 = new Ellipse2D.Double(10, 0, 10, 10);
- Arc2D arc = new Arc2D.Double(0, 4, 20, 25,34,112,Arc2D.PIE);
- Area a1 = new Area(e1);
- Area a2 = new Area(e2);
- Area a3 = new Area(arc);
- a1.add(a2);
- a1.add(a3);
- bg.setColor(Color.cyan);
- bg.fillRect(0, 0, 50, 50);
- float[] dist = {0.0f, 0.5f, 1.0f};
- Color[] colors = {Color.WHITE, Color.PINK, Color.MAGENTA};
- RadialGradientPaint rgp =
- new RadialGradientPaint( 10, 20, 30, dist, colors);
- bg.setPaint(rgp);
- bg.fill(a1);
- bg.setColor(Color.MAGENTA);
- bg.draw(a1);
- TexturePaint tp = new TexturePaint(bi,r);
- g2.setPaint(tp);
- g2.fillOval(50, 60, 100, 100);
- g2.setColor(Color.BLUE);
- g2.drawOval(50, 60, 100, 100);
- }
- public static void main(String[] args) {
- JFrame f = new TextureSample06();
- f.setTitle("Swingサンプル(ハート模様のテクスチャーパターン)");
- f.setSize(200,200);
- f.setBackground(Color.WHITE);
- f.setVisible(true);
- }
- }
|
[ サンプルプログラムの実行結果 ]
■テクスチャーパターン(文字列)
[ サンプルプログラムのソースコード - TextureSample07.java - ]
- import javax.swing.JFrame;
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Graphics2D;
- import java.awt.Rectangle;
- import java.awt.TexturePaint;
- import java.awt.font.TextAttribute;
- import java.awt.geom.Ellipse2D;
- import java.awt.image.BufferedImage;
- import java.text.AttributedCharacterIterator;
- import java.text.AttributedString;
- public class TextureSample07 extends JFrame {
- private static final long serialVersionUID = 1L;
- public TextureSample07() {
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- }
- public void paint(Graphics g){
- Graphics2D g2 = (Graphics2D)g;
- g2.clearRect(0, 0, getWidth(), getHeight());
- BufferedImage bi = new BufferedImage(35,40,BufferedImage.TYPE_INT_RGB);
- Graphics2D bg = bi.createGraphics();
- bg.setBackground(Color.BLUE);
- bg.clearRect(0, 0, bi.getWidth(), bi.getHeight());
- Rectangle r = new Rectangle(0,0,35,40);
- AttributedString as = new AttributedString("Java");
- as.addAttribute(TextAttribute.WEIGHT, 8);
- as.addAttribute(TextAttribute.SIZE, 16, 0, 1);
- as.addAttribute(TextAttribute.FOREGROUND, Color.ORANGE,0,1);
- as.addAttribute(TextAttribute.FOREGROUND, Color.GREEN,1,4);
- AttributedCharacterIterator aci = as.getIterator();
- bg.drawString(aci,2, 18);
- bg.drawString(aci,20, 38);
- bg.drawString(aci,-14, 38);
- TexturePaint tp = new TexturePaint(bi,r);
- g2.setPaint(tp);
- Ellipse2D ellipse = new Ellipse2D.Double();
- ellipse.setFrame(50,60,100,100);
- g2.fill(ellipse);
- }
- public static void main(String[] args) {
- JFrame f = new TextureSample07();
- f.setTitle("Swingサンプル(文字列のテクスチャーパターン)");
- f.setSize(200,200);
- f.setBackground(Color.WHITE);
- f.setVisible(true);
- }
- }
|
[ サンプルプログラムの実行結果 ]
|