SDXFrameWork 0.09 SDXFrameWork

- Main Page
- Related Pages
- Classes

- Class List
- Class Hierarchy
- Class Members

All Classes Namespaces Functions Variables Enumerations Enumerator Pages
Classes | Public Member Functions | Protected Attributes | List of all members
SDX::Anime Class Reference

Imageをまとめてコマ送りアニメとして表すクラス. More...

`#include <Anime.h>`

Inherits SDX::ImagePack.

## Classes
class | Player
| Animeの再生情報を管理するクラス. More...

## Public Member Functions
| Anime (const char *ファイル名, int 総コマ数, int コマ割り横, int コマ割り縦, int 再生フレーム数=1)
bool | Load (const char *ファイル名, int 総コマ数, int コマ割り横, int コマ割り縦, int 再生フレーム数=1)
| 画像ファイルを分割してメモリへ読み込む. More...
bool | Load (const char *ファイル名, const char *拡張子, int 総コマ数, int 再生フレーム数=1)
| 連番ファイルを一括して読み込む. More...
void | Add (Image *追加イメージ, int 再生フレーム数=1)
| 末尾にImageを追加する。. More...
void | Add (const char *ファイル名, int 再生フレーム数=1)
void | Release () override
| Imageを開放し初期化する. More...
void | SetFrameTime (int フレーム時間[])
| 各コマのフレーム数を設定する. More...
void | SetType (AnimeType 再生方法)
| アニメの再生方法を指定する. More...
void | SetType (int コマ番号, int 次フレーム)
| 指定コマの次フレームを設定する. More...
void | SetType (int コマ番号, NextFrame 次フレーム)
int | GetAnimeTime () const
| 全コマの合計フレーム時間を返す. More...
Image * | operator[] (int index) const
bool | Load (const char *ファイル名, int 総コマ数, int コマ割り横, int コマ割り縦)
| １つの画像を分割して読み込む. More...
bool | Load (const char *ファイル名, const char *拡張子, int 総コマ数, const char *書式="%03d.")
| 連番ファイルを一括して読み込む. More...
void | Add (Image *追加イメージ)
| Imageを末尾に追加. More...
void | Add (const char *ファイル名)
int | GetSize () const
| 要素数を取得. More...
int | GetWidth () const
| 最大幅を取得. More...
int | GetHeight () const
| 最大高さを取得. More...
Image * | operator[] (int index)

## Protected Attributes
std::vector< Image * > | images
int | widthMax
int | heightMax

## Detailed Description

Imageをまとめてコマ送りアニメとして表すクラス.

//©SDXFramework http://sourceforge.jp/projects/dxframework/
//🍣画像をアニメーションさせる
bool SampleAnime()
{
using namespace SDX;
System::Initialise("sample", 600, 400);
//画像を分割して読み込む
Anime animeA = Anime("image.bmp", 9, 3, 3, 5);
Anime animeB = Anime("image.bmp", 9, 3, 3, 5);
//アニメーション
Anime::Player countA(&animeA);
Anime::Player countB(&animeB);
//各コマの再生時間を設定する
int frames[9] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
animeB.SetFrameTime( frames );
while (System::Update())
{
countA.Update();
countB.Update();
countA.GetFrame()->Draw({ 10, 10 });
countB.GetFrame()->Draw({100, 10});
if (Input::key.Return.on) break;//Enterで終了
}
System::End();
return true;
}

## Member Function Documentation

bool SDX::Anime::Load | ( | const char * | ファイル名,
|  | int | 総コマ数,
|  | int | コマ割り横,
|  | int | コマ割り縦,
|  | int | 再生フレーム数 = `1`
| ) |  |

画像ファイルを分割してメモリへ読み込む.

bool SDX::Anime::Load | ( | const char * | ファイル名,
|  | const char * | 拡張子,
|  | int | 総コマ数,
|  | int | 再生フレーム数 = `1`
| ) |  |

連番ファイルを一括して読み込む.

void SDX::Anime::Add | ( | Image * | 追加イメージ,
|  | int | 再生フレーム数 = `1`
| ) |  |

末尾にImageを追加する。.

void SDX::Anime::Release | ( |  | ) |
| override virtual

Imageを開放し初期化する.

Reimplemented from SDX::ImagePack.

void SDX::Anime::SetFrameTime | ( | int | フレーム時間[] | ) |

各コマのフレーム数を設定する.

先頭コマのフレーム数を配列で渡す

void SDX::Anime::SetType | ( | AnimeType | 再生方法 | ) |

アニメの再生方法を指定する.

void SDX::Anime::SetType | ( | int | コマ番号,
|  | int | 次フレーム
| ) |  |

指定コマの次フレームを設定する.

int SDX::Anime::GetAnimeTime | ( |  | ) | const

全コマの合計フレーム時間を返す.

bool SDX::ImagePack::Load | ( | const char * | ファイル名,
|  | int | 総コマ数,
|  | int | コマ割り横,
|  | int | コマ割り縦
| ) |  |
| inherited

１つの画像を分割して読み込む.

総コマ数=14,コマ割り横=4,コマ割り縦=4の場合
[ 0][ 1][ 2][ 3]
[ 4][ 5][ 6][ 7]
[ 8][ 9][10][11]
[12][13][ ][ ]
のように分割して、ImagePackのサイズは14になる

bool SDX::ImagePack::Load | ( | const char * | ファイル名,
|  | const char * | 拡張子,
|  | int | 総コマ数,
|  | const char * | 書式 = `"%03d."`
| ) |  |
| inherited

連番ファイルを一括して読み込む.

ファイル名の後に三桁の連番が付いたファイルを連続して読み込む
例:「ファイル名***.拡張子」

void SDX::ImagePack::Add | ( | Image * | 追加イメージ | ) |
| inherited

Imageを末尾に追加.

int SDX::ImagePack::GetSize | ( |  | ) | const
| inherited

要素数を取得.

int SDX::ImagePack::GetWidth | ( |  | ) | const
| inherited

最大幅を取得.

int SDX::ImagePack::GetHeight | ( |  | ) | const
| inherited

最大高さを取得.