Java Swing プログラミング サンプル

楕円を描画するJavaSwingのサンプルです。 太線や破線での描画、グラデーション、テクスチャー、図形の回転などのサンプルを掲載しています。

Home > サンプル集 > Swingサンプル集 > 直線の描画-Swing版-


直線の描画-Swing版-

このページには、以下のサンプルを掲載しています。 下の項目をクリックをすると各サンプルにジャンプします。 ※2週間以内の新着記事はNewアイコン、更新記事はUpアイコンが表示されます。
  1. 直線の描画 - Swing版 - ( LineSample01.java )  
  2. 太い直線の描画 - Swing版 - ( LineSample02.java )  
  3. 破線の描画 - Swing版 - ( LineSample03.java )  
  4. 連続的に繋がった直線の描画 - Swing版 - ( LineSample04.java )  
  5. 連続的に繋がった太い直線の描画 - Swing版 - ( LineSample05.java )  
  6. 連続的に繋がった破線の描画 - Swing版 - ( LineSample06.java )  

1. 直線の描画

[ サンプルプログラムのソースコード - LineSample01.java - ]
  1. import javax.swing.JFrame;
  2. import java.awt.Color;
  3. import java.awt.Graphics;
  4. import java.awt.Graphics2D;
  5. import java.awt.geom.Line2D;
  6. public class LineSample01 extends JFrame {
  7.   private static final long serialVersionUID = 1L;
  8.   public LineSample01(){
  9.     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  10.   }
  11.   public void paint(Graphics g){
  12.     super.paint(g);
  13.     Graphics2D g2 = (Graphics2D)g;
  14.     g2.setColor(Color.BLUE);
  15.     Line2D line = new Line2D.Double(20, 40, 120, 140);
  16.     g2.draw(line);
  17.   }
  18.   public static void main(String[] args) {
  19.     JFrame f = new LineSample01();
  20.     f.setTitle("Swingサンプル(直線の描画)");
  21.     f.setSize(200,200);
  22.     f.setBackground(Color.WHITE);
  23.     f.setVisible(true);
  24.   }
  25. }
[ サンプルプログラムの実行結果 ]

[ 関連ページ ]
直線のアプレット版サンプル
Swing版サンプルの他の図形描画
四角形 / 角の丸い四角形 / / 楕円 / 多角形 / ベジェ曲線 / ベジェ曲線を含む図形 / 円弧 / 楕円弧 / 弓形 / 扇形


2. 太い直線の描画

[ サンプルプログラムのソースコード - LineSample02.java - ]
  1. import javax.swing.JFrame;
  2. import java.awt.BasicStroke;
  3. import java.awt.Color;
  4. import java.awt.Graphics;
  5. import java.awt.Graphics2D;
  6. import java.awt.geom.Line2D;
  7. public class LineSample02 extends JFrame {
  8.   private static final long serialVersionUID = 1L;
  9.   public LineSample02(){
  10.     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  11.   }
  12.   public void paint(Graphics g){
  13.     super.paint(g);
  14.     Graphics2D g2 = (Graphics2D)g;
  15.     g2.setStroke(new BasicStroke(5.0f));
  16.     Line2D line = new Line2D.Double(20, 40, 120, 140);
  17.     g2.draw(line);
  18.   }
  19.   public static void main(String[] args) {
  20.     JFrame f = new LineSample02();
  21.     f.setTitle("Swingサンプル(直線の描画)");
  22.     f.setSize(200,200);
  23.     f.setBackground(Color.WHITE);
  24.     f.setVisible(true);
  25.   }
  26. }
[ サンプルプログラムの実行結果 ]

[ 関連ページ ]
太線のアプレット版サンプル
Swing版サンプルの他の図形描画
四角形(太線) / 角の丸い四角形(太線) / 円(太線) / 楕円(太線) / 多角形(太線) / ベジェ曲線(太線) / ベジェ曲線を含む図形(太線) / 円弧(太線) / 楕円弧(太線) / 弓形(太線) / 扇形(太線)


3. 破線の描画

[ サンプルプログラムのソースコード - LineSample03.java - ]
  1. import javax.swing.JFrame;
  2. import java.awt.BasicStroke;
  3. import java.awt.Color;
  4. import java.awt.Graphics;
  5. import java.awt.Graphics2D;
  6. import java.awt.geom.Line2D;
  7. public class LineSample03 extends JFrame {
  8.   private static final long serialVersionUID = 1L;
  9.   public LineSample03(){
  10.     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  11.   }
  12.   public void paint(Graphics g){
  13.     super.paint(g);
  14.     Graphics2D g2 = (Graphics2D)g;
  15.     g2.setColor(Color.MAGENTA);
  16.     float[] dash = { 20.0f, 5.0f,3.0f,5.0f };
  17.     g2.setStroke(new BasicStroke(
  18.                  2.0f,
  19.                  BasicStroke.JOIN_ROUND,
  20.                  BasicStroke.CAP_BUTT,
  21.                  1.0f,
  22.                  dash,
  23.                  0.0f));
  24.     Line2D line = new Line2D.Double(20, 40, 120, 140);
  25.     g2.draw(line);
  26.   }
  27.   public static void main(String[] args) {
  28.     JFrame f = new LineSample03();
  29.     f.setTitle("Swingサンプル(直線の描画)");
  30.     f.setSize(200,200);
  31.     f.setBackground(Color.WHITE);
  32.     f.setVisible(true);
  33.   }
  34. }
[ サンプルプログラムの実行結果 ]

