Javaアプレットによる2Dグラフィックサンプル 直線の描画

Javaグラフィックサンプル(アプレット版):直線の描画に関する図形描画サンプルです。輪郭線を太くしたり、破線にしたり。図形内のグラデーション、パターン描画等のサンプルを掲載しています。



直線の描画

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

直線を描くメソッドには、次のものがあります。
・drawLine ・・ 直線の描画を行います
・drawPolyline ・・ 連続した繋がった直線を描画します。

1. 直線の描画

[ サンプルプログラムのソースコード - LineSample01.java - ]
  1. import javax.swing.JApplet;
  2. import java.awt.Graphics;
  3. public class LineSample01 extends JApplet {
  4.   public void paint(Graphics g){
  5.     g.drawLine(10, 10, 100, 100);
  6.   }
  7. }
[ サンプルプログラムの実行結果 ]



2. 太い直線の描画

[ サンプルプログラムのソースコード - LineSample02.java - ]
  1. import javax.swing.JApplet;
  2. import java.awt.BasicStroke;
  3. import java.awt.Graphics;
  4. import java.awt.Graphics2D;
  5. public class LineSample02 extends JApplet {
  6.   public void paint(Graphics g){
  7.     Graphics2D g2 = (Graphics2D)g;
  8.     g2.setStroke(new BasicStroke(5.0f));
  9.     g2.drawLine(10, 10, 100, 100);
  10.   }
  11. }
[ サンプルプログラムの実行結果 ]



3. 破線の描画

[ サンプルプログラムのソースコード - LineSample03.java - ]
  1. import javax.swing.JApplet;
  2. import java.awt.BasicStroke;
  3. import java.awt.Color;
  4. import java.awt.Graphics;
  5. import java.awt.Graphics2D;
  6. public class LineSample03 extends JApplet {
  7.   public void paint(Graphics g){
  8.   Graphics2D g2 = (Graphics2D)g;
  9.   g2.setColor(Color.MAGENTA);
  10.   float[] dash = { 20.0f, 5.0f,3.0f,5.0f };
  11.   g2.setStroke(new BasicStroke(
  12.     2.0f,
  13.     BasicStroke.JOIN_ROUND,
  14.     BasicStroke.CAP_BUTT,
  15.     1.0f,
  16.     dash,
  17.     0.0f));
  18.   g2.drawLine(10, 10, 100, 100);
  19.   }
  20. }
[ サンプルプログラムの実行結果 ]



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

[ サンプルプログラムのソースコード - LineSample04.java - ]
  1. import javax.swing.JApplet;
  2. import java.awt.Color;
  3. import java.awt.Graphics;
  4. public class LineSample04 extends JApplet {
  5.   public void paint(Graphics g){
  6.     g.setColor(Color.ORANGE);
  7.     int xpoint[] = { 10, 30, 50, 70, 90, 110, 130 };
  8.     int ypoint[] = { 10, 80, 10, 80, 10,  80,  10 };
  9.     g.drawPolyline(xpoint, ypoint, xpoint.length);
  10.   }
  11. }
[ サンプルプログラムの実行結果 ]



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

[ サンプルプログラムのソースコード - LineSample05.java - ]
  1. import javax.swing.JApplet;
  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 JApplet {
  7.   public void paint(Graphics g){
  8.     Graphics2D g2 = (Graphics2D)g;
  9.     g2.setStroke(new BasicStroke(3.0f));
  10.     g2.setColor(Color.GREEN);
  11.     int xpoint[] = { 10, 30, 50, 70, 90, 110, 130 };
  12.     int ypoint[] = { 10, 80, 10, 80, 10,  80,  10 };
  13.     g.drawPolyline(xpoint, ypoint, xpoint.length);
  14.   }
  15. }
[ サンプルプログラムの実行結果 ]




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

[ サンプルプログラムのソースコード - LineSample06.java - ]
  1. import javax.swing.JApplet;
  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 JApplet {
  7.   public void paint(Graphics g){
  8.     Graphics2D g2 = (Graphics2D)g;
  9.     float[] dash = { 20.0f, 5.0f,3.0f,5.0f };
  10.     g2.setStroke(new BasicStroke(
  11.       2.0f,
  12.       BasicStroke.JOIN_ROUND,
  13.       BasicStroke.CAP_BUTT,
  14.       1.0f,
  15.       dash,
  16.       0.0f));
  17.     g2.setColor(Color.GREEN);
  18.     int xpoint[] = { 10, 30, 50, 70, 90, 110, 130 };
  19.     int ypoint[] = { 10, 80, 10, 80, 10,  80,  10 };
  20.     g.drawPolyline(xpoint, ypoint, xpoint.length);
  21.   }
  22. }
[ サンプルプログラムの実行結果 ]





最終更新日:2019/02/13

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