クラス _ScalableGraphics

net.satis.d2a._Scalable
└ net.satis.d2a._ScalableGraphics

イメージ、シェイプ、文字列の描画をスケーラブルに行う機能を提供するクラスです。

メソッド

| setScale

public void setScale(float scale)

拡大率を設定します。

パラメータ：

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

| scale

public float scale()

拡大率を取得します。

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

| scaledValue

public int scaledValue(int val)

指定した値の、拡大後の値を取得します。

パラメータ：

val | 拡大前の値

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

| setGraphics

public void setGraphics(_Graphics g)

ベースとなる _Graphics オブジェクトを設定します。

パラメータ：

g | ベースとなる _Graphics オブジェクト

| 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）。

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

| setAntiAlias

public void setAntiAlias(boolean aa)

アンチエイリアスを設定します。

パラメータ：

aa | アンチエイリアスありの場合 true、なしの場合 false

| setStrokeWidth

public void setStrokeWidth(float width)

線幅を設定します。

パラメータ：

width | 線幅を指定します。

| 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 | ラスタオペレーションを指定します。次のいずれかを指定します。
_Graphics.ROP_COPY | 通常合成。
_Graphics.ROP_ADD | 加算合成。

補足説明：
_Image オブジェクトの getGraphics() メソッドで取得した _Graphics オブジェクトでのみ有効です。

| setFlipMode

public void setFlipMode(int flipmode)

イメージの描画時に反転または回転して描画を行うかどうかを設定します。

パラメータ：

flipmode | イメージの描画時の反転または回転方法を指定します。次のいずれかを指定します。
_Graphics.FLIP_NONE | 反転しないことを表します。
_Graphics.FLIP_HORIZONTAL | 横方向に鏡像反転することを表します。
_Graphics.FLIP_VERTICAL | 縦方向に鏡像反転することを表します。
_Graphics.FLIP_ROTATE | 縦横方向に鏡像反転（180度回転）することを表します。
_Graphics.FLIP_ROTATE_LEFT | 左に90度回転することを表します。
_Graphics.FLIP_ROTATE_RIGHT | 右に90度回転することを表します。

| setOrigin

public void setOrigin(int x, int y)

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

パラメータ：

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

| setFontSize

public void setFontSize(int size)

フォントサイズを設定します。

パラメータ：

size | フォントサイズを指定します。

| stringWidth

public int stringWidth(String str)

指定した文字列の幅を取得します。

パラメータ：

str | 文字列を指定します。

戻り値：
文字列を表示するのに必要な幅を返します。

補足説明：
DoJaでの Font クラスの stringWidth() メソッドに相当する機能です。

| fontHeight

public int fontHeight()

フォントの高さを取得します。

戻り値：
フォントの高さを返します。

補足説明：
DoJaでの Font クラスの getHeight() メソッドに相当する機能です。

| lock

public void lock()

ダブルバッファリングの開始を宣言します。

補足説明：
_Image オブジェクトの getGraphics() メソッドで取得した _Graphics オブジェクトについては、本メソッドの実行は不要です。

| unlock

public void unlock()

ダブルバッファリングの終了を宣言します。

補足説明：
_Image オブジェクトの getGraphics() メソッドで取得した _Graphics オブジェクトについては、本メソッドの実行は不要です。

| getCanvas

public Canvas getCanvas()

Canvas オブジェクトを取得します。

戻り値：
Canvas オブジェクトを返します。

補足説明：
_Canvas クラスを継承したオブジェクトの getGraphics() メソッドで取得した _Graphics オブジェクトについては、lock()〜unlock() の間でのみ有効です。

| getPaint

public Paint getPaint()

Paint オブジェクトを取得します。

戻り値：
Paint オブジェクトを返します。

| setClip

public void setClip(int x, int y, int width, int height)

引数によって指定された矩形をクリッピング領域として設定します。

パラメータ：

x | 新しいクリッピング領域の左上のX座標を指定します。
y | 新しいクリッピング領域の左上のY座標を指定します。
width | 新しいクリッピング領域の幅を指定します。
height | 新しいクリッピング領域の高さを指定します。

