CSFML 3.0.0
Loading...
Searching...
No Matches
Sprite.h
Go to the documentation of this file.
1
2//
3// SFML - Simple and Fast Multimedia Library
4// Copyright (C) 2007-2026 Laurent Gomila (laurent@sfml-dev.org)
5//
6// This software is provided 'as-is', without any express or implied warranty.
7// In no event will the authors be held liable for any damages arising from the use of this software.
8//
9// Permission is granted to anyone to use this software for any purpose,
10// including commercial applications, and to alter it and redistribute it freely,
11// subject to the following restrictions:
12//
13// 1. The origin of this software must not be misrepresented;
14// you must not claim that you wrote the original software.
15// If you use this software in a product, an acknowledgment
16// in the product documentation would be appreciated but is not required.
17//
18// 2. Altered source versions must be plainly marked as such,
19// and must not be misrepresented as being the original software.
20//
21// 3. This notice may not be removed or altered from any source distribution.
22//
24
25#pragma once
26
28// Headers
30#include <CSFML/Graphics/Export.h>
31
32#include <CSFML/Graphics/BlendMode.h>
33#include <CSFML/Graphics/Color.h>
34#include <CSFML/Graphics/Rect.h>
35#include <CSFML/Graphics/Transform.h>
36#include <CSFML/Graphics/Types.h>
37#include <CSFML/System/Vector2.h>
38
39
48 CSFML_GRAPHICS_API sfSprite* sfSprite_create(const sfTexture* texture);
49
58 CSFML_GRAPHICS_API sfSprite* sfSprite_copy(const sfSprite* sprite);
59
66 CSFML_GRAPHICS_API void sfSprite_destroy(const sfSprite* sprite);
67
79 CSFML_GRAPHICS_API void sfSprite_setPosition(sfSprite* sprite, sfVector2f position);
80
92 CSFML_GRAPHICS_API void sfSprite_setRotation(sfSprite* sprite, float angle);
93
105 CSFML_GRAPHICS_API void sfSprite_setScale(sfSprite* sprite, sfVector2f scale);
106
121 CSFML_GRAPHICS_API void sfSprite_setOrigin(sfSprite* sprite, sfVector2f origin);
122
131 CSFML_GRAPHICS_API sfVector2f sfSprite_getPosition(const sfSprite* sprite);
132
143 CSFML_GRAPHICS_API float sfSprite_getRotation(const sfSprite* sprite);
144
153 CSFML_GRAPHICS_API sfVector2f sfSprite_getScale(const sfSprite* sprite);
154
163 CSFML_GRAPHICS_API sfVector2f sfSprite_getOrigin(const sfSprite* sprite);
164
175 CSFML_GRAPHICS_API void sfSprite_move(sfSprite* sprite, sfVector2f offset);
176
187 CSFML_GRAPHICS_API void sfSprite_rotate(sfSprite* sprite, float angle);
188
199 CSFML_GRAPHICS_API void sfSprite_scale(sfSprite* sprite, sfVector2f factors);
200
209 CSFML_GRAPHICS_API sfTransform sfSprite_getTransform(const sfSprite* sprite);
210
219 CSFML_GRAPHICS_API sfTransform sfSprite_getInverseTransform(const sfSprite* sprite);
220
239 CSFML_GRAPHICS_API void sfSprite_setTexture(sfSprite* sprite, const sfTexture* texture, bool resetRect);
240
252 CSFML_GRAPHICS_API void sfSprite_setTextureRect(sfSprite* sprite, sfIntRect rectangle);
253
266 CSFML_GRAPHICS_API void sfSprite_setColor(sfSprite* sprite, sfColor color);
267
280 CSFML_GRAPHICS_API const sfTexture* sfSprite_getTexture(const sfSprite* sprite);
281
290 CSFML_GRAPHICS_API sfIntRect sfSprite_getTextureRect(const sfSprite* sprite);
291
300 CSFML_GRAPHICS_API sfColor sfSprite_getColor(const sfSprite* sprite);
301
316 CSFML_GRAPHICS_API sfFloatRect sfSprite_getLocalBounds(const sfSprite* sprite);
317
332 CSFML_GRAPHICS_API sfFloatRect sfSprite_getGlobalBounds(const sfSprite* sprite);
BlendMode.h
Color.h
Export.h
CSFML_GRAPHICS_API
#define CSFML_GRAPHICS_API
Definition Graphics/Export.h:42
Types.h
sfTexture
struct sfTexture sfTexture
Definition Graphics/Types.h:39
sfSprite
struct sfSprite sfSprite
Definition Graphics/Types.h:37
Rect.h
sfSprite_setTextureRect
void sfSprite_setTextureRect(sfSprite *sprite, sfIntRect rectangle)
Set the sub-rectangle of the texture that a sprite will display.
sfSprite_setTexture
void sfSprite_setTexture(sfSprite *sprite, const sfTexture *texture, bool resetRect)
Change the source texture of a sprite.
sfSprite_move
void sfSprite_move(sfSprite *sprite, sfVector2f offset)
Move a sprite by a given offset.
sfSprite_getLocalBounds
sfFloatRect sfSprite_getLocalBounds(const sfSprite *sprite)
Get the local bounding rectangle of a sprite.
sfSprite_copy
sfSprite * sfSprite_copy(const sfSprite *sprite)
Copy an existing sprite.
sfSprite_destroy
void sfSprite_destroy(const sfSprite *sprite)
Destroy an existing sprite.
sfSprite_getTextureRect
sfIntRect sfSprite_getTextureRect(const sfSprite *sprite)
Get the sub-rectangle of the texture displayed by a sprite.
sfSprite_getTransform
sfTransform sfSprite_getTransform(const sfSprite *sprite)
Get the combined transform of a sprite.
sfSprite_getTexture
const sfTexture * sfSprite_getTexture(const sfSprite *sprite)
Get the source texture of a sprite.
sfSprite_getOrigin
sfVector2f sfSprite_getOrigin(const sfSprite *sprite)
Get the local origin of a sprite.
sfSprite_setPosition
void sfSprite_setPosition(sfSprite *sprite, sfVector2f position)
Set the position of a sprite.
sfSprite_getScale
sfVector2f sfSprite_getScale(const sfSprite *sprite)
Get the current scale of a sprite.
sfSprite_setColor
void sfSprite_setColor(sfSprite *sprite, sfColor color)
Set the global color of a sprite.
sfSprite_scale
void sfSprite_scale(sfSprite *sprite, sfVector2f factors)
Scale a sprite.
sfSprite_getGlobalBounds
sfFloatRect sfSprite_getGlobalBounds(const sfSprite *sprite)
Get the global bounding rectangle of a sprite.
sfSprite_create
sfSprite * sfSprite_create(const sfTexture *texture)
Create a new sprite.
sfSprite_setRotation
void sfSprite_setRotation(sfSprite *sprite, float angle)
Set the orientation of a sprite.
sfSprite_getRotation
float sfSprite_getRotation(const sfSprite *sprite)
Get the orientation of a sprite.
sfSprite_setOrigin
void sfSprite_setOrigin(sfSprite *sprite, sfVector2f origin)
Set the local origin of a sprite.
sfSprite_setScale
void sfSprite_setScale(sfSprite *sprite, sfVector2f scale)
Set the scale factors of a sprite.
sfSprite_getPosition
sfVector2f sfSprite_getPosition(const sfSprite *sprite)
Get the position of a sprite.
sfSprite_rotate
void sfSprite_rotate(sfSprite *sprite, float angle)
Rotate a sprite.
sfSprite_getInverseTransform
sfTransform sfSprite_getInverseTransform(const sfSprite *sprite)
Get the inverse of the combined transform of a sprite.
sfSprite_getColor
sfColor sfSprite_getColor(const sfSprite *sprite)
Get the global color of a sprite.
Transform.h
Vector2.h
sfColor
Utility class for manpulating RGBA colors.
Definition Color.h:38
sfFloatRect
sfFloatRect and sfIntRect are utility classes for manipulating rectangles.
Definition Rect.h:40
sfIntRect
Definition Rect.h:46
sfTransform
Encapsulate a 3x3 transform matrix.
Definition Transform.h:42
sfVector2f
2-component vector of floats
Definition Vector2.h:60