SWT 最強ノウハウ集のご案内
メニュー
 ◆ 本製品の特徴
 ◆ SWT-Vo1 1
 ◆ SWT-Vo1 2
 ◆ SWT-Vo1 3
 ◆ SWT-Vo1 4
 ◆ サンプル
 ◆ お申し込み
 ◆ お客様の声
 ◆ よくある質問

■ SWT 最強ノウハウ集 Vol 4


◇ 目次

第1章 Points / Rectangle
         
■ Point クラス
Point のコンストラクト
 
■ Rectangle クラス
Rectangle の有用なメソッド
rectangle 内に特定の座標が含まれるか判定
rectangle とrectangle が交差しているか判定
2つのrectangle を含む最小のrectangle を取得
 
 
 
第2章 GC
 
■ GC クラス
GC のコンストラクト
GC のdispose (破棄)
Paint イベントによる描写
Display上とCanvas上でGCを使用してみる
 
■ 線や図形の描写
線を描く
長方形や惰円を描く
 
■ 線の属性を変更する
線の色を変更する
線の太さを変更する
線の種類を変更する
線の種類を独自に作成して設定する
線の端をキャップする
Polygon での線の結合スタイルを変更する
 
■ Advanced graphics subsystem (高性能グラフィックスサブシステム)の使用
高性能グラフィックスサブシステムが使用可能かどうかチェック
 
■ LineAttributes クラスを使用して線の属性を設定
LineAttributes のコンストラクト
GCにLineAttributes のインスタンスをセットする
GCでLineAttributes を使用したサンプル
 
■ 線のぎざぎざをなくす(Antialias)
 
■ フォーカス表示の描写
 
■ 塗りつぶし図形
線と塗りつぶしの図形を描く
Polygon の図形を塗りつぶす
Polygon の塗りつぶしのルール
 
■ XOR
 
■ Rectangle のグラデーション
より高度なグラデーション
 
■ 透明度の調整(Alpha)
 
■ 複雑な図形を描く
サンプル 1
サンプル 2
 
■ 点を描く
ランダムな点でスプレーを描く
 
■ 描写のクリア
 
■ その他
 
 
 
第3章 Pattern
 
■ Pattern とは?
 
■ 図形の背景や枠線をテクスチャにする
図形の背景をテクスチャにする
図形の枠線をテクスチャにする
 
■ 文字をテクスチャ(Pattern)で描く
 
■ Pattern をGCにセットさせるときの注意点
サンプル 1
サンプル 2
 
■ 図形の背景や枠線を線形のグラデーションにする
図形の背景をグラデーションで塗りつぶす(透過性 なし)
図形の枠線をグラデーションで描く(透過性 なし)
図形の背景をグラデーションで塗りつぶす(透過性 あり)
図形の枠線をグラデーションで描く(透過性 あり)
 
■ 図形の背景や枠線を円形のグラデーションにする
 
■ 3色以上でのグラデーション
複数の色のグラデーションで虹色を描く
 
■ 文字をグラデーション(Pattern)で描く
 
■ 既存イメージをPatternのグラデーションでブレンディング
サンプル 1
サンプル 2
 
 
 
第4章 Path
 
■ Path とは?
PathとGCとの描写の違い
 
■ Pathで直線や円、矩形を描く
path で直線を描く
続けて直線を描く
続けないで直線を描く
連続した直線を描き、その後pathをクローズする
連続直線の太さや種類、色を変更する
クローズした連続直線をの内部を塗りつぶす
Pathを使用してマウスで直線やポリゴンを描くサンプル
線のぎざぎざをなくす
長方形や惰円を描く 
長方形や惰円を描く
      
■ Path で曲線を描く
ベジエ曲線を描く
ベジエ曲線を描くサンプル
2次のスプライン曲線を描く
 		
■ Path で点を描く
 
■ Path で丸みの帯びた長方形や半径指定の同心円を描く
 
■ Path で文字を描く
 
■ path のデータの境界(bounds)を取得する
 
■ ある座標がpath が表現する図形内に含まれるかを判定
 
■ pathに別のpathのデータを追加する
 
 
 
第5章 Transform
 
■ Transform とは?
 
■ 図形や文字を移動する
 
■ 図形や文字を拡大 / 縮小する
原点基準のスケーリング(拡大 / 縮小)
任意の点基準のスケーリング(拡大 / 縮小)
 
■ 図形や文字を回転する
原点基準の回転(rotation)
任意の点基準の回転(rotation)
 
■ 図形や文字をシアーする
 
■ transform をデフォルトにもどす
transform がデフォルトかどうか調べる
transform をデフォルトにリセットする
 