| clearClip

public void clearClip()

現在設定されているクリッピング領域を解除します。

| drawLine

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

直線を描画します。

パラメータ：

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

| drawRect

public void drawRect(int x, int y, int width, int height)

矩形を描画します。

パラメータ：

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

補足説明：
横方向には 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 | 矩形の高さを指定します。

補足説明：
横方向には x 番目から x + w - 1 番目のピクセル（w 個）が塗りつぶされ、縦方向には y 番目から y + h - 1 番目のピクセル（h 個）が塗りつぶされます。

| drawRoundRect

public void drawRoundRect(int x, int y, int width, int height, int rx, int ry)

矩形の角を丸めて描画します。

パラメータ：

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

補足説明：
横方向には x 番目から x + w 番目のピクセル（w + 1 個）が描画され、縦方向には y 番目から y + h 番目のピクセル（h + 1 個）が描画されます。

| fillRoundRect

public void fillRoundRect(int x, int y, int width, int height, int rx, int ry)

矩形の角を丸めた領域を塗りつぶします。

パラメータ：

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

補足説明：
横方向には x 番目から x + w - 1 番目のピクセル（w 個）が塗りつぶされ、縦方向には y 番目から y + h - 1 番目のピクセル（h 個）が塗りつぶされます。

| drawOval

public void drawOval(int x, int y, int width, int height)

矩形領域に収まる楕円を描画します。

パラメータ：

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

| fillOval

public void fillOval(int x, int y, int width, int height)

矩形領域に収まる楕円の領域を塗りつぶします。

パラメータ：

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

| drawCircle

public void drawCircle(int cx, int cy, int r)

円を描画します。

パラメータ：

cx | 円の中心のX座標を指定します。
cy | 円の中心のY座標を指定します。
r | 円の半径を指定します。

| fillCircle

public void fillCircle(int cx, int cy, int r)

円の領域を塗りつぶします。

パラメータ：

cx | 円の中心のX座標を指定します。
cy | 円の中心のY座標を指定します。
r | 円の半径を指定します。

| drawString

public void drawString(String str, int x, int y)

文字列を描画します。

パラメータ：

str | 描画する文字列を指定します。
x | X座標を指定します。
y | Y座標を指定します。ベースラインの座標を指定します。

| drawImage

public void drawImage(_Image image, int x, int y)
public void drawImage(_Image image, int dx, int dy, int sx, int sy, int width, int height)

イメージを描画します。

パラメータ：

image | 描画する _Image オブジェクトを指定します。
x | X座標を指定します。
y | Y座標を指定します。
dx | 描画先のX座標を指定します。
dy | 描画先のY座標を指定します。
sx | 描画元の矩形の左上のX座標を指定します。
sy | 描画元の矩形の左上のY座標を指定します。
width | 描画元の矩形の幅を指定します。
height | 描画元の矩形の高さを指定します。

| drawScaledImage

public void drawScaledImage(_Image image, int dx, int dy, int width, int height, int sx, int sy, int swidth, int sheight)

イメージを拡大・縮小して描画します。

パラメータ：

image | 描画する _Image オブジェクトを指定します。
dx | 描画先の矩形の左上のX座標を指定します。
dy | 描画先の矩形の左上のY座標を指定します。
width | 描画先の矩形の幅を指定します。
height | 描画先の矩形の高さを指定します。
sx | 描画元の矩形の左上のX座標を指定します。
sy | 描画元の矩形の左上のY座標を指定します。
swidth | 描画元の矩形の幅を指定します。
sheight | 描画元の矩形の高さを指定します。

| drawTransImage

public void drawTransImage(_Image image, float dx, float dy, int sx, int sy, int width, int height, float cx, float cy, float r360, float z128x, float z128y)

イメージを回転・拡大・縮小して描画します。

パラメータ：

image | 描画する _Image オブジェクトを指定します。
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%（等倍）です。

補足説明：
本メソッドは setFlipMode() メソッドの設定を見ません。反転は、z128x および z128y の値をマイナス値にすることで行うことができます。