载入中...
搜索中...
未找到
eve::animation::SpriteSheet类 参考

Sprite-sheet / texture-atlas frame table (pixel rects). 更多...

#include <SpriteSheet.h>

Public 成员函数

 SpriteSheet ()=default
 Sprite sheet.
 
 ~SpriteSheet ()=default
 Sprite sheet.
 
 SpriteSheet (const SpriteSheet &)=delete
 
SpriteSheet & operator= (const SpriteSheet &)=delete
 
int addFrame (const std::string &name, int x, int y, int w, int h)
 Append a named frame. Returns frame index. Empty name → "frameN".
 
int addFrameTrimmed (const std::string &name, int x, int y, int w, int h, int sourceW, int sourceH, int offsetX, int offsetY)
 Append a trimmed frame with original canvas size and content offset.
 
int setGrid (int columns, int rows, int frameW, int frameH, int margin=0, int spacing=0, int originX=0, int originY=0)
 Generate frames in row-major order from a grid. frameW/frameH are cell sizes; margin is outer padding; spacing is gap between cells. Returns number of frames added.
 
void clear ()
 Clears .
 
void setTexture (graphics::Texture *texture)
 Optional atlas texture produced by a sequence loader or assigned by the user.
 
graphics::Texture * getTexture () const
 Return the optional atlas texture without transferring ownership.
 
int getFrameCount () const
 Returns the frame count.
 
int findFrame (const std::string &name) const
 Finds frame.
 
std::string getFrameName (int index) const
 Returns the frame name.
 
int getFrameX (int index) const
 Returns the frame x.
 
int getFrameY (int index) const
 Returns the frame y.
 
int getFrameWidth (int index) const
 Returns the frame width.
 
int getFrameHeight (int index) const
 Returns the frame height.
 
int getFrameSourceWidth (int index) const
 Returns the frame source width.
 
int getFrameSourceHeight (int index) const
 Returns the frame source height.
 
int getFrameOffsetX (int index) const
 Returns the frame offset x.
 
int getFrameOffsetY (int index) const
 Returns the frame offset y.
 
void applyToQuad (graphics::Quad *quad, int frameIndex) const
 Write pixel viewport into an existing Quad (does not allocate).
 
SpriteSheet * clone () const
 Duplicate frame metadata while sharing the borrowed atlas texture.
 

详细描述

Sprite-sheet / texture-atlas frame table (pixel rects).

Frames may be added by name or generated from a uniform grid. Does not own a Texture — pair with Graphics textures in script. Script type: SpriteSheet.

在文件 SpriteSheet.h 第 23 行定义.

构造及析构函数说明

◆ SpriteSheet() [1/2]

eve::animation::SpriteSheet::SpriteSheet ( )
default

Sprite sheet.

被这些函数引用 clone().

◆ ~SpriteSheet()

eve::animation::SpriteSheet::~SpriteSheet ( )
default

Sprite sheet.

◆ SpriteSheet() [2/2]

eve::animation::SpriteSheet::SpriteSheet ( const SpriteSheet &  )
delete

成员函数说明

◆ addFrame()

int eve::animation::SpriteSheet::addFrame ( const std::string &  name,
int  x,
int  y,
int  w,
int  h 
)

Append a named frame. Returns frame index. Empty name → "frameN".

在文件 SpriteSheet.cpp 第 14 行定义.

引用了 addFrameTrimmed(), h, name, w, x , 以及 y.

被这些函数引用 setGrid().

◆ addFrameTrimmed()

int eve::animation::SpriteSheet::addFrameTrimmed ( const std::string &  name,
int  x,
int  y,
int  w,
int  h,
int  sourceW,
int  sourceH,
int  offsetX,
int  offsetY 
)

Append a trimmed frame with original canvas size and content offset.

在文件 SpriteSheet.cpp 第 18 行定义.

引用了 f, h, idx, name, offsetX, offsetY, w, x , 以及 y.

被这些函数引用 addFrame().

◆ applyToQuad()

void eve::animation::SpriteSheet::applyToQuad ( graphics::Quad *  quad,
int  frameIndex 
) const

Write pixel viewport into an existing Quad (does not allocate).

