プログラミング基礎a 第9回 Java言語による図形処理入門(1) Javaアプレット入門 2010.12.08 プログラミング基礎a 第9回 Java言語による図形処理入門(1) Javaアプレット入門 坂口利裕
Java言語の特徴 Sun Microsystems社が開発し普及に努めている言語 文法の基本は,C,C++に類似 プログラミング基礎a 2010.12.08 Java言語の特徴 Sun Microsystems社が開発し普及に努めている言語 文法の基本は,C,C++に類似 変数宣言や計算表現などはほぼ同じ 制御構造(if,for,while)もほぼ同じ 「クラス」概念によるデータ中心(オブジェクト指向)の言語 グラフィクス処理が標準で可能 ソース互換,バイナリ互換でもある 個人ベースの開発環境は無償配布 2010.12.08 プログラミング基礎a 坂口利裕
各OS・ハードウェアの環境下で再コンパイルが必要 ソース互換 各OS・ハードウェアの環境下で再コンパイルが必要 ソース プログラム Windows用 コンパイラ MacOS用 コンパイラ Linux用 コンパイラ Windows用 プログラム 互換性なし MacOS用 プログラム 互換性なし Linux用 プログラム Windows MacOS Linux OS DOS/V Macintosh DOS/V ハードウェア 2010.12.08 プログラミング基礎a
特定の環境でコンパイルされたプログラムであっても他のマシン上で実行可能 バイナリ互換 特定の環境でコンパイルされたプログラムであっても他のマシン上で実行可能 ソース プログラム VM=Virtual Machine OSの一部として動作するように作られた擬似的ハードウェア(実態はソフトウェア) (Windows用) Javaコンパイラ 実行 プログラム Windows+JavaVM MacOS+JavaVM Linux+JavaVM OS DOS/V Macintosh DOS/V ハードウェア 2010.12.08 プログラミング基礎a
オブジェクト指向プログラミング 構造化プログラミング オブジェクト指向 はじめに「クラス」ありき プログラムの部品化 手続き重視型 イベント駆動型 はじめに「クラス」ありき 属性→(インスタンス)変数 機能→メソッド 2010.12.08 プログラミング基礎a
Javaアプレットの特徴 Webブラウザで動作することが前提 呼出し用のHTMLファイルが必要 ネットワーク経由で実行可能 2010.12.08 プログラミング基礎a
練習(1) 授業用ホームページから Java教材のデモを実行 SunのJavaプログラムのデモンストレーション を実行 ソースも見て特徴・雰囲気をつかむ 気のついた点は適宜メモしておく 2010.12.08 プログラミング基礎a
グラフィックスの基礎 原理・基本事項 光の点(pixel)の集まりで画面が構成されている 画面を表すメモリー(VRAM)に情報を書き込む プログラミング基礎a 2010.12.08 グラフィックスの基礎 原理・基本事項 光の点(pixel)の集まりで画面が構成されている 画面を表すメモリー(VRAM)に情報を書き込む ビデオ制御用のチップがVRAMの内容に応じて映像信号に変換 座標系(左上が原点,右向き,下向き),色情報(RGB) 2010.12.08 プログラミング基礎a 坂口利裕
画面の大きさのいろいろ 大きさの違い 色の違い VGA(640x480),SVGA(800x600),XGA(1024x768) 3ビット(8),4ビット(16),8ビット(256),16ビット(約6万5千),24ビット(1600万),32ビット(??) 2010.12.08 プログラミング基礎a
プログラミング言語による図形処理 国際規格はあるにはある(ライブラリの規約) プログラミング言語の仕様としての規格 GKS,Phigsなど BASICの描画命令など Java言語(Javaスクリプトとは別物) 2010.12.08 プログラミング基礎a
Java言語によるグラフィクス処理 (アプレットによる場合) ソースプログラムを作る(~.java) コンパイルする(javac ~.java) 表示用のHTMLファイルを作る( ~.html) HTMLファイルをWebブラウザで閲覧 コンパイルされたclassファイルがブラウザ内で実行される 2010.12.08 プログラミング基礎a
練習(2) マイドキュメント(Z:ドライブ)に新規フォルダを作成 授業用ホームページから program_j と名前を変更 授業用ホームページから jprog01.javaとjprog01.htmlを program_j フォルダへダウンロード EmEditorで jprog01.java と jprog01.htmlの内容を確認 呼び出すときの「ファイルの種類」に注意 コマンドプロンプトで javac prog01.java でコンパイル start prog01.html でWebブラウザを起動 2010.12.08 プログラミング基礎a
図形描画のメソッド(1) g.drawLine( 始点のx座標,始点のy座標, 終点のx座標,終点のy座標) ; 2010.12.08 プログラミング基礎a
図形描画のメソッド(2) g.drawRect( 左上のx座標,左上のy座標,幅,高さ) ; g.fillRect(左上のx座標,左上のy座標,幅,高さ) ; 2010.12.08 プログラミング基礎a
図形描画のメソッド(3) g.drawOval( 左上のx座標,左上のy座標,幅,高さ) ; g.fillOval ( 左上のx座標,左上のy座標,幅,高さ) ; 2010.12.08 プログラミング基礎a
図形描画のメソッド(4) 色の変更 g.setColor( Color.色名 ) ; または g.setColor( new Color( Rの値(0~255), G, B ) ) ; を呼び出してから描画メソッドを使用 2010.12.08 プログラミング基礎a
練習(3) プログラム例 jprog01.java を用いて 修正されたプログラムは 色の変更メソッドを加えて色を変えてみなさい 図形の大きさを修正してみなさい 別の図形を付け加えてみなさい 修正されたプログラムは 上書き保存して再コンパイル Webブラウザでの再起動は [Ctrl]キーを押しながら 2010.12.08 プログラミング基礎a
Javaアプレットの作成練習 テキストエディタでソースファイルを作成 コンパイラで翻訳 表示用Webページを作成 Webブラウザで実行 プログラミング基礎a 2010.12.08 Javaアプレットの作成練習 テキストエディタでソースファイルを作成 拡張子は .java とする ファイル名は内部のクラス名と一致させる コンパイラで翻訳 javac ~.java 表示用Webページを作成 拡張子は .html とする 呼び出しは <applet code=“…” width=“…” height=“…”> </applet> というタグで指示する Webブラウザで実行 start ~.html 2010.12.08 プログラミング基礎a 坂口利裕
練習(4) 日本の国旗(日の丸)を描くプログラムを新たに作成せよ ソースプログラム jprog02.java プログラミング基礎a 2010.12.08 練習(4) 日本の国旗(日の丸)を描くプログラムを新たに作成せよ ソースプログラム jprog02.java クラス名はソースプログラム名に一致させ public class jprog02 extends Applet { … } のようにする 描画内容はメソッド public void paint(Graphics g) { … } の内部に記述 座標は中心を先に決めておくと楽? HTMLファイルには,最低限 <applet code=“jprog02.class” width=“…” height=“…”> </applet> の記述を用意する 2010.12.08 プログラミング基礎a 坂口利裕
「日本の国旗」 50 50 200 300 中心は? 2010.12.08 プログラミング基礎a プログラミング基礎a 2010.12.08 坂口利裕