Javaプログラミング学習サイト ゆるゆるプログラミング

・Javaソースダウンロード(GR_Triangle.java)

このソースについての記事はこちら「正三角形の描画」です。

GR_Triangle.javaをダウンロード

ダウンロードしたファイルはzip形式です。解凍して使ってください。Windowsの場合、ダウンロードしたzipファイルをマウスの右ボタンでクリックして表示されるポップアップメニューから「すべて展開(T)」で解凍できます。

import java.awt.*;
import javax.swing.*;

public class GR_Triangle {
	public static void main(String[] args) {
		JFrame frame = new JFrame();

		// // タイトル名を設定
		frame.setTitle( "正三角形描画" );

		// フレームの大きさを設定
		frame.setSize( 256, 256 );

		// ”×”ボタンを押した時の処理を設定
		frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );

		// フレームにパネルを追加
		MyPanel panel = new MyPanel();
		frame.getContentPane().add( panel );

		// フレームを表示
		frame.setVisible( true );
	}
}


// JPanelを継承したMyPanelを作成
class MyPanel extends JPanel {
	public MyPanel() {
		// 背景色を白(white)に設定
		setBackground( Color.white );
	}


	// drawLineによる正三角形の描画
	//  g  : グラフィックコンテキスト
	//  gx : 正三角形の重心x座標
	//  gy : 正三角形の重心y座標
	//  a  : 1辺の長さ
	private void drawTriangle( Graphics g, int gx, int gy, int a )
	{
		// 三角形の3つの角の座標
		int x1, y1, x2, y2, x3, y3;

		// 正三角形の高さ
		double h;

		// 正三角形の高さの計算
		double l = (double)a;
		h = Math.sqrt( l * l - ( l / 2.0 ) * ( l / 2.0 ) );
		
		// 正三角形の頂点座標を計算
		x1 = gx;
		y1 = (int)( (double)gy - h * 2.0 / 3.0 );

		x2 = (int)( (double)gx - l / 2.0 );
		y2 = (int)( (double)gy + h * 1.0 / 3.0 );

		x3 = (int)( (double)gx + l / 2.0 );
		y3 = y2;

		// 各辺の描画
		g.drawLine( x1, y1, x2, y2 );
		g.drawLine( x2, y2, x3, y3 );
		g.drawLine( x3, y3, x1, y1 );
	}


	// 描画
	public void paintComponent( Graphics g ) {
		super.paintComponent( g );

		// ラインの色を黒(black)に設定
		g.setColor( Color.black );

		// 正三角形を描画
		drawTriangle( g, 120, 127, 100 );
	}
}

このソースについての記事はこちら「正三角形の描画」です。

 

■新着情報

2022.07.06 完全数 6=1+2+3

■広告

 

 

 

 

Topへ