在文件 SpriteSheet.cpp 第 101 行定义.

引用了 f , 以及 eve::graphics::Quad::setViewport().

被这些函数引用 eve::animation::SpriteAnim::applyToQuad().

◆ clear()

void eve::animation::SpriteSheet::clear ( )

Clears .

在文件 SpriteSheet.cpp 第 66 行定义.

被这些函数引用 setGrid().

◆ clone()

SpriteSheet * eve::animation::SpriteSheet::clone ( ) const

Duplicate frame metadata while sharing the borrowed atlas texture.

在文件 SpriteSheet.cpp 第 108 行定义.

引用了 SpriteSheet().

◆ findFrame()

int eve::animation::SpriteSheet::findFrame ( const std::string &  name) const

Finds frame.

在文件 SpriteSheet.cpp 第 71 行定义.

引用了 name.

被这些函数引用 eve::animation::SpriteClip::addFrameByName().

◆ getFrameCount()

int eve::animation::SpriteSheet::getFrameCount ( ) const
inline

Returns the frame count.

在文件 SpriteSheet.h 第 56 行定义.

◆ getFrameHeight()

int eve::animation::SpriteSheet::getFrameHeight ( int  index) const

Returns the frame height.

在文件 SpriteSheet.cpp 第 96 行定义.

引用了 h , 以及 index.

◆ getFrameName()

std::string eve::animation::SpriteSheet::getFrameName ( int  index) const

Returns the frame name.

在文件 SpriteSheet.cpp 第 76 行定义.

引用了 index , 以及 name.

◆ getFrameOffsetX()

int eve::animation::SpriteSheet::getFrameOffsetX ( int  index) const

Returns the frame offset x.

在文件 SpriteSheet.cpp 第 41 行定义.

◆ getFrameOffsetY()

int eve::animation::SpriteSheet::getFrameOffsetY ( int  index) const

Returns the frame offset y.

在文件 SpriteSheet.cpp 第 42 行定义.

◆ getFrameSourceHeight()

int eve::animation::SpriteSheet::getFrameSourceHeight ( int  index) const

Returns the frame source height.

在文件 SpriteSheet.cpp 第 40 行定义.

◆ getFrameSourceWidth()

int eve::animation::SpriteSheet::getFrameSourceWidth ( int  index) const

Returns the frame source width.

在文件 SpriteSheet.cpp 第 39 行定义.

◆ getFrameWidth()

int eve::animation::SpriteSheet::getFrameWidth ( int  index) const

Returns the frame width.

在文件 SpriteSheet.cpp 第 91 行定义.

引用了 index , 以及 w.

◆ getFrameX()

int eve::animation::SpriteSheet::getFrameX ( int  index) const

Returns the frame x.

在文件 SpriteSheet.cpp 第 81 行定义.

引用了 index , 以及 x.

◆ getFrameY()

int eve::animation::SpriteSheet::getFrameY ( int  index) const

Returns the frame y.

在文件 SpriteSheet.cpp 第 86 行定义.

引用了 index , 以及 y.

◆ getTexture()

graphics::Texture * eve::animation::SpriteSheet::getTexture ( ) const
inline

Return the optional atlas texture without transferring ownership.

在文件 SpriteSheet.h 第 53 行定义.

◆ operator=()

SpriteSheet & eve::animation::SpriteSheet::operator= ( const SpriteSheet &  )
delete

◆ setGrid()

int eve::animation::SpriteSheet::setGrid ( int  columns,
int  rows,
int  frameW,
int  frameH,
int  margin = 0,
int  spacing = 0,
int  originX = 0,
int  originY = 0 
)

Generate frames in row-major order from a grid. frameW/frameH are cell sizes; margin is outer padding; spacing is gap between cells. Returns number of frames added.

在文件 SpriteSheet.cpp 第 44 行定义.

引用了 addFrame(), clear(), columns, margin, rows, spacing, x , 以及 y.

◆ setTexture()

void eve::animation::SpriteSheet::setTexture ( graphics::Texture *  texture)
inline

Optional atlas texture produced by a sequence loader or assigned by the user.

在文件 SpriteSheet.h 第 51 行定义.


该类的文档由以下文件生成: