クラス _Graphics

イメージ、シェイプ、文字列を描画する機能を提供するクラスです。
_Canvas／_Canvas3D クラスまたは _Image クラスの getGraphics メソッドで _Graphics オブジェクトを取得して、各メソッドを呼び出す形になります。

クラスメソッド

| getColorOfRGB:::

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

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

パラメータ：

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

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

インスタンスメソッド

| getWidth

- (int)getWidth

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

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

| getHeight

- (int)getHeight

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

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

| setStrokeWidth:

- (void)setStrokeWidth:(float)width

線幅を設定します。

パラメータ：

width | 線幅を指定します。

| 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方向のオフセット値を指定します。

| setFont::

- (void)setFont:(NSString*)name :(int)size

フォントを設定します。

パラメータ：

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

| setFontName:

- (void)setFontName:(NSString*)name

フォント名を設定します。

パラメータ：

name | フォント名を指定します。

| setFontSize:

- (void)setFontSize:(int)size

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

パラメータ：

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

| stringWidth:

- (int)stringWidth:(NSString*)str

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

パラメータ：

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

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

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

| fontHeight

- (int)fontHeight

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

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

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

| lock

- (void)lock

描画の開始を宣言します。

| unlock

- (void)unlock

描画の終了を宣言します。

| drawLine::::

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

直線を描画します。

パラメータ：

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

| drawRect::::

- (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::::

- (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:::::

- (void)drawRoundRect:(int)x :(int)y :(int)width :(int)height :(int)r

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

パラメータ：

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

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

| fillRoundRect:::::

- (void)fillRoundRect:(int)x :(int)y :(int)width :(int)height :(int)r

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

パラメータ：

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

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

| drawOval::::

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

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

パラメータ：

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

| fillOval::::

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

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

パラメータ：

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

| drawCircle:::

- (void)drawCircle:(int)x :(int)y :(int)r

円を描画します。

パラメータ：

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

| fillCircle:::

- (void)fillCircle:(int)x :(int)y :(int)r

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

パラメータ：

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

| drawString:::

- (void)drawString:(NSString*)str :(int)x :(int)y

文字列を描画します。

パラメータ：

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

| drawImage::: drawImage:::::::

- (void)drawImage:(_Image*)image :(int)x :(int)y
- (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::::::::: drawScaledImage:::::

- (void)drawScaledImage:(_Image*)image :(int)dx :(int)dy :(int)width :(int)height :(int)sx :(int)sy :(int)swidth :(int)sheight
- (void)drawScaledImage:(_Image*)image :(int)dx :(int)dy :(int)width :(int)height

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

パラメータ：

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

| drawTransImage:::::::::::: drawTransImage::::::::

- (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
- (void)drawTransImage:(_Image*)image :(float)dx :(float)dy :(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%（等倍）です。