Sprite¶
-
class
atenxa.sprite.
Sprite
(res, src=0)[ソース]¶ ベースクラス:
object
vrmapi.VRMSpriteクラスのラッパ。
SetUV(), SetPos()をした後,frameイベント内でSetSprite()してください。(直接指定モード)
SetUV(), SetOrg(), SetZoom(), SetRotate(), SetTranslate()を設定しておき, スプライト座標をVRMNXシステム内部で処理してからSetSprite()で表示することもできます。(演算指定モード)
SetPos()かSetOrg()を呼び出すと,SetSprite()での描画モードが相応に切り替わります。 各属性値をを直接いじってSetSprite()も可能です。その際,描画モードはdispdirect属性に従います。
注釈
コンストラクタはリソース画像読み込み済みのSpriteオブジェクトを返します。
- パラメータ
res -- リソース画像の番号。
src -- リソースの読み込み先となる編成オブジェクトのID。デフォルトではレイアウトのリソースから読み込みます。
-
uv
¶ UV座標のタプル (u0, v0, u1, v1)
-
pos
¶ 表示座標のタプル (sx0,sy0, sx1,sy1, sx2,sy2, sx3,sy3)
-
org
¶ 演算指定モードでの基準サイズ (dx, dy)
-
trans
¶ 移動量(x,y)
-
color
¶ 表示色(r,g,b,a)
-
pivot
¶ 回転中心(x,y)
-
rot
¶ 回転角度(deg)のfloat。
-
dispdirect
¶ Trueで直接指定モード。Falseで演算指定モード。
サンプル
>>> sp1 = Sprite(1) #Layoutからリソース1番の画像を読み込み,スプライトオブジェクトを生成 >>> sp1.SetUV(0,0,256,256) >>> sp1.SetPos(10,10,200,10,10,300,200,300)
frameイベントでスプライトを表示させます。
>>> if ev == 'frame': >>> sp1.SetSprite()
Methods Summary
スプライトにロードしたテクスチャー画像のXサイズを取得する。
スプライトにロードしたテクスチャー画像のYサイズを取得する。
SetColor
(r, g, b, a)スプライトの色を指定します。
SetOrg
(orgdx, orgdy)スプライトの基準サイズを設定します。
SetPos
(sx0, sy0, sx1, sy1, sx2, sy2, sx3, sy3)スプライトの表示座標を設定
SetRotate
(pivotx, pivoty, rot)スプライトの回転を設定します。
スプライトを画面に表示。
SetTranslate
(x, y)スプライトの移動を設定します。
SetUV
(u0, v0, u1, v1)スプライトパターンを設定。
SetZoom
(zoomx, zoomy)スプライトの拡大縮小率を設定します。
Methods Documentation
-
SetOrg
(orgdx, orgdy)[ソース]¶ スプライトの基準サイズを設定します。
このメソッドを実行して以降は,演算指定モードでスプライトを描画します。 基準サイズをもとに、拡大縮小、回転、移動の演算を順番に行い、 結果をSetSprite()で表示します。
- パラメータ
orgdx --
orgdy -- 基準サイズ
-
SetPos
(sx0, sy0, sx1, sy1, sx2, sy2, sx3, sy3)[ソース]¶ スプライトの表示座標を設定
四角形スプライトの画面上の座標を設定します。 このメソッドを実行すると,それ以降は直接指定モードでスプライトを描画します。
- パラメータ
sx0 --
sy0 -- 左上座標
sx1 --
sy1 -- 右上座標
sx2 --
sy2 -- 左下座標
sx3 --
sy3 -- 右下座標
注釈
vrmapi.VRMSpriteと違い,毎フレームでSetPosを実行する必要はありません。
-
SetRotate
(pivotx, pivoty, rot)[ソース]¶ スプライトの回転を設定します。
描画モードが演算指定モードのときに使用されます。
- パラメータ
pivotx --
pivoty -- 回転中心座標。0.0で原点。
rot -- 回転角度(deg)