クラス _GLGraphics

OpenGL ES を使用して、イメージ、シェイプを描画する機能を提供するクラスです。

クラスメソッド

| getColorOfRGB:::

+ (int)getColorOfRGB:(int)r :(int)g :(int)b

RGB値を指定して、対応するカラーを表す整数値を取得します。

パラメータ：

r | 赤要素の輝度を指定します（0〜255）。
g | 緑要素の輝度を指定します（0〜255）。
b | 青要素の輝度を指定します（0〜255）。

戻り値：
カラーを表す値を返します。

インスタンスメソッド

| initWithTexture:

- (id)initWithTexture:(_GLTexture*)glt

_GLGraphics オブジェクトを生成します。

パラメータ：

glt | _GLTexture クラスを継承したクラスオブジェクトを指定します。

戻り値：
_GLGraphics オブジェクト

| reset

- (void)reset

_GLGraphics オブジェクトの再設定を行います。

補足説明：
_Canvas3D クラスを継承したクラスの _reset3D メソッド内で、本メソッドを呼び出す必要があります。

| setSize::

- (void)setSize:(int)width :(int)height

描画領域のサイズを設定します。

パラメータ：

width | 描画領域の幅を指定します。
height | 描画領域の高さを指定します。

| getWidth

- (int)getWidth

描画領域の幅を取得します。

戻り値：
描画領域の幅を返します。

| getHeight

- (int)getHeight

描画領域の高さを取得します。

戻り値：
描画領域の高さを返します。

| setLineWidth:

- (void)setLineWidth:(float)width

線幅を設定します。

パラメータ：

width | 線幅を指定します。

補足説明：
drawLine:::: メソッドでのみ有効です。

| setColor:

- (void)setColor:(int)col

描画に使用する色を設定します。

パラメータ：

col | 描画に使用する色を指定します。

| setAlpha:

- (void)setAlpha:(int)a

描画で参照されるα値を設定します。

パラメータ：

a | α値を指定します（0〜255）。

補足説明：
α値とは、255 で不透明、0 で完全な透明になる値です。

| setROP:

- (void)setROP:(int)mode

ラスタオペレーションを設定します。

パラメータ：

mode | ラスタオペレーションを指定します。次のいずれかを指定します。
ROP_COPY | 通常合成。
ROP_ADD | 加算合成。

| setFlipMode:

- (void)setFlipMode:(int)flipmode

テクスチャの描画時に反転または回転して描画を行うかどうかを設定します。

パラメータ：

flipmode | テクスチャの描画時の反転または回転方法を指定します。次のいずれかを指定します。
FLIP_NONE | 反転しないことを表します。
FLIP_HORIZONTAL | 横方向に鏡像反転することを表します。
FLIP_VERTICAL | 縦方向に鏡像反転することを表します。
FLIP_ROTATE | 縦横方向に鏡像反転（180度回転）することを表します。

| setOrigin::

- (void)setOrigin:(int)x :(int)y

描画の際の座標原点を設定します。

パラメータ：

x | X方向のオフセット値を指定します。
y | Y方向のオフセット値を指定します。

| drawLine::::

- (void)drawLine:(int)x1 :(int)y1 :(int)x2 :(int)y2

直線を描画します。

パラメータ：

x1 | 直線の描画開始点のX座標を指定します。
y1 | 直線の描画開始点のY座標を指定します。
x2 | 直線の描画終了点のX座標を指定します。
y2 | 直線の描画終了点のY座標を指定します。

補足説明：
_Canvas3D クラスの lock3D メソッドから unlock3D メソッドの間で有効です。

| drawRect::::

- (void)drawRect:(int)x :(int)y :(int)width :(int)height

矩形を描画します。

パラメータ：

x | 矩形の左上のX座標を指定します。
y | 矩形の左上のY座標を指定します。
width | 矩形の幅を指定します。
height | 矩形の高さを指定します。

補足説明：
_Canvas3D クラスの lock3D メソッドから unlock3D メソッドの間で有効です。
横方向には x 番目から x + w 番目のピクセル（w + 1 個）が描画され、縦方向には y 番目から y + h 番目のピクセル（h + 1 個）が描画されます。

| fillRect::::

- (void)fillRect:(int)x :(int)y :(int)width :(int)height

矩形領域を塗りつぶします。

パラメータ：

x | 矩形の左上のX座標を指定します。
y | 矩形の左上のY座標を指定します。
width | 矩形の幅を指定します。
height | 矩形の高さを指定します。

補足説明：
_Canvas3D クラスの lock3D メソッドから unlock3D メソッドの間で有効です。
横方向には x 番目から x + w - 1 番目のピクセル（w 個）が塗りつぶされ、縦方向には y 番目から y + h - 1 番目のピクセル（h 個）が塗りつぶされます。

| lockTexture:

- (void)lockTexture:(int)tex_index

テクスチャの使用を宣言します。

パラメータ：

tex_index | 使用宣言するテクスチャ・リソースのインデックスを指定します。

補足説明：
同じテクスチャに対して描画メソッドを連続して呼び出す場合、本メソッドでテクスチャの使用を宣言してから、描画メソッドを連続して呼び出した後、unlockTexture メソッドで使用宣言を解除することで、処理の高速化が図れます。

| unlockTexture

- (void)unlockTexture

テクスチャの使用宣言を解除します。

| drawTexture::: drawTexture:::::::

- (void)drawTexture:(int)tex_index :(int)x :(int)y
- (void)drawTexture:(int)tex_index :(int)dx :(int)dy :(int)sx :(int)sy :(int)width :(int)height

テクスチャを描画します。

パラメータ：

tex_index | 描画するテクスチャ・リソースのインデックスを指定します。
x | X座標を指定します。
y | Y座標を指定します。
dx | 描画先のX座標を指定します。
dy | 描画先のY座標を指定します。
sx | 描画元の矩形の左上のX座標を指定します。
sy | 描画元の矩形の左上のY座標を指定します。
width | 描画元の矩形の幅を指定します。
height | 描画元の矩形の高さを指定します。

補足説明：
_Canvas3D クラスの lock3D メソッドから unlock3D メソッドの間で有効です。
lockTexture: メソッドから unlockTexture メソッドの間では、tex_index パラメータは無視されます。

| drawScaledTexture:::::::::

- (void)drawScaledTexture:(int)tex_index :(int)dx :(int)dy :(int)width :(int)height :(int)sx :(int)sy :(int)swidth :(int)sheight

テクスチャを拡大・縮小して描画します。

パラメータ：

tex_index | 描画するテクスチャ・リソースのインデックスを指定します。
dx | 描画先の矩形の左上のX座標を指定します。
dy | 描画先の矩形の左上のY座標を指定します。
width | 描画先の矩形の幅を指定します。
height | 描画先の矩形の高さを指定します。
sx | 描画元の矩形の左上のX座標を指定します。
sy | 描画元の矩形の左上のY座標を指定します。
swidth | 描画元の矩形の幅を指定します。
sheight | 描画元の矩形の高さを指定します。

補足説明：
_Canvas3D クラスの lock3D メソッドから unlock3D メソッドの間で有効です。
lockTexture: メソッドから unlockTexture メソッドの間では、tex_index パラメータは無視されます。

| drawTransTexture::::::::::::

- (void)drawTransTexture:(int)tex_index :(float)dx :(float)dy :(int)sx :(int)sy :(int)width :(int)height :(float)cx :(float)cy :(float)r360 :(float)z128x :(float)z128y

テクスチャを回転・拡大・縮小して描画します。

パラメータ：

tex_index | 描画するテクスチャ・リソースのインデックスを指定します。
dx | 描画先のアンカーX座標を指定します。アンカー座標とは、回転・拡大・縮小の基準となる座標です。
dy | 描画先のアンカーY座標を指定します。アンカー座標とは、回転・拡大・縮小の基準となる座標です。
sx | 描画元の矩形の左上のX座標を指定します。
sy | 描画元の矩形の左上のY座標を指定します。
width | 描画元の矩形の幅を指定します。
height | 描画元の矩形の高さを指定します。
cx | 描画元の矩形の左からの相対X座標を指定します。この座標点とアンカー座標が一致するように描画されます。
cy | 描画元の矩形の上からの相対Y座標を指定します。この座標点とアンカー座標が一致するように描画されます。
r360 | 回転角度を指定します。時計回りで、単位は「度」です。
z128x | X方向の拡大率を指定します。128.0f で拡大率100%（等倍）です。
z128y | Y方向の拡大率を指定します。128.0f で拡大率100%（等倍）です。

補足説明：
_Canvas3D クラスの lock3D メソッドから unlock3D メソッドの間で有効です。
lockTexture: メソッドから unlockTexture メソッドの間では、tex_index パラメータは無視されます。