折れ線を描く(drawPolyline(int x[],int y[],int z))

折れ線を描くにはやはりGraphicsクラスのdrawPolylineメソッドを使います。

ここで注目してほしいのはdrawPolylineメソッドの引数です。

引数には

drawPolyline(int x[],int y[],int z)

とあります。この引数がアプレットに描く時の座標を表しています。

つまり以下のように書き換えられます。

drawPolyline(x座標配列,Y座標配列,頂点の数)

になります。

サンプルプログラム(AppletSample11.java)

//java.appletパッケージをimport宣言
//Graphicsクラスはawtパッケージに属しているのでawtパッケージもimport宣言

import java.applet.*; import java.awt.*; //Appletクラスを継承 public class AppletSample11 extends Applet{ public void paint(Graphics g){ //折れ線を描く g.setColor(Color.cyan); int x[] = {10,40,70,100,150}; int y[] = {30,20,50,20,100}; g.drawPolyline(x,y,5);
} }

プログラムをコピーする場合すべて選択をクリックしてください。

HTMLの作成(AppletSample11.html)

<html>
  <head>
      <title>アプレット11</title>
  </head>
   <body>

<h1>折れ線を描く</h1> <applet code="AppletSample11.class" width="200" height="150"></applet> </body> </html>

プログラムをコピーする場合すべて選択をクリックしてください。

Sponsored link

コンパイル後にアプレットビューアーを起動してみます。
以下のようになります。

このような折れ線が描けました。
下の図を参照してください。

説明しますとx座標とy座標をそれぞれ配列に格納しています。
今回は頂点の数を5つの折れ線を描きました。

では次のプログラムはどうでしょう?

サンプルプログラム(AppletSample11_1.java)

//java.appletパッケージをimport宣言
//Graphicsクラスはawtパッケージに属しているのでawtパッケージもimport宣言

import java.applet.*; import java.awt.*; //Appletクラスを継承 public class AppletSample11_1 extends Applet{ public void paint(Graphics g){ //折れ線を描く g.setColor(Color.cyan); int x[] = {10,40,70,100,150}; int y[] = {30,20,50,20,100}; g.drawPolyline(x,y,7);
} }

プログラムをコピーする場合すべて選択をクリックしてください。

HTMLの作成(AppletSample11_1.html)

<html>
  <head>
      <title>アプレット11_1</title>
  </head>
   <body>

<h1>折れ線を描く</h1> <applet code="AppletSample11_1.class" width="200" height="150"></applet> </body> </html>

プログラムをコピーする場合すべて選択をクリックしてください。

Sponsored link

アプレットビューアを起動するとこのようなエラーになります。

今回はコンパイルは成功しましたが実行したところこのような例外が発生しました。
これは今回はg.drawPolyline(x,y,7);に変更しました。
ここで重要なのはx座標とy座標の格納している配列の要素数は5です。
しかし、折れ線の頂点の数は7になっています。

つまりx座標とy座標の配列の要素数よりも頂点の数は超えてはいけないのです。

ではもうひとつサンプルプログラムを見ていきたいと思います。

サンプルプログラム(AppletSample11_2.java)

//java.appletパッケージをimport宣言
//Graphicsクラスはawtパッケージに属しているのでawtパッケージもimport宣言

import java.applet.*; import java.awt.*; //Appletクラスを継承 public class AppletSample11_2 extends Applet{ public void paint(Graphics g){ //折れ線を描く g.setColor(Color.cyan); int x[] = {10,40,70,100,150}; int y[] = {30,20,50,20,100}; g.drawPolyline(x,y,3);
} }

プログラムをコピーする場合すべて選択をクリックしてください。

HTMLの作成(AppletSample11_2.html)

<html>
  <head>
      <title>アプレット11_2</title>
  </head>
   <body>

<h1>折れ線を描く</h1> <applet code="AppletSample11_2.class" width="200" height="150"></applet> </body> </html>

プログラムをコピーする場合すべて選択をクリックしてください。

Sponsored link

スクール・通信講座の徹底比較!一括資料請求【無料】
技術系の通信教育講座ならJTEX
100GB、マルチドメインやMySQLが無制限。CGI・PHP高速化機能搭載【X2】


コンパイル後にアプレットビューアーを起動してみます。
以下のようになります。

今回は頂点の数を配列の要素数よりも少なくしました。
この場合は頂点の数の分だけ折れ線を描きます。

実際に確認してみよう

サンプルアプレット
ページのトップへ戻る