TCanvas BCB:TCanvasクラスでグラフィックを扱う。 TFormなどもプロパティとして持っている。

Slides:



Advertisements
Similar presentations
オブジェクト指向 言語 論 第八回 知能情報学部 新田直也. 多相性(最も単純な例) class A { void m() { System.out.println( “ this is class A ” ); } } class A1 extends A { void m() { System.out.println(
Advertisements

シミュレーション演習 G. 総合演習 ( Mathematica 演 習) システム創成情報工学科 テキスト作成: 藤尾 光彦 講義担当: 尾下 真樹.
マルチフォーム BCB では親 Form から子 Form を呼び出す ことが出来る。 Unit1.cpp に子 From のヘッダー Unit2.h を インクルードしておく 親 Form から子 Form のメソッド –Show() –ShowModal() を使うことで呼び出せる。
ファーストイヤー・セミナーⅡ 第13回 2次元グラフィックス(1). 2次元グラフィックス Ultra-C では、これまで利用してきた「標準入出力」 以外に「グラフィックス画面」があり、図形などを 表示できる C 言語のグラフィックスには細かな規定がなく、こ れから学ぶ内容が他の環境、システムでは利用でき.
初年次セミナー 第13回 2次元グラフィックス(1).
2001年11月更新 2章 Windowプログラムの構成 Windowsプログラムおよび       PiasTkプログラムの基本構造.
TeX で数式を書くための PowerPoint アドイン Ver (2011/06/26) Ver. 0.1 (2007/5/30)
情報処理演習 (9)グラフィックス システム科学領域 日浦 慎作.
初年次セミナー 第14回 2次元グラフィックス(2).
情報処理 第8回.
パワーポイントの使い方 東京女子大学 情報処理センター 浅川伸一.
情報処理 第7回.
情報処理入門A・B 第7回 ワープロソフト入門(2)
情報基礎演習B 後半第5回 担当 岩村 TA 谷本君.
1.1 C/C++言語 Hello.ccを作りコンパイルしてa.outを作り出し実行する
TMenu メニューバーを用いた操作のための コンポーネント.
プレゼンテーション用ソフトウェア Impress
Applet 岡部 祐典 鈴木 敬幸.
Win32APIとMFC H107102 古田雅基 H107048 佐藤一樹 H107126 山下洋平.
TeX で数式を書くための PowerPoint アドイン Ver. 0.1 (2007/5/30)
C#によるWindowsFormApplication入門
地理情報システム論 第3回 コンピュータシステムおける データ表現(1)
プレゼンテーション用ソフトウェア Impress
画像の作成と編集.
プログラミング演習3 第4回 ミニプロジェクト.
情報コミュニケーション入門b 第4回 ワープロソフト入門(2)
10: ファイル入出力 C プログラミング入門 基幹2 (月4) Linux にログインし、以下の講義ページ を開いておくこと
プログラミング演習3 第2回 GUIの復習.
補足説明.
CGと形状モデリング 授業資料 長井 超慧(東京大学)
C 言語について 補足資料 資料および授業の情報は :
基礎プログラミング演習 第10回.
グラフィックス、その1 色の表示 フォントを変えて文字を表示 直線、四角形、楕円形の描画 円弧の描画 多角形の描画
プログラミング演習3 第3回 ミニプロジェクト.
情報処理 第8回.
プログラミング演習3 第3回 ミニプロジェクト.
フォームのデザイン Labelコントロール変更点 (name): labelDate Font Size: 18pt
ローカル変数とグローバル変数 ローカル変数  定義された関数内だけで使用できる変数 グローバル変数 プログラム全体で使用できる変数.
電界中の電子の運動 シミュレータ作成 精密工学科プログラミング基礎 資料.
10.構造体とグラフィックス.
画像処理プログラムの説明.
プログラミング演習3 第2回 GUIの復習.
演習1 : インターフェイスを使ってみよう 「10人の客(乗用車、バイク、ストーブのいずれかランダムに決定)に1~100(L)の給油をするガソリンスタンドをシミュレートする実行クラス : RefuelSimulation」を作成する。給油の際には、どの種類の客が何リットル給油したか出力すること。 実行結果例.
デジタル画像とC言語.
オブジェクト指向言語論 第十一回 知能情報学部 新田直也.
プログラミング基礎a 第12回 Java言語による図形処理入門(3) アニメーション入門
プログラミング基礎a 第11回 Java言語による図形処理入門(3) アニメーション入門
オブジェクト指向言語論 第十一回 知能情報学部 新田直也.
岩村雅一 知能情報工学演習I 第12回(C言語第6回) 岩村雅一
プログラミングⅠ 平成30年10月22日 森田 彦.
情報コミュニケーション入門e 第9回 Part1 ワープロソフト入門(2)
オブジェクト指向言語論 第六回 知能情報学部 新田直也.
プログラミング言語論 第六回 理工学部 情報システム工学科 新田直也.
情報コミュニケーション入門e 第9回 Part1 ワープロソフト入門(2)
第7回放送授業.
プログラミング言語論 第十三回 理工学部 情報システム工学科 新田直也.
JAVA GUIプログラミング 第3回 イベント処理① マウスイベント.
TeX で数式を書くための PowerPoint アドイン Ver. 0.1 (2007/5/30)
画面への描画 Graphics オブジェクト 紙 ペン Pen オブジェクト Brush オブジェクト 画面のピクセルをカプセル化
TeX で数式を書くための PowerPoint アドイン Ver. 0.1 (2007/5/30)
プログラミング基礎a 第9回 Java言語による図形処理入門(1) Javaアプレット入門
43 43 A子 敵対記号:オートシェイプのフリーフォームをクリックし、上下させながらクリックを繰り返す。
岩村雅一 知能情報工学演習I 第12回(後半第6回) 岩村雅一
スライドの終わりまでテキストが繰り返しスクロールされます • スライドの終わりまでテキストが繰り返しスクロールされます •
3.1 シューティングゲームの当たり判定 当たったら死亡.
CGと形状モデリング 授業資料 1,2限: 大竹豊(東京大学) 3,4限: 俵 丈展(理化学研究所)
TList リスト構造とは? 複数のデータを扱うために、 データの内容と、次のデータへのポインタを持つ構造体を使う。
計算機プログラミングI 第2回 2002年10月17日(木) 履習登録 複習 ライブラリの利用 (2.6-7) 式・値・代入 (2.6-8)
計算機プログラミングI 第5回 2002年11月7日(木) 配列: 沢山のデータをまとめたデータ どんなものか どうやって使うのか
5-5 文字列の描画 (1)基本的な文字列描画 A.手順
Presentation transcript:

TCanvas BCB:TCanvasクラスでグラフィックを扱う。 TFormなどもプロパティとして持っている。 Tbitmap,TPaintBox,Timageなども持っている。

TCanvasのプロパティ Pen : 線や点を描く時の、大きさや色を指定します。       TPenクラスの変数です。 Brush :    絵を塗りつぶす色や模様を指定します。       TBrushクラスの変数です。 Font   :    TCanvasに書くテキストのFont設定を指定します。       TFontクラスの変数です。 Pixels :    TCanvasの個々のドット(点)の色を指定したり、       色を読み取るときにつかいます。            TColorクラスの二次元配列です。 PenPos : Penの現在位置を示します。

TCanvasのメソッド関数 void __fastcall MoveTo(int X, int Y); 線を描画するときの始点としてPenPosプロパティを設定します。 void __fastcall LineTo(int X, int Y); PenPos プロパティで指定される位置から,座標(X, Y)まで線を引きます。座標(X,Y)は色がつきません。 PenPos の値は(X, Y)に変更されます。 線は Penのプロパティ(色、太さ、パターン) で描画されます。

TCanvas void __fastcall Rectangle(int X1, int Y1, int X2, int Y2); プロパティPen を使って長方形を描画して, その図形をプロパティ Brush で塗りつぶします。 Rectangle は,以下のどちらかの方法で長方形の座標を指定します。 1.左上の角(X1, Y1)および右下の角(X2, Y2)を定義する座標を 4 つ設定する 2.TRect 型を使う

TCanvas void __fastcall Ellipse(int X1, int Y1, int X2, int Y2); 円や楕円を描画します。 Ellipse は,以下のいずれかの値を設定することによって外接長方形を指定します。 1.左上の座標(X1, Y1)および右下の座標(X2, Y2) 2.TRect 値 外接長方形が正方形の場合は,円が描画されます。 楕円の外周は Pen の値を使って描画され,内部は Brush の値を使って塗りつぶされます。

TCanvas void __fastcall TextOut(int X, int Y, const AnsiString Text); TextOut メソッドを呼び出すと,キャンバスに文字列を書き込むことができます。文字列は現在の Font 値に応じて書き込まれます。

TCanvasでは、 左上が(0,0)となり、右下に向かって座標値が増えていきます。

TCanvas 通常の座標系に合わせて描画するには・・・ 座標の指定に表示する座標系の原点をOrgX,OrgYとして付け加える。

通常の座標系に合わせて描画するには・・・ TCanvas 通常の座標系に合わせて描画するには・・・

問題点:他の窓が重なったりすると、画像が消える。 TCanvas 問題点:他の窓が重なったりすると、画像が消える。

対策: Timage を使う。 Tcanvasを内蔵 グラフィックのペイントと更新は,自動的に処理される。

TcanvasのインスタンスCanvasを持っている。Formに貼り付けて使う。 TImage TcanvasのインスタンスCanvasを持っている。Formに貼り付けて使う。

印刷 BCB(Windows)では・・・ Canvasに描画を行う -> Windowに描画 オブジェクトTPritnerに描画する->印刷 TPrinterを使うには, UnitファイルにPrinters.hppをインクルードする。

プリンタの設定 TPrintDialog    と  TPrinterSetupDialog    で プリンタの設定を行います。

プリンタの設定 Tmenu,TPrintDialogとTPrinterSetupDialogを追加

プリンタの設定 メニューでプリンタの項目を追加

プリンタの設定 UnitファイルにPrinters.hppをインクルード

プリンタの設定 プリンタ設定、印刷のイベントを記述する。

プリンタの設定 TPrinterSetupDialogのメンバ関数Execute( ) Windowsマシンにつながっているプリンタの選択などの設定を行う。 設定はこのFormが実行されている間は有効です。

プリンタの設定 PrintDialogのメンバ関数Execute( ) ダイアログが表示され、使用するプリンタ、印刷枚数を設定。 印刷を実行する場合、Execute( )はtrueを返し、 キャンセルの時はfalseを返します。

印刷の方法 TPrinter *Prntr = Printer(); プリンタオブジェクトの準備を行う。 Prntr->BeginDoc();//印刷の開始 //ここに、実際に印刷する内容の描画を行う。 Prntr->EndDoc();//印刷の終了

今回の印刷は・・・ TcanvasのDraw関数を使用: Draw( )関数は、TGraphicを引数として、 その内容をそのまま描画する関数です。 Image1のクラスTImageには、TImageの描画 内容を記録するPictureプロパティ内に TGraphicクラスの変数Graphicを持っています。 これをDraw( )関数に渡してやることができます。