■ マトリックスを使用した図形のさまざまな変形
マトリックスを指定して移動する
マトリックスを指定して拡大する
任意の点を基点にスケーリング
マトリックスを指定して回転する
任意の点を基点に回転 
マトリックスを指定して反転する
マトリックスを指定してY軸反転
マトリックスを指定してX軸反転 
マトリックスを指定してXY軸反転  
マトリックスを指定してシアーする  
マトリックスを指定してX軸方向にシアーする 
マトリックスを指定してY軸方向にシアーする
 
 
 
第6章 Font
 
■ SWT でのFont
  
■ Font およびFontData の作成
Font のコンストラクト
FontData のコンストラクト
FontからのFontData の取得
Control に作成したFontを設定する
  
■ 既存のフォントを変更する
FontData の記述を取得/設定する
Control のデフォルトフォント名で変更する
 
■ プラットフォームで利用可能なフォントをリストアップする
Scalable フォントとBitmap フォント
フォントの歴史
和文フォントのみをリストアップする    
欧文フォントのみをリストアップする 
    
■ MS WORD に似たフォント設定Cool Bars を作成する 
 
■ フォント設定をコンテキストメニューで行う
 
■ 該当フォントがないときに代用フォントを指定する
 
■ プラットフォームごとに異なるフォントを指定する
プラットフォームで存在するフォントの一例
   
■ すべてのプラットフォームで確実に利用可能なフォントは?
 
■ プラットフォームのシステムフォントを取得
 
■ アプリケーションにフォントを埋め込む
 
■ アプリケーションでのフォント設定の保存と復元
 
■ ローケール(locale) の設定
 
■ GC でのテキストの描写
drawText と drawString
GCでのテキスト描写のフォントを設定または取得する
テキストのアンチエイリアス
 
■ 文字列(テキスト)の幅や高さの測定が必要となるとき
 
■ FontMetrics で高さを測定する
FontMetrics のコンストラクト
FontMetrics の高さ測定のためのメソッド
サンプル 1
サンプル 2(ベースラインをそろえる)
 
■ テキスト(文字列)の幅を測定する
テキストのよこに計算してイメージを表示する
文字の幅を取得する
 
 
 
第7章 Region
 
■ Clipping (クリッピング)とRegion
クリッピングと描写領域 
サンプル 1
サンプル 2
 
■ Region の作成と領域の追加、交差、除去など
regionでGCをclipさせるには ?
region に領域を加える、一部領域を除去する
サンプル 1
サンプル 2(円形グラデーション)
region の領域の交差
交差の判定
region がカバーする領域を全体的に移動させる
region の境界を取得する 
 
■ Pathを使用したGCのClipping (クリッピング) 
 
■ Control のClipping (クリッピング)
 
■ Shell のClipping(クリッピング)
サンプル 1(かぎ穴のシェイプ)
サンプル 2(かぎのシェイプ)
 
 
 
第8章 Color
 
■ SWT でのColor 
 
■ RGB
RGB モデル以外のカラーモデル  
    
■ Direct ColorとIndexed Color
Direct Color
Indexed Color
 
■ Color の作成 
Color のコンストラクタとメソッド
HSB モデルでcolor を作成
 
■ システムカラー(System Colors)
Widget 固有の色などの取得  
 
 
 
第9章 Image
 		
■ SWT でのImage 
 
■ Image クラスのインスタンスの作成とリソースの破棄
Imageクラスのインスタンスの作成
リソースの破棄
イメージの境界(bounds)の取得
 
■ ファイルからImage を読み込んで扱う
絶対パス指定
プロジェクトからの相対パス指定
Javaファイルからの相対パス指定
URL でのパス指定 
     
■ GCでイメージを表示する
GCでもとのイメージをストレッチして表示する
GCでもとのイメージの一部を表示する
     
■ イメージ にGCで線や文字などの描写表現を加える
 
■ 空白(blank) からイメージを作成する
 
■ イメージのコピー
イメージオブジェクトのコピー
指定イメージのコピーやグレー(Gray)、実行不能(disable) イメージの作成
Display やControl でのイメージをGCでコピーする
Canvas のスナップショット
Shell のスナップショット
ディスプレイ上の任意の領域をスナップ
同じDrawable内での指定領域のイメージのコピー
 
■ イメージ からの透過の除去
 
■ ImageData
ImageData のフィールド
depthと色数
16 ビットと24 ビット		
スキャンライン
ImageData のピクセル操作のためのメソッド
 		
■ PaletteData
PaletteData のコンストラクトとフィールド
ピクセルやRGBの情報を取得する
インデックスパレットでイメージ作成する
ダイレクトパレットでイメージ作成する
 
