;mod:2 / cat:16 / func:50

;--------
%dll
module_pgd

%ver
2

%date
2025/10/30

%type
pgd系命令

%note
module_pgd.hsp をインクルードしてください。

%port
Win
HSP 3.6以降
;--------

%index
pgd_RenderHSP
描画出力先をHSPに設定する

%prm

%inst
描画出力先をHSPのバッファに設定します。

%href
pgd_RenderA2D

%dll
module_pgd

%group
システム

%index
pgd_RenderA2D
描画出力先をA2Dに設定する

%prm

%inst
描画出力先をA2Dのイメージに設定します。

%href
pgd_RenderHSP

%dll
module_pgd

%group
システム

%index
pgd_SetRenderMode
レンダリング品質の設定

%prm
smoothing, pixeloffset
smoothing スムージング (0=無し, 1=中品質, 2=高品質) (初期値 2)
pixeloffset ピクセルオフセット (0=無し, 1=Half) (初期値 1)

%inst
描画出力時のスムージング（アンチエイリアス）とピクセルオフセットを設定します。
エディタの描画設定と合わせてください。

%dll
module_pgd

%group
システム

%index
pgd_ResetOption
オプション設定をリセット

%prm

%inst
オプション系の設定をリセットします。

%href
pgd_AutoLineScaling
pgd_LineScaling
pgd_FixedFillColor
pgd_FixedLineColor
pgd_AlphaRate
pgd_AlphaBlend
pgd_AlphaRange
pgd_ColorInversion
pgd_ColorBalance
pgd_ColorSaturation
pgd_Gamma
pgd_RenderSize
pgd_Random
pgd_RandomX
pgd_RandomY
pgd_ResetTransform
pgd_EnableTransform
pgd_TransformRotate
pgd_TransformSphere
pgd_TransformSphereLens
pgd_TransformSphereLensEx
pgd_TransformLinearLens
pgd_TransformLinearLensEx
pgd_TransformTwist
pgd_TransformWave
pgd_TransformWaveEx
pgd_TransformFlap

%dll
module_pgd

%group
オプション

%index
pgd_AutoLineScaling
線の自動スケーリング

%prm
flag
flag 0=無効, 1=有効 (初期値 1)

%inst
描画サイズに合わせた線の自動スケーリングを設定します。

%href
pgd_ResetOption

%dll
module_pgd

%group
オプション

%index
pgd_LineScaling
線の太さ倍率

%prm
scale
scale 倍率 (初期値 1.0)

%inst
線の太さの倍率を設定します。
2.0にすれば2倍の太さになります。

%href
pgd_ResetOption

%dll
module_pgd

%group
オプション

%index
pgd_FixedFillColor
塗り色を固定色に設定

%prm
flag, color1, color2
flag 0=無効, 1=有効 (初期値 0)
color1 色1
color2 色2

%inst
塗り色を単色指定します。
色1は単色、色2はグラデーション用です。
色は $AARRGGBB で指定します。

%href
pgd_ResetOption

%dll
module_pgd

%group
オプション

%index
pgd_FixedLineColor
線の色を固定色に設定

%prm
flag, color1, color2
flag 0=無効, 1=有効 (初期値 0)
color1 色1
color2 色2

%inst
線の色を単色指定します。
色1は単色、色2はグラデーション用です。
色は $AARRGGBB で指定します。

%href
pgd_ResetOption

%dll
module_pgd

%group
オプション

%index
pgd_AlphaRate
各色のアルファ値操作

%prm
alpha
alpha アルファ値の割合 (0~255) (初期値 255)

%inst
塗りと線の色のアルファ値を変更します。
pgd_AlphaBlend と似た効果です。
例えば 128 を指定した場合、元のアルファ値 200 は約50％の 100 になります。
これはレンダリングする際の色のアルファ値を変更するため、面や線が重なり合った部分が目立ちます。
その代わりに処理負荷はほとんど上がりません。

%href
pgd_ResetOption
pgd_AlphaBlend

%dll
module_pgd

%group
オプション

%index
pgd_AlphaBlend
ブレンド率を設定

%prm
alpha
alpha ブレンド率 (0~255) (初期値 255)

%inst
オプション(R)Alpha
他の(R)Alpha系と併用できません。

ブレンド率を設定します。
pgd_AlphaRate と似た効果です。
これはレンダリングバッファに描画し、画面に転送する際のカラーマトリクスでアルファ値を操作するため、自然な描画結果が得られます。