[ 関連ページ ]
破線のアプレット版サンプル
Swing版サンプルの他の図形描画
四角形(破線) / 角の丸い四角形(破線) / 円(破線) / 楕円(破線) / 多角形(破線) / ベジェ曲線(破線) / ベジェ曲線を含む図形(破線) / 円弧(破線) / 楕円弧(破線) / 弓形(破線) / 扇形(破線)


4. 連続的に繋がった直線の描画

[ サンプルプログラムのソースコード - LineSample04.java - ]
  1. import javax.swing.JFrame;
  2. import java.awt.Color;
  3. import java.awt.Graphics;
  4. import java.awt.Graphics2D;
  5. public class LineSample04 extends JFrame {
  6.   private static final long serialVersionUID = 1L;
  7.   public LineSample04(){
  8.     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  9.   }
  10.   public void paint(Graphics g){
  11.     super.paint(g);
  12.     Graphics2D g2 = (Graphics2D)g;
  13.     g2.setColor(Color.ORANGE);
  14.     int xpoint[] = { 30,  50, 70,  90, 110, 130, 150 };
  15.     int ypoint[] = { 40, 110, 40, 110,  40, 110,  40 };
  16.     g2.drawPolyline(xpoint, ypoint, xpoint.length);
  17.   }
  18.   public static void main(String[] args) {
  19.     JFrame f = new LineSample04();
  20.     f.setTitle("Swingサンプル(連続直線の描画)");
  21.     f.setSize(200,200);
  22.     f.setBackground(Color.WHITE);
  23.     f.setVisible(true);
  24.   }
  25. }
[ サンプルプログラムの実行結果 ]

[ 関連ページ ]
連続直線のアプレット版サンプル
Swing版サンプルの他の図形描画
四角形 / 角の丸い四角形 / / 楕円 / 多角形 / ベジェ曲線 / ベジェ曲線を含む図形 / 円弧 / 楕円弧 / 弓形 / 扇形


5. 連続的に繋がった太い直線の描画

[ サンプルプログラムのソースコード - LineSample05.java - ]
  1. import javax.swing.JFrame;
  2. import java.awt.BasicStroke;
  3. import java.awt.Color;
  4. import java.awt.Graphics;
  5. import java.awt.Graphics2D;
  6. public class LineSample05 extends JFrame {
  7.   private static final long serialVersionUID = 1L;
  8.   public LineSample05(){
  9.     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  10.   }
  11.   public void paint(Graphics g){
  12.     super.paint(g);
  13.     Graphics2D g2 = (Graphics2D)g;
  14.     g2.setStroke(new BasicStroke(3.0f));
  15.     g2.setColor(Color.GREEN);
  16.     int xpoint[] = { 30,  50, 70,  90, 110, 130, 150 };
  17.     int ypoint[] = { 40, 110, 40, 110,  40, 110,  40 };
  18.     g2.drawPolyline(xpoint, ypoint, xpoint.length);
  19.   }
  20.   public static void main(String[] args) {
  21.     JFrame f = new LineSample05();
  22.     f.setTitle("Swingサンプル(連続直線の描画)");
  23.     f.setSize(200,200);
  24.     f.setBackground(Color.WHITE);
  25.     f.setVisible(true);
  26.   }
  27. }
[ サンプルプログラムの実行結果 ]

[ 関連ページ ]
連続太線のアプレット版サンプル
Swing版サンプルの他の図形描画
四角形(太線) / 角の丸い四角形(太線) / 円(太線) / 楕円(太線) / 多角形(太線) / ベジェ曲線(太線) / ベジェ曲線を含む図形(太線) / 円弧(太線) / 楕円弧(太線) / 弓形(太線) / 扇形(太線)



6. 連続的に繋がった太い破線の描画

[ サンプルプログラムのソースコード - LineSample06.java - ]
  1. import javax.swing.JFrame;
  2. import java.awt.BasicStroke;
  3. import java.awt.Color;
  4. import java.awt.Graphics;
  5. import java.awt.Graphics2D;
  6. public class LineSample06 extends JFrame {
  7.   private static final long serialVersionUID = 1L;
  8.   public LineSample06(){
  9.     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  10.   }
  11.   public void paint(Graphics g){
  12.     super.paint(g);
  13.     Graphics2D g2 = (Graphics2D)g;
  14.     float[] dash = { 20.0f, 5.0f,3.0f,5.0f };
  15.     g2.setStroke(new BasicStroke(
  16.                  2.0f,
  17.                  BasicStroke.JOIN_ROUND,
  18.                  BasicStroke.CAP_BUTT,
  19.                  1.0f,
  20.                  dash,
  21.                  0.0f));
  22.     g2.setColor(Color.GREEN);
  23.     int xpoint[] = { 30,  50, 70,  90, 110, 130, 150 };
  24.     int ypoint[] = { 40, 110, 40, 110,  40, 110,  40 };
  25.     g2.drawPolyline(xpoint, ypoint, xpoint.length);
  26.   }
  27.   public static void main(String[] args) {
  28.     JFrame f = new LineSample06();
  29.     f.setTitle("Swingサンプル(連続直線の描画)");
  30.     f.setSize(200,200);
  31.     f.setBackground(Color.WHITE);
  32.     f.setVisible(true);
  33.   }
  34. }
[ サンプルプログラムの実行結果 ]

[ 関連ページ ]
連続破線のアプレット版サンプル
Swing版サンプルの他の図形描画
四角形(破線) / 角の丸い四角形(破線) / 円(破線) / 楕円(破線) / 多角形(破線) / ベジェ曲線(破線) / ベジェ曲線を含む図形(破線) / 円弧(破線) / 楕円弧(破線) / 弓形(破線) / 扇形(破線)




最終更新日:2019/02/13

2015-03-01からの訪問者数
  495 人