■ 透明度(Transparency)
透過をもつイメージファイルのサポート
ImageData での透明度の設定
特定の色を透過にしてイメージを表示する
ImageData の透過などの状態を確認するには?
 
■ イメージ内の色の置き換え
イメージ内の特定の1色を指定の色に置き換える。
イメージ内の一定の範囲の色を特定の色に置き換える
イメージ内の指定した範囲のピクセルを特定の色で塗りつぶす
 
■ ImageData のresize (リサイズ)
 
■ ImageLoader クラス
ImageLoader のコンストラクト
ImageLoader を使用したイメージのロードとセーブ
ImageLoaderで扱えるのイメージファイル形式の可否
イメージのロード
イメージのセーブ 
   
■ バックグラウンドスレッドで大きいサイズのイメージをロード
 
■ 段階的にロード途中のイメージを表示する
 
■ Canvas 内に部分表示された画像を任意の位置にスクロールする
スクロールバーでスクロールする
マウスハンド(手の形をしたカーソルイメージ)でスクロールする
 
 
第10章 Cursor
 		
■ SWT でのカーソル (Cursor) 
 
■ システムカーソルの作成
SWTスタイル定数とカーソルイメージ
Dsiplay のメソッドからのシステムカーソルの取得
スクリーン上のカーソル座標を取得または設定する
現在のカーソル座標にあるコントロールが何か知るには?
 
■ カスタムカーソル (Custom Cursor) の作成
カスタムカーソル (Custom Cursor) 
用意したイメージファイルから、カスタムカーソルを作成
SWTアプリケーション内でカスタムカーソルのイメージを作成

 
 
第11章 描写戦略とRedraw
 
■ 描写戦略の重要性
 
■ 描写の更新の延期を戦略的にする
複数のpaint event を勝手に1つにマージさせないためには?
 
■ Paint Event
  
■ 意図的に再描写(redraw) させる
canvas の子のコントロールもいっしょに再描写する
 
■ 強制的にpaintイベントを吐き出す(Update)
サンプル 1
サンプル 2
 
■ 再描写を意図的に停止/再開する
 
■ リペイントとリサイズ (Repainting and Resizing)
サンプル 1
サンプル 2
サンプル 3
 
■ 背景の塗りつぶし
 
■ ダブルバッファリング
     
    
 
参考文献            

swt

SWT3.4 対応 ページ数 638p



【更新情報】

■■ 2008/07/07 version 1.0 リリース

  •   Eclipse 3.4 (SWT 3.4) 対応


サンプルイメージ
swt-vol4 map1
swt-vol4 map2
swt-vol4 map3
swt-vol4 map4
swt-vol4 map5
swt-vol4 map6
swt-vol4 map7
swt-vol4 map8
swt-vol4 map9
swt-vol4 map10
swt-vol4 map11



◇ SWT最強ノウハウ集 Vol4 の特徴

SWT 最強ノウハウ集 Vol4 はSWTのグラフィック(Graphics ) 関連のノウハウを集結させた世界最強のノウハウ集です。SWTのグラフィックを勉強すれば、SWT単独で動くアプリケーションはもちろんのこと、Jfaceやリッチクライアントプラットフォームで作成したアプリケーション、Eclipseプラグインに対し、さまざまな図形や文字を描くことができます。さらに、その図形や文字を変形し、加工し、装飾し、イメージ(Image)ロードおよびセーブなど、多種多様なグラフィック機能をもたせることが可能になります。WordやExel などの標準的なアプリケーションでよく見られるフォントメニューや色選択のためのパレット、パターン描写、図形の回転やシアー、マウスを使ったベクトル線の描写、イメージのピクセルごとのマッピング、透明度の変更、線形グラデーション、円形グラデーション、XORなどはこのノウハウ集を学べば理解することができるでしょう。SWTのGUI はそのオペレーションシステムのネイティブなリソースを使用するので、動作が速く、Color の色深度(color depth)やフォント、システムカーソルなどはオペレーティングシステムに適したものがデフォルトで使用可能です。このノウハウ集は英語ではなくすべて日本語なのでご自身のアプリケーションで加えたい機能があれば、わざわざ、煩雑な情報の断片を理解し、サンプルコードを不安ながら書いてトライするのではなく、すぐこのノウハウ集をEclipse のヘルプから参照し、高機能なグラフィックを実装することができ、ご自身の開発のアプリケーションやプラグインの開発期間を大幅に短縮させ、生産性を向上することが可能になります。



■ SWTのさまざまなグラフィックに関するクラスやメソッドを学びます。

SWT 最強ノウハウ集 Vol4 の特徴




Copyright (C) 2007- Eclipseツール勉強会 All Rights Reserved.