※この設定は処理負荷が少し上がります。

%href
pgd_ResetOption
pgd_AlphaRate

%dll
module_pgd

%group
オプション(R)

%index
pgd_AlphaRange
アルファ範囲を設定

%prm
min, max
min 最小 (0~254) (初期値 0)
max 最大 (0~255) (初期値 255)

%inst
オプション(R)Alpha
他の(R)Alpha系と併用できません。

出力時のα範囲を設定します。
例えば min=64, max=128 に設定するとα値が64以下のピクセルは 0 で透明になり、
128以上のピクセルは 255 で不透明になり、64～128の範囲に0～255の階調が当てはめられます。
設定値の範囲は 0~255 ですが min は max より 1 小さい値が限界値です。
min=0, max=255 に設定すると通常の出力になります。

※この設定は処理負荷が非常に高いため、リアルタイム描画には向きません。

%href
pgd_ResetOption

%dll
module_pgd

%group
オプション(R)

%index
pgd_ColorInversion
色を反転

%prm
inv
inv 反転値 (0.0~1.0) (初期値 0.0)

%inst
オプション(R)Color
他の(R)Color系と併用できません。

色を反転します。
1.0 で完全に反転します。

※この設定は処理負荷が非常に高いため、リアルタイム描画には向きません。

%href
pgd_ResetOption

%dll
module_pgd

%group
オプション(R)

%index
pgd_ColorBalance
各色成分の割合設定

%prm
rr, gr, br
r Rの割合 (初期値 1.0)
g Gの割合 (初期値 1.0)
b Bの割合 (初期値 1.0)

%inst
オプション(R)Color

RGBの割合を調整します。
各成分の割合を 1.0 を基準に指定します。
0.0 ならその成分は 0 になり、 2.0 なら2倍になります。
pgd_ColorSaturation と併用できます。

※この設定は処理負荷が少し上がります。

%href
pgd_ResetOption
pgd_ColorSaturation

%dll
module_pgd

%group
オプション(R)

%index
pgd_ColorSaturation
彩度を調整

%prm
sat
sat 彩度 (0.0~) (初期値 1.0)

%inst
オプション(R)Color

彩度を調整します。
1.0 を基準に、増やすと鮮やかに、減らすと色褪せ、0.0でグレースケールになります。
pgd_ColorBalance と併用できます。

※この設定は処理負荷が非常に高いため、リアルタイム描画には向きません。

%href
pgd_ResetOption
pgd_ColorBalance

%dll
module_pgd

%group
オプション(R)

%index
pgd_Gamma
ガンマ値を設定

%prm
gamma
gamma ガンマ値 (初期値 1.0)

%inst
オプション(R)

ガンマ値を設定します。
基準は 1.0 です。

※この設定は処理負荷が少し上がります。

%href
pgd_ResetOption

%dll
module_pgd

%group
オプション(R)

%index
pgd_RenderSize
レンダリングサイズを設定

%prm
wr, hr
wr 横幅の割合 (初期値 1.0)
hr 縦幅の割合 (初期値 1.0)

%inst
オプション(R)

レンダリングサイズを設定します。
例えば 0.25 に設定すると 32x32 ピクセルで出力されるpgdモデルは 8x8 でバックバッファにレンダリングされ、
それを4倍拡大して描画先に出力します。

※この設定は設定サイズが大きいほど処理負荷が上がります。

%href
pgd_ResetOption

%dll
module_pgd

%group
オプション(R)

%index
pgd_Random
乱数を設定

%prm
value
value 乱数範囲(0~32767) (初期値 0)

%inst
頂点座標を操作する乱数を設定します。

例えば 5 を指定すると頂点の座標が -2~+2の範囲でランダムになります。
これは X と Y の両方に同じ値を設定します。

%href
pgd_ResetOption
pgd_RandomX
pgd_RandomY

%dll
module_pgd

%group
オプション 乱数

%index
pgd_RandomX
乱数Xを設定

%prm
value
value 乱数範囲(0~32767) (初期値 0)

%inst
頂点座標を操作する乱数を設定します。

例えば 5 を指定すると頂点の座標が -2~+2の範囲でランダムになります。

%href
pgd_ResetOption
pgd_RandomY
pgd_Random

%dll
module_pgd

%group
オプション 乱数

%index
pgd_RandomY
乱数Yを設定

%prm
value
value 乱数範囲(0~32767) (初期値 0)

%inst
頂点座標を操作する乱数を設定します。

例えば 5 を指定すると頂点の座標が -2~+2の範囲でランダムになります。

%href
pgd_ResetOption
pgd_RandomX
pgd_Random

%dll
module_pgd

%group
オプション 乱数

%index
pgd_ResetTransform
トランスフォーム設定をリセット

%prm

%inst
トランスフォーム系の設定をリセットします。
pgd_ResetOption でもリセットできますが、この命令はトランスフォーム系のみリセットします。

%href
pgd_ResetOption
pgd_EnableTransform
pgd_TransformRotate
pgd_TransformSphere
pgd_TransformSphereLens
pgd_TransformSphereLensEx
pgd_TransformLinearLens
pgd_TransformLinearLensEx
pgd_TransformTwist
pgd_TransformWave
pgd_TransformWaveEx
pgd_TransformFlap

%dll
module_pgd

%group
オプション(T)

%index
pgd_EnableTransform
トランスフォーム有効/無効化

%prm
flag
flag 0=無効, 1=有効

%inst
現在設定されているトランスフォームを一時的に有効/無効化します。

%href
pgd_ResetOption
pgd_ResetTransform
pgd_TransformRotate
pgd_TransformSphere
pgd_TransformSphereLens
pgd_TransformSphereLensEx
pgd_TransformLinearLens
pgd_TransformLinearLensEx
pgd_TransformTwist
pgd_TransformWave
pgd_TransformWaveEx
pgd_TransformFlap

%dll
module_pgd

%group
オプション(T)

%index
pgd_TransformRotate
回転を設定

%prm
rad
rad 回転角度 (単位ラジアン) (初期値 0.0)

%inst
オプション(T)

回転を設定します。

各描画命令の回転角度指定と似ていますが、これは任意タイミングでの回転ができます。

他のトランスフォームを使用する場合この回転を最初に指定すればモデル自体を回転できます。
使用しないのであれば各描画命令の回転のほうが低コストです。

%href
pgd_ResetOption
pgd_ResetTransform
pgd_EnableTransform

%dll
module_pgd

%group
オプション(T)

%index
pgd_TransformSphere
球状変形を設定

%prm
px, py, size, power
px 基点位置X
py 基点位置Y
size 球の半径
power 変形係数

%inst
オプション(T)

球の形に変形させます。
変形係数は 1.0 の時にほぼ完全な球形になります。
0.5にすると半球になります。

%href
pgd_ResetOption
pgd_ResetTransform
pgd_EnableTransform

%dll
module_pgd

%group
オプション(T)

%index
pgd_TransformSphereLens
球状レンズ変形を設定

%prm
px, py, start, end, power
px 基点位置X
py 基点位置Y
start 開始距離
end 終了距離
power 変形係数

%inst
オプション(T)

指定位置から一定距離の範囲にレンズを通したような効果を与えます。
分かりやすく言うと虫眼鏡のような効果になります。
変形係数が 0.0 以上の場合は凹レンズ、以下の場合は凸レンズのような変形を行います。

%href
pgd_ResetOption
pgd_ResetTransform
pgd_EnableTransform
pgd_TransformSphereLensEx

%dll
module_pgd

%group
オプション(T)

%index
pgd_TransformSphereLensEx
球状レンズ変形を設定

%prm
px, py, start, end, angle, powerx, powery
px 基点位置X
py 基点位置Y
start 開始距離
end 終了距離
angle 角度
powerx 変形係数X
powery 変形係数Y

%inst
オプション(T)

pgd_TransformSphereLens の拡張版です。
angle=0.0, powerx=powery の場合に pgd_TransformSphereLens と同じ効果になります。

%href
pgd_ResetOption
pgd_ResetTransform
pgd_EnableTransform
pgd_TransformSphereLens

%dll
module_pgd

%group
オプション(T)

%index
pgd_TransformLinearLens
線形レンズ変形を設定

%prm
px, py, start, end, angle, power
px 基点位置X
py 基点位置Y
start 開始距離
end 終了距離
angle 角度
power 変形係数

%inst
オプション(T)

基点位置を通る指定角度+90度の直線の指定範囲にレンズを通したような効果を与えます。
分かりやすく言うと細長い棒状のレンズのような効果になります。
変形係数が 0.0 以上の場合は凹レンズ、以下の場合は凸レンズのような変形を行います。

%href
pgd_ResetOption
pgd_ResetTransform
pgd_EnableTransform
pgd_TransformLinearLensEx

%dll
module_pgd

%group
オプション(T)

%index
pgd_TransformLinearLensEx
線形レンズ変形を設定

%prm
px, py, start, end, angle, powerx, powery
px 基点位置X
py 基点位置Y
start 開始距離
end 終了距離
angle 角度
powerx 変形係数
powery 変形係数

%inst
オプション(T)

pgd_TransformLinearLens の拡張版です。
変形係数Yが 0.0 の場合は pgd_TransformLinearLens と同じ効果になります。

%href
pgd_ResetOption
pgd_ResetTransform
pgd_EnableTransform
pgd_TransformLinearLens

%dll
module_pgd

%group
オプション(T)

%index
pgd_TransformTwist
ねじりを設定

%prm
px, py, size, angle
px 基点位置X
py 基点位置Y
size 半径
angle 最大ねじり角度 (単位ラジアン)

%inst
オプション(T)

基点位置から半径の範囲をねじります。
ねじり角度は基点位置からの距離依存で、外側で 0 、中心で最大になります。

%href
pgd_ResetOption
pgd_ResetTransform
pgd_EnableTransform

%dll
module_pgd

%group
オプション(T)

%index
pgd_TransformWave
波を設定

%prm
sx, sy, xoffset, angle
sx 波の幅
sy 波の高さ
xoffset 波の幅のオフセット
angle 波の角度 (単位ラジアン)

%inst
オプション(T)

全体に波のようなうねりを与えます。
波形は正弦波です。

%href
pgd_ResetOption
pgd_ResetTransform
pgd_EnableTransform
pgd_TransformWaveEx

%dll
module_pgd

%group
オプション(T)

%index
pgd_TransformWaveEx
波を設定

%prm
sx, sy, xoffset, angle, angle2
sx 波の幅
sy 波の高さ
xoffset 波の幅のオフセット
angle 波の角度 (単位ラジアン)
angle2 波の角度 (単位ラジアン)

%inst
オプション(T)

pgd_TransformWave の拡張版です。
angle2 で波形に回転を与えることでより自然なうねりになります。

%href
pgd_ResetOption
pgd_ResetTransform
pgd_EnableTransform
pgd_TransformWave

%dll
module_pgd

%group
オプション(T)

%index
pgd_TransformFlap
はためきを設定

%prm
sx, sy, xoffset, angle, angle2, ax, ay, decay, prm
sx 波の幅
sy 波の高さ
xoffset 波の幅のオフセット
angle 波の角度 (単位ラジアン)
angle2 波の角度 (単位ラジアン)
ax 固定基点X
ay 固定基点Y
decay 減衰距離
prm パラメータ

%inst
オプション(T)

pgd_TransformWave 系に近いものです。
旗のはためきのような動きを再現します。
ax,ay は動きを固定する位置の指定です。
固定基点を0.0、減衰距離を1.0として距離で動きに減衰をかけます。（減衰距離以上は動きがより大きくなります）

減衰距離はその絶対値を距離とするため正負どちらでも指定ができますが、正数を指定すると固定タイプが線形、負数を指定すると円形になります。
線形の場合はパラメータを直線の角度（ラジアン）として扱い、円形の場合は円の半径として扱います。

%href
pgd_ResetOption
pgd_ResetTransform
pgd_EnableTransform

%dll
module_pgd

%group
オプション(T)

%index
pgd_TransformReady
トランスフォームの準備

%prm

%inst
現在のカレントポジションを基準に座標値トランスフォームの準備をします。

これは pgd_Transform で座標値を変換する前に使用する命令です。
pgd_Draw などで描画する場合は不要です。

各トランスフォームを設定後、基準座標を pos 0,0 に設定し pgd_TransformReady を実行します。
その後 pgd_Transform を使用します。

%href
pgd_Transform

%dll
module_pgd

%group
トランスフォーム補助

%index
pgd_Transform
座標値をトランスフォーム

%prm
vx, vy
vx 変換する座標値Xを格納した変数
vy 変換する座標値Yを格納した変数

%inst
座標値にトランスフォームを適用します。
任意座標のトランスフォーム後の座標値が欲しい場合に使用します。
vx, vy に変換後の座標値が入力されます。

事前に pgd_TransformReady を使用してください。

%href
pgd_TransformReady

%dll
module_pgd

%group
トランスフォーム補助

%index
pgd_SetIndexColor
インデックスカラーを設定

%prm
index, color
index 設定先インデックス (0~63)
color 設定する色

%inst
任意のインデックスの色を設定します。
インデックスは0~63番まで使用でき、それぞれに任意の色を設定できます。

色は $AARRGGBB で指定します。

%href
pgd_SetIndexColorv
pgd_GetIndexColor

%dll
module_pgd

%group
インデックスカラー

%index
pgd_SetIndexColorv
インデックスカラーをまとめて設定

%prm
array
array 設定する色を格納した整数型配列変数

%inst
インデックスの色を配列変数でまとめて設定します。
例えば配列数が 5 の場合はインデックス0~4番まで設定されます。

色は $AARRGGBB で指定します。

%href
pgd_SetIndexColor
pgd_GetIndexColor

%dll
module_pgd

%group
インデックスカラー

%index
pgd_GetIndexColor
インデックスカラーを取得

%prm
( index)
index インデックス

%inst
任意のインデックスカラーの色を取得します。

%href
pgd_SetIndexColor
pgd_SetIndexColorv

%dll
module_pgd

%group
インデックスカラー

%index
pgd_Draw
pgdモデルを描画

%prm
pgd, Tval, sizeX, sizeY, rotate, clipFlag
pgd pgdモデルを格納した変数
Tval アニメーション再生位置 (0.0~1.0)
sizeX 出力サイズX
sizeY 出力サイズY
rotate 回転角度 (単位ラジアン)
clipFlag クリッピング (0~n)

%inst
描画命令です。
pgdモデルの形式を自動判別します。

カレントポジションを中心に sizeX,sizeY の大きさで描画します。
描画内容は redraw 1 で画面に反映されます。

sizeX,sizeY はエディタで書き出した際の ビューサイズ をそのまま指定すると等倍になります。

clipFlagに次の定数を指定するとクリッピング処理になりパス自体は描画されません。

	PGD_CLIP_AND	現在のクリッピング領域と AND 演算をする。
	PGD_CLIP_OR	現在のクリッピング領域と OR 演算をする。
	PGD_CLIP_XOR	現在のクリッピング領域と XOR 演算をする。
	PGD_CLIP_DIFF	現在のクリッピング領域から取り除く。
	PGD_CLIP_XDIFF	PGD_CLIP_DIFFの逆
	PGD_CLIP_COPY	新しいクリッピング領域にする。

%href
pgd_DrawStill
pgd_DrawAnimate

%dll
module_pgd

%group
pgdモデル描画

%index
pgd_DrawStill
静画pgdモデルを描画

%prm
pgd, sizeX, sizeY, rotate, clipFlag
pgd 静画形式のpgdモデルを格納した変数
sizeX 出力サイズX
sizeY 出力サイズY
rotate 回転角度 (単位ラジアン)
clipFlag クリッピング (0~n)

%inst
静画形式用の描画命令です。
カレントポジションを中心に sizeX,sizeY の大きさで描画します。
描画内容は redraw 1 で画面に反映されます。

sizeX,sizeY はエディタで書き出した際の ビューサイズ をそのまま指定すると等倍になります。

clipFlagに次の定数を指定するとクリッピング処理になりパス自体は描画されません。

	PGD_CLIP_AND	現在のクリッピング領域と AND 演算をする。
	PGD_CLIP_OR	現在のクリッピング領域と OR 演算をする。
	PGD_CLIP_XOR	現在のクリッピング領域と XOR 演算をする。
	PGD_CLIP_DIFF	現在のクリッピング領域から取り除く。
	PGD_CLIP_XDIFF	PGD_CLIP_DIFFの逆。
	PGD_CLIP_COPY	新しいクリッピング領域にする。

%href
pgd_Draw
pgd_DrawAnimate

%dll
module_pgd

%group
pgdモデル描画

%index
pgd_DrawAnimate
動画pgdモデルを描画

%prm
pgd, Tval, sizeX, sizeY, rotate, clipFlag
pgd 動画形式のpgdモデルを格納した変数
Tval アニメーション再生位置 (0.0~1.0)
sizeX 出力サイズX
sizeY 出力サイズY
rotate 回転角度 (単位ラジアン)
clipFlag クリッピング (0~n)

%inst
動画形式用の描画命令です。
カレントポジションを中心に sizeX,sizeY の大きさで描画します。
描画内容は redraw 1 で画面に反映されます。

Tval は再生位置を 0.0~1.0 の範囲で指定します。

sizeX,sizeY はエディタで書き出した際の ビューサイズ をそのまま指定すると等倍になります。

clipFlagに次の定数を指定するとクリッピング処理になりパス自体は描画されません。

	PGD_CLIP_AND	現在のクリッピング領域と AND 演算をする。
	PGD_CLIP_OR	現在のクリッピング領域と OR 演算をする。
	PGD_CLIP_XOR	現在のクリッピング領域と XOR 演算をする。
	PGD_CLIP_DIFF	現在のクリッピング領域から取り除く。
	PGD_CLIP_XDIFF	PGD_CLIP_DIFFの逆。
	PGD_CLIP_COPY	新しいクリッピング領域にする。

%href
pgd_Draw
pgd_DrawStill

%dll
module_pgd

%group
pgdモデル描画

%index
pgd_GetArrayStill
頂点データを取得

%prm
retData, retNum, retFmt, pgd, sizeX, sizeY, rotate
retData 頂点データを格納する実数型配列変数
retNum 各パスの頂点数を格納する整数型配列変数
retFmt 各パスのフォーマットを格納する整数型配列変数
pgd 静画形式のpgdモデルを格納した変数
sizeX 出力サイズX
sizeY 出力サイズY
rotate 回転角度 (単位ラジアン)

%inst
静画形式の頂点配列取得命令です。

retData は x1, y1, x2, y2, x3.... という具合に頂点座標が連続します。
retNum は各パスの頂点数が代入されます。
retFmt は各パスのフォーマットが代入されます。（パスごとにフォーマットは固定になります）
stat にパスの数を返します。
これは retNum,retFmt の有効配列長です。

パスのフォーマットは次の通りです。

	0	直線
		直線は頂点(x1,y1)の連続になり、retNum*2の配列数になります。
		座標は全て0,0 を原点とした絶対座標です。

	1	ベジェ曲線
		ベジェ曲線は最初に始点(x1,y1)を取り(apx1,apy1, apx2,apy2, x2,y2)が連続します。
		データ数は retNum*6+2 の配列数になります。
		座標は全て0,0 を原点とした絶対座標です。

例
フォーマットが 0,0 で retNum が 4,6 だった場合、パス1が4*2個、パス2が6*2個になります。
この場合 retData(0)~retData(7) がパス1の直線配列、
retData(8)~retData(19)がパス2の直線配列になります。

フォーマットが 1,0 で retNum が 4,6 だった場合、パス1が4*6+2個、パス2が6*2個になります。
この場合 retData(0)~retData(25) がパス1のベジェ曲線配列、
retData(26)~retData(37)がパス2の直線配列になります。

パスにCloseFigureが指定されている場合、始点と同じ座標の最後の点が追加されます。

%href
pgd_GetArrayAnimate

%dll
module_pgd

%group
pgdモデル情報取得

%index
pgd_GetArrayAnimate
頂点データを取得

%prm
retData, retNum, retFmt, pgd, Tval, sizeX, sizeY, rotate
retData 頂点データを格納する実数型配列変数
retNum 各パスの頂点数を格納する整数型配列変数
retFmt 各パスのフォーマットを格納する整数型配列変数
pgd 動画形式のpgdモデルを格納した変数
Tval アニメーション再生位置 (0.0~1.0)
sizeX 出力サイズX
sizeY 出力サイズY
rotate 回転角度 (単位ラジアン)

%inst
動画形式の頂点配列取得命令です。

retData は x1, y1, x2, y2, x3.... という具合に頂点座標が連続します。
retNum は各パスの頂点数が代入されます。
retFmt は各パスのフォーマットが代入されます。（パスごとにフォーマットは固定になります）
stat にパスの数を返します。
これは retNum,retFmt の有効配列長です。

パスのフォーマットは次の通りです。

	0	直線
		直線は頂点(x1,y1)の連続になり、retNum*2の配列数になります。
		座標は全て0,0 を原点とした絶対座標です。

	1	ベジェ曲線
		ベジェ曲線は最初に始点(x1,y1)を取り(apx1,apy1, apx2,apy2, x2,y2)が連続します。
		データ数は retNum*6+2 の配列数になります。
		座標は全て0,0 を原点とした絶対座標です。

例
フォーマットが 0,0 で retNum が 4,6 だった場合、パス1が4*2個、パス2が6*2個になります。
この場合 retData(0)~retData(7) がパス1の直線配列、
retData(8)~retData(19)がパス2の直線配列になります。

フォーマットが 1,0 で retNum が 4,6 だった場合、パス1が4*6+2個、パス2が6*2個になります。
この場合 retData(0)~retData(25) がパス1のベジェ曲線配列、
retData(26)~retData(37)がパス2の直線配列になります。

パスにCloseFigureが指定されている場合、始点と同じ座標の最後の点が追加されます。

%href
pgd_GetArrayStill

%dll
module_pgd

%group
pgdモデル情報取得

%index
pgd_GetFormat
フォーマット形式取得

%prm
( pgd)
pgd pgdモデルを格納した変数

%inst
フォーマットは静画なら1、動画なら2を返します。
それ以外の場合は正しいpgdモデルではありません。

%href
pgd_GetViewX
pgd_GetViewY

%dll
module_pgd

%group
pgdモデル情報取得

%index
pgd_GetViewX
ビューサイズXを取得

%prm
( pgd)
pgd pgdモデルを格納した変数

%inst
エディタで作成した際のビューサイズXを得ます。

%href
pgd_GetViewY
pgd_GetFormat

%dll
module_pgd

%group
pgdモデル情報取得

%index
pgd_GetViewY
ビューサイズYを取得

%prm
( pgd)
pgd pgdモデルを格納した変数

%inst
エディタで作成した際のビューサイズYを得ます。

%href
pgd_GetViewX
pgd_GetFormat

%dll
module_pgd

%group
pgdモデル情報取得

%index
pgd_CreateIcon
アイコン作成

%prm
( pgd, Tval, sizeX, sizeY, rotate)
pgd pgdモデルを格納した変数
Tval アニメーション再生位置 (0.0~1.0)
sizeX 出力サイズX
sizeY 出力サイズY
rotate 回転角度 (単位ラジアン)

%inst
pgdモデルからアイコンを作成しアイコンハンドルを返します。
アイコンハンドルは使い終わった後に pgd_DestroyIcon や user32 の DestroyIcon で削除してください。

%href
pgd_CreateCursor
pgd_DestroyIcon

%dll
module_pgd

%group
アイコンとカーソル

%index
pgd_CreateCursor
カーソル作成

%prm
( pgd, Tval, sizeX, sizeY, rotate, hotspotX, hotspotY)
pgd pgdモデルを格納した変数
Tval アニメーション再生位置 (0.0~1.0)
sizeX 出力サイズX
sizeY 出力サイズY
rotate 回転角度 (単位ラジアン)
hotspotX カーソルの先端座標X
hotspotY カーソルの先端座標Y

%inst
pgdモデルからカーソルを作成しカーソルハンドルを返します。
カーソルハンドルは使い終わった後に pgd_DestroyCursor や user32 の DestroyCursor で削除してください。

%href
pgd_CreateIcon
pgd_DestroyCursor

%dll
module_pgd

%group
アイコンとカーソル

%index
pgd_DestroyIcon
アイコン削除

%prm
hIcon
hIcon アイコンハンドル

%inst
アイコンを削除します。
user32 の DestroyIcon でも削除できます。

%href
pgd_CreateIcon

%dll
module_pgd

%group
アイコンとカーソル

%index
pgd_DestroyCursor
カーソル削除

%prm
hCursor
hCursor カーソルハンドル

%inst
カーソルを削除します。
user32 の DestroyCursor でも削除できます。

%href
pgd_CreateCursor

%dll
module_pgd

%group
アイコンとカーソル

%index
pgd_CnvBin
整数配列を文字列型変数に代入

%prm
srcArray, dst
srcArray 元データを格納した整数型配列変数
dst 出力先の文字列型変数

%inst
ソースに直接埋め込んだ整数配列形式のpgdモデルを文字列型に変換します。
文字列型配列で複数のpgdモデルを管理したい場合に使用してください。
外部ファイルからpgdモデルを読み込む場合は変換不要です。

%dll
module_pgd

%group
その他

%index
pgd_ResetClip
クリッピング解除

%prm

%inst
クリッピングを解除します。

%dll
module_pgd

%group
その他

