円弧を描く(drawArc(int x,int y,int width int height,int start,int end ))

円弧を描くにはやはりGraphicsクラスのdrawArcメソッドを使います。

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

引数には

drawArc(int x,int y,int width int height,int start,int end)

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

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

drawArc(左上X座標,左上Y座標,幅,高さ,開始角度,終了角度)

になります。

塗り円弧を描く fillArc(int x,int y,int width int height,int start,int end )

塗りつぶされた円弧を描くにはやはりGraphicsクラスのfillArcメソッドを使います。

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

引数には

fillArc(int x,int y,int width int height,int start,int end)

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

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

fillArc(左上X座標,左上Y座標,幅,高さ,開始角度,終了角度)

になります。

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

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

import java.applet.*; import java.awt.*; //Appletクラスを継承 public class AppletSample12 extends Applet{ public void paint(Graphics g){ //円弧を描く g.setColor(Color.gray); g.drawArc(10,10,100,100,90,270);
//塗りつぶされた円弧を描く g.setColor(Color.pink); g.fillArc(130,10,100,100,-90,-270);
} }

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

HTMLの作成(AppletSample12.html)

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

<h1>円弧を描く</h1> <applet code="AppletSample12.class" width="250" height="120"></applet> </body> </html>

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

Sponsored link

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

このようになりました。
下の図を参照してください。

まず、時計をイメージしてください。
まず、時計で3時の方向が0度になります。
この図ではstartは90度の位置にあり90度の位置から270度の位置が終了の位置になります。
つまりどの位置からスタートするかで同じ終了角度の図形でも違ってきます。
では、それを確認したいと思います。

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

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

import java.applet.*; import java.awt.*; //Appletクラスを継承 public class AppletSample12_1 extends Applet{ public void paint(Graphics g){
//塗りつぶされた円弧を描く g.setColor(Color.lightGray); g.fillArc(10,10,100,100,0,270);
g.setColor(Color.lightGray); g.fillArc(130,10,100,100,90,270);
} }

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

HTMLの作成(AppletSample12_1.html)

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

<h1>円弧を描く</h1> <applet code="AppletSample12_1.class" width="250" height="150"></applet> </body> </html>

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

Sponsored link

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

このようにstart位置の違いで違う図形が描けました。
では、今度は終了角度を変えてみたいと思います。

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

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

import java.applet.*; import java.awt.*; //Appletクラスを継承 public class AppletSample12_2 extends Applet{ public void paint(Graphics g){
//塗りつぶされた円弧を描く g.setColor(Color.lightGray); g.fillArc(10,10,100,100,0,360);

} }

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

HTMLの作成(AppletSample12_2.html)

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

<h1>円弧</h1> <applet code="AppletSample12_2.class" width="250" height="150"></applet> </body> </html>

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

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

このように終了角度を360度にすることで円が描けます。
実際に確認してみよう
サンプルアプレット
ページのトップへ戻る