クラス _GLGraphics

net.satis.d2a._Scalable
└ net.satis.d2a.gl._GLGraphics

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

コンストラクタ

| _GLGraphics

public _GLGraphics(GL10 gl, _GLTexture glt)

_GLGraphics コンストラクタです。

パラメータ：

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

メソッド

| setSize

public void setSize(int width, int height)

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

パラメータ：

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

| setScale

public void setScale(float scale)

拡大率を設定します。

パラメータ：

scale | 拡大率を指定します。1.0f で等倍になります。

| scale

public float scale()

拡大率を取得します。

戻り値：
拡大率を返します。

| scaledValue

public int scaledValue(int val)

整数値をスケーリングして返します。

パラメータ：

val | 整数値

戻り値：
スケーリングされた整数値

| getWidth

public int getWidth()

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

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

| getHeight

public int getHeight()

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

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

| getColorOfRGB

public static int getColorOfRGB(int r, int g, int b)

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

パラメータ：

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

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

| setLineWidth

public void setLineWidth(float width)

線幅を設定します。

パラメータ：

width | 線幅を指定します。

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

| setColor

public void setColor(int color)

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

パラメータ：

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

| setAlpha

public void setAlpha(int a)

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

パラメータ：

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

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

| setROP

public void setROP(int mode)

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

パラメータ：

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

| setFlipMode

public void setFlipMode(int flipmode)

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

パラメータ：

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

| setOrigin

public void setOrigin(int x, int y)

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

パラメータ：

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

| drawLine

public void drawLine(int x1, int y1, int x2, int y2)

直線を描画します。

パラメータ：

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

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

| drawRect

public 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

public 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

public void lockTexture(int tex_index)

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

パラメータ：

tex_index | 使用宣言するテクスチャ・リソースのインデックスを指定します。負の値を指定すると、描画色が使用されます。

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

| unlockTexture

public void unlockTexture()

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

| drawTexture

public void drawTexture(int tex_index, int x, int y)
public 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

public 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

public 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 パラメータは無視されます。