|
|
| Surface (int width, int height, fge::Color const &color={0, 0, 0, 255}) |
|
| Surface (Surface const &r) |
|
| Surface (Surface &&r) noexcept |
|
| Surface (SDL_Surface *newSurface) |
|
Surface & | operator= (Surface const &r) |
|
Surface & | operator= (Surface &&r) noexcept |
| void | clear () |
| | Destroy the surface.
|
|
bool | create (int width, int height, fge::Color const &color={0, 0, 0, 255}) |
|
bool | loadFromFile (std::filesystem::path const &filePath) |
|
bool | loadFromMemory (void const *data, std::size_t size) |
| bool | saveToFile (std::filesystem::path const &filePath) const |
| | Save the surface to a PNG format file.
|
|
fge::Vector2i | getSize () const |
| void | createMaskFromColor (fge::Color const &color, uint8_t alpha=0) |
| | Create a transparent mask from a color.
|
|
bool | setPixel (int x, int y, fge::Color const &color) |
|
std::optional< fge::Color > | getPixel (int x, int y) const |
|
void | setCircle (int x, int y, unsigned int radius, fge::Color const &color) |
|
void | flipHorizontally () |
|
void | flipVertically () |
|
void | stretch (int width, int height) |
|
void | shear (float angle, ShearBaseSides side) |
| bool | blitSurface (Surface const &src, std::optional< SDL_Rect > const &srcRect, std::optional< SDL_Rect > &dstRect) |
| | Blit a surface on this surface.
|
| bool | fillRect (std::optional< SDL_Rect > const &rect, fge::Color const &color) |
| | Fill a rectangle section of the surface with a color.
|
| bool | addBorder (int borderSize, fge::Color const &color) |
| | Add a border to the surface with a specific color.
|
|
void | addCircle (int x, int y, unsigned int radius, fge::Color const &color) |
|
void | addUnfilledCircle (int x, int y, float startAngle, float endAngle, unsigned int radius, AngleDirections direction, fge::Color const &color) |
|
void | addHollowCircle (int x, int y, unsigned int startRadius, unsigned int endRadius, fge::Color const &color) |
|
void | addUnfilledHollowCircle (int x, int y, float startAngle, float endAngle, unsigned int startRadius, unsigned int endRadius, AngleDirections direction, fge::Color const &color) |
| void | set (SDL_Surface *surface) |
| | Set a new surface.
|
| SDL_Surface * | get () const |
| | Get the SDL_Surface pointer.
|
| fge::Vector2f | normalizeTextureCoords (fge::Vector2i const &coords) const |
| | Convert some pixel coordinates to texture coordinates (0.0f to 1.0f)
|
| fge::RectFloat | normalizeTextureRect (fge::RectInt const &rect) const |
| | Convert a pixel rectangle to a texture rectangle (0.0f to 1.0f)
|
Abstraction of SDL_Surface.
This class is an abstraction of SDL_Surface. It can be used to load image from file or memory with the help of SDL_image. The texture manager must be initialized in order to load image from file (or just init SDL_image manually).
The surface is automatically destroyed when the object is destroyed.
- See also
- fge::texture::Init