Added GetLocalBounds and GetGlobalBounds functions to drawable classes

This commit is contained in:
Laurent Gomila committed 2012-02-10 17:13:31 +01:00
1 parent 441703a997
commit cc8d8ed07b
10 files changed
+320

No files matched your search

+32
View File
@@ -314,3 +314,35 @@ void sfCircleShape_SetPointCount(sfCircleShape* shape, unsigned int count)
{
CSFML_CALL(shape, SetPointCount(count));
}
////////////////////////////////////////////////////////////
sfFloatRect sfCircleShape_GetLocalBounds(const sfCircleShape* shape)
{
sfFloatRect rect = {0, 0, 0, 0};
CSFML_CHECK_RETURN(shape, rect);
sf::FloatRect sfmlRect = shape->This.GetLocalBounds();
rect.Left = sfmlRect.Left;
rect.Top = sfmlRect.Top;
rect.Width = sfmlRect.Width;
rect.Height = sfmlRect.Height;
return rect;
}
////////////////////////////////////////////////////////////
sfFloatRect sfCircleShape_GetGlobalBounds(const sfCircleShape* shape)
{
sfFloatRect rect = {0, 0, 0, 0};
CSFML_CHECK_RETURN(shape, rect);
sf::FloatRect sfmlRect = shape->This.GetGlobalBounds();
rect.Left = sfmlRect.Left;
rect.Top = sfmlRect.Top;
rect.Width = sfmlRect.Width;
rect.Height = sfmlRect.Height;
return rect;
}
+32
View File
@@ -304,3 +304,35 @@ void sfConvexShape_SetPoint(sfConvexShape* shape, unsigned int index, float x, f
{
CSFML_CALL(shape, SetPoint(index, sf::Vector2f(x, y)));
}
////////////////////////////////////////////////////////////
sfFloatRect sfConvexShape_GetLocalBounds(const sfConvexShape* shape)
{
sfFloatRect rect = {0, 0, 0, 0};
CSFML_CHECK_RETURN(shape, rect);
sf::FloatRect sfmlRect = shape->This.GetLocalBounds();
rect.Left = sfmlRect.Left;
rect.Top = sfmlRect.Top;
rect.Width = sfmlRect.Width;
rect.Height = sfmlRect.Height;
return rect;
}
////////////////////////////////////////////////////////////
sfFloatRect sfConvexShape_GetGlobalBounds(const sfConvexShape* shape)
{
sfFloatRect rect = {0, 0, 0, 0};
CSFML_CHECK_RETURN(shape, rect);
sf::FloatRect sfmlRect = shape->This.GetGlobalBounds();
rect.Left = sfmlRect.Left;
rect.Top = sfmlRect.Top;
rect.Width = sfmlRect.Width;
rect.Height = sfmlRect.Height;
return rect;
}
+32
View File
@@ -310,3 +310,35 @@ void sfRectangleShape_GetSize(const sfRectangleShape* shape, float* width, float
if (height)
*height = size.y;
}
////////////////////////////////////////////////////////////
sfFloatRect sfRectangleShape_GetLocalBounds(const sfRectangleShape* shape)
{
sfFloatRect rect = {0, 0, 0, 0};
CSFML_CHECK_RETURN(shape, rect);
sf::FloatRect sfmlRect = shape->This.GetLocalBounds();
rect.Left = sfmlRect.Left;
rect.Top = sfmlRect.Top;
rect.Width = sfmlRect.Width;
rect.Height = sfmlRect.Height;
return rect;
}
////////////////////////////////////////////////////////////
sfFloatRect sfRectangleShape_GetGlobalBounds(const sfRectangleShape* shape)
{
sfFloatRect rect = {0, 0, 0, 0};
CSFML_CHECK_RETURN(shape, rect);
sf::FloatRect sfmlRect = shape->This.GetGlobalBounds();
rect.Left = sfmlRect.Left;
rect.Top = sfmlRect.Top;
rect.Width = sfmlRect.Width;
rect.Height = sfmlRect.Height;
return rect;
}
+32
View File
@@ -240,3 +240,35 @@ sfColor sfSprite_GetColor(const sfSprite* sprite)
return color;
}
////////////////////////////////////////////////////////////
sfFloatRect sfSprite_GetLocalBounds(const sfSprite* sprite)
{
sfFloatRect rect = {0, 0, 0, 0};
CSFML_CHECK_RETURN(sprite, rect);
sf::FloatRect sfmlRect = sprite->This.GetLocalBounds();
rect.Left = sfmlRect.Left;
rect.Top = sfmlRect.Top;
rect.Width = sfmlRect.Width;
rect.Height = sfmlRect.Height;
return rect;
}
////////////////////////////////////////////////////////////
sfFloatRect sfSprite_GetGlobalBounds(const sfSprite* sprite)
{
sfFloatRect rect = {0, 0, 0, 0};
CSFML_CHECK_RETURN(sprite, rect);
sf::FloatRect sfmlRect = sprite->This.GetGlobalBounds();
rect.Left = sfmlRect.Left;
rect.Top = sfmlRect.Top;
rect.Width = sfmlRect.Width;
rect.Height = sfmlRect.Height;
return rect;
}
+32
View File
@@ -269,3 +269,35 @@ void sfText_FindCharacterPos(const sfText* text, size_t index, float* x, float*
if (y)
*y = pos.y;
}
////////////////////////////////////////////////////////////
sfFloatRect sfText_GetLocalBounds(const sfText* text)
{
sfFloatRect rect = {0, 0, 0, 0};
CSFML_CHECK_RETURN(text, rect);
sf::FloatRect sfmlRect = text->This.GetLocalBounds();
rect.Left = sfmlRect.Left;
rect.Top = sfmlRect.Top;
rect.Width = sfmlRect.Width;
rect.Height = sfmlRect.Height;
return rect;
}
////////////////////////////////////////////////////////////
sfFloatRect sfText_GetGlobalBounds(const sfText* text)
{
sfFloatRect rect = {0, 0, 0, 0};
CSFML_CHECK_RETURN(text, rect);
sf::FloatRect sfmlRect = text->This.GetGlobalBounds();
rect.Left = sfmlRect.Left;
rect.Top = sfmlRect.Top;
rect.Width = sfmlRect.Width;
rect.Height = sfmlRect.Height;
return rect;
}