31 #include <SFML/Graphics/Export.h>
32 #include <SFML/Graphics/Color.h>
33 #include <SFML/Graphics/Rect.h>
34 #include <SFML/Graphics/Transform.h>
35 #include <SFML/Graphics/Types.h>
36 #include <SFML/System/Vector2.h>
40 typedef size_t (*sfShapeGetPointCountCallback)(
void*);
41 typedef sfVector2f (*sfShapeGetPointCallback)(size_t,
void*);
53 CSFML_GRAPHICS_API sfShape* sfShape_create(sfShapeGetPointCountCallback getPointCount,
54 sfShapeGetPointCallback getPoint,
63 CSFML_GRAPHICS_API
void sfShape_destroy(sfShape* shape);
76 CSFML_GRAPHICS_API
void sfShape_setPosition(sfShape* shape,
sfVector2f position);
89 CSFML_GRAPHICS_API
void sfShape_setRotation(sfShape* shape,
float angle);
102 CSFML_GRAPHICS_API
void sfShape_setScale(sfShape* shape,
sfVector2f scale);
118 CSFML_GRAPHICS_API
void sfShape_setOrigin(sfShape* shape,
sfVector2f origin);
128 CSFML_GRAPHICS_API
sfVector2f sfShape_getPosition(
const sfShape* shape);
140 CSFML_GRAPHICS_API
float sfShape_getRotation(
const sfShape* shape);
150 CSFML_GRAPHICS_API
sfVector2f sfShape_getScale(
const sfShape* shape);
160 CSFML_GRAPHICS_API
sfVector2f sfShape_getOrigin(
const sfShape* shape);
172 CSFML_GRAPHICS_API
void sfShape_move(sfShape* shape,
sfVector2f offset);
184 CSFML_GRAPHICS_API
void sfShape_rotate(sfShape* shape,
float angle);
196 CSFML_GRAPHICS_API
void sfShape_scale(sfShape* shape,
sfVector2f factors);
206 CSFML_GRAPHICS_API
sfTransform sfShape_getTransform(
const sfShape* shape);
216 CSFML_GRAPHICS_API
sfTransform sfShape_getInverseTransform(
const sfShape* shape);
237 CSFML_GRAPHICS_API
void sfShape_setTexture(sfShape* shape,
const sfTexture* texture, sfBool resetRect);
250 CSFML_GRAPHICS_API
void sfShape_setTextureRect(sfShape* shape,
sfIntRect rect);
266 CSFML_GRAPHICS_API
void sfShape_setFillColor(sfShape* shape,
sfColor color);
278 CSFML_GRAPHICS_API
void sfShape_setOutlineColor(sfShape* shape,
sfColor color);
291 CSFML_GRAPHICS_API
void sfShape_setOutlineThickness(sfShape* shape,
float thickness);
305 CSFML_GRAPHICS_API
const sfTexture* sfShape_getTexture(
const sfShape* shape);
315 CSFML_GRAPHICS_API
sfIntRect sfShape_getTextureRect(
const sfShape* shape);
325 CSFML_GRAPHICS_API
sfColor sfShape_getFillColor(
const sfShape* shape);
335 CSFML_GRAPHICS_API
sfColor sfShape_getOutlineColor(
const sfShape* shape);
345 CSFML_GRAPHICS_API
float sfShape_getOutlineThickness(
const sfShape* shape);
355 CSFML_GRAPHICS_API
size_t sfShape_getPointCount(
const sfShape* shape);
368 CSFML_GRAPHICS_API
sfVector2f sfShape_getPoint(
const sfShape* shape,
size_t index);
384 CSFML_GRAPHICS_API
sfFloatRect sfShape_getLocalBounds(
const sfShape* shape);
400 CSFML_GRAPHICS_API
sfFloatRect sfShape_getGlobalBounds(
const sfShape* shape);
410 CSFML_GRAPHICS_API
void sfShape_update(sfShape* shape);
413 #endif // SFML_SHAPE_H