情報処理演習 (9)グラフィックス システム科学領域 日浦 慎作.

Slides:



Advertisements
Similar presentations
ファーストイヤー・セミナーⅡ 第13回 2次元グラフィックス(1). 2次元グラフィックス Ultra-C では、これまで利用してきた「標準入出力」 以外に「グラフィックス画面」があり、図形などを 表示できる C 言語のグラフィックスには細かな規定がなく、こ れから学ぶ内容が他の環境、システムでは利用でき.
Advertisements

オブジェクト指向言語・ オブジェクト指向言語演習 中間試験回答例. Jan. 12, 2005 情報処理技術基礎演習 II 2 オブジェクト指向言語 中間試験解説 1  (1) 円柱の体積(円柱の体積 = 底面の円の面積 x 高さ) を求めるプログラムを作成しなさい。ただし、出力結果は、入 力した底面の円の半径.
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
復習 配列変数の要素 5は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字,またはインデックスと呼ぶ
初年次セミナー 第13回 2次元グラフィックス(1).
初年次セミナー 第14回 2次元グラフィックス(2).
情報処理演習C2 ファイル操作について (2).
プログラミング入門2 第10回 構造体 情報工学科 篠埜 功.
プログラミング入門2 第10回 構造体 情報工学科 篠埜 功.
システムプログラミング 第5回 情報工学科 篠埜 功 ヒアドキュメント レポート課題 main関数の引数 usageメッセージ
基礎プログラミングおよび演習 第9回
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
地理情報システム論 第3回 コンピュータシステムおける データ表現(1)
Excelによる3-D/等高線グラフの描画 2変数関数の描画 Excel によるグレイスケールマップ風描画
画像の作成と編集.
理由:文字数より要素数の多い配列を用いた時に,文字列の最後を示すため
理由:文字数より要素数の多い配列を用いた時に,文字列の最後を示すため
構造体.
プログラミング演習Ⅰ 課題2 10進数と2進数 2回目.
CGと形状モデリング 授業資料 長井 超慧(東京大学)
C 言語について 補足資料 資料および授業の情報は :
基礎プログラミング演習 第10回.
ちょっとした練習問題① 配列iroを['R', 'W', 'R', 'R', 'W' , 'W' , 'W']を宣言して、「W」のときの配列の番号をprintfで表示するようなプログラムを記述しなさい。
JAVA GUIプログラミング 第2回 グラフィックスを使っての演習 グラフを描こう.
グラフィックス、その1 色の表示 フォントを変えて文字を表示 直線、四角形、楕円形の描画 円弧の描画 多角形の描画
関数と配列とポインタ 1次元配列 2次元配列 配列を使って結果を返す 演習問題
プログラミング応用 printfと変数.
第11回 宿題 出題日:12月21日 締切日:1月7日(木).
Cプログラミング演習 第7回 メモリ内でのデータの配置.
電界中の電子の運動 シミュレータ作成 精密工学科プログラミング基礎 資料.
第9回 卒業研究1
TCanvas BCB:TCanvasクラスでグラフィックを扱う。 TFormなどもプロパティとして持っている。
精密工学科プログラミング基礎 第10回資料 (12/18実施)
プログラミング 4 記憶の割り付け.
プログラミング序論 2. n人のインディアン.
OpenGLライブラリを用いた3次元フラクタルの描画
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
今までの練習問題の復習.
前回の練習問題.
第9回関数Ⅰ (簡単な関数の定義と利用) 戻り値.
第7回 プログラミングⅡ 第7回
デジタル画像とC言語.
プログラミング基礎B 文字列の扱い.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
疑似乱数, モンテカルロ法によるシミュレーション
SystemKOMACO Jw_cad 基本操作(3) Ver.1
精密工学科プログラミング基礎Ⅱ 第5回資料 今回の授業で習得してほしいこと: 構造体 (教科書 91 ページ)
C言語 はじめに 2016年 吉田研究室.
岩村雅一 知能情報工学演習I 第9回(後半第3回) 岩村雅一
プログラミング基礎a 第6回 C言語によるプログラミング入門 配列と文字列(その2)
プログラミング序論演習.
復習 2次元配列 4列 j = 0 j = 1 j = 2 j = 3 i = 0 i = 1 i = 2 3行
高度プログラミング演習 (09).
復習 Cにおけるループからの脱出と制御 break ループを強制終了する.if文と組み合わせて利用するのが一般的. continue
地理情報システム論(総)/ 国民経済計算論(商)
地理情報システム論 第4回 コンピュータシステムおける データ表現(2)
標準入出力、変数、演算子、エスケープシーケンス
cp-15. 疑似乱数とシミュレーション (C プログラミング演習,Visual Studio 2019 対応)
cp-3. 計算 (C プログラミング演習,Visual Studio 2019 対応)
プログラミング 4 文字列.
Cp-1. Microsoft Visual Studio 2019 C++ の使い方 (C プログラミング演習,Visual Studio 2019 対応) 金子邦彦.
四則演算,変数 入力文,出力文,代入文, ライブラリ関数
情報処理Ⅱ 2005年11月25日(金).
CGと形状モデリング 授業資料 1,2限: 大竹豊(東京大学) 3,4限: 俵 丈展(理化学研究所)
第2章 数値の入力と変数 scanfと変数をやります.
知能情報工学演習I 第9回(後半第3回) 課題の回答
岩村雅一 知能情報工学演習I 第7回(後半第1回) 岩村雅一
第1章 文字の表示と計算 printfと演算子をやります 第1章 文字の表示と計算.
岩村雅一 知能情報工学演習I 第9回(C言語第3回) 岩村雅一
Presentation transcript:

情報処理演習 (9)グラフィックス システム科学領域 日浦 慎作

グラフィックス C言語には,グラフィックス表示 に関する機能は備わらない コンピュータシステムの種類に依存 いろいろなグラフィックス表示の形態がある ビジネスソフトウェアの表示(数式やグラフなど) 立体的な表示(3次元コンピュータグラフィックス) ビデオ,アニメーションのような動画表示 など.これらに合わせてそれぞれ適した グラフィックス表示ライブラリを用いる.

情報処理演習では “HandyGraphics” ライブラリを使用 単純,簡単 handy.h の include を忘れない コンパイルオプションに -lhg を入れる #include <stdio.h> #include <handy.h> int main (void) { int w; w = HgWOpen( 200.0, 150.0, 500.0, 400.0); HgInitEPS( w, “file.eps”); /* 絵を描く関数を呼び出す */ HgWClose (w); return 0; }

HandyGraphics で使える関数 直線 : HgWLine() 円 : HgWCircle() 四角形 : HgWBox() 始点と終点の x, y 座標を指定 円 : HgWCircle() 中心の x,y 座標と半径を指定 塗りつぶしあり : HgWCircleFill() 四角形 : HgWBox() 左下隅の座標と,幅,高さを指定 塗りつぶしあり : HgWBoxFill() 文字列 : HgWText() 文字を表示する場所の左下隅の座標と,文字列を指定

その他の関数 HgWClear ( w ); 画面のクリア HgColor(HgRGB (R, G, B)); 色の設定 HgWWidth( w, t); 線の幅の指定 など

曲線の表示 曲線を数値で表すことは難しい 例えば sin 曲線を書く場合 曲線は「折れ線」で表示 分割数を増やすと事実上曲線に見える y = sin(x) の x を変化させながら y の値を求める 一つ前の座標から新しい座標までを直線で結ぶ

sprintf() printf () : 画面に文字を表示 sprintf では画面に表示する代わりに文字列に結果を入れることが出来る 画面に出すにはいいが,計算機内での処理には不向き 例えば,数値に対応する文字列を得る場合 double の数値 123.4  5文字の文字列 “123.4” sprintf では画面に表示する代わりに文字列に結果を入れることが出来る char str[100]; double a = 123.4; sprintf(str, “%f”, a); /* str には文字列 “123.4” が入る */

多角形の描画 座標の配列を用いる double x[4] = {1.0, 2.0, 3.0, 2.0}; double y[4] = {2.0, 1.0, 2.0, 3.0}; HgWPolygon (w, 4, x, y);

図形の描き方 座標変換を駆使する 配列をうまく使う 関数をうまく使う 一次変換:拡大縮小,回転等 同じような図形をたくさん描く,曲線を描くなど 関数をうまく使う 座標の計算,座標変換,一定処理の繰り返しなどに関数をうまく使うとシンプルなプログラムになる