Public Member Functions | Protected Member Functions | Friends | List of all members
sf::Drawable Class Referenceabstract

Abstract base class for every object that can be drawn into a render window. More...

#include <Drawable.hpp>

Inheritance diagram for sf::Drawable:
sf::PostFX sf::Shape sf::Sprite sf::String

Public Member Functions

 Drawable (const Vector2f &Position=Vector2f(0, 0), const Vector2f &Scale=Vector2f(1, 1), float Rotation=0.f, const Color &Col=Color(255, 255, 255, 255))
 Default constructor. More...
 
virtual ~Drawable ()
 Virtual destructor. More...
 
void SetPosition (float X, float Y)
 Set the position of the object (take 2 values) More...
 
void SetPosition (const Vector2f &Position)
 Set the position of the object (take a 2D vector) More...
 
void SetX (float X)
 Set the X position of the object. More...
 
void SetY (float Y)
 Set the Y position of the object. More...
 
void SetScale (float ScaleX, float ScaleY)
 Set the scale of the object (take 2 values) More...
 
void SetScale (const Vector2f &Scale)
 Set the scale of the object (take a 2D vector) More...
 
void SetScaleX (float FactorX)
 Set the X scale factor of the object. More...
 
void SetScaleY (float FactorY)
 Set the Y scale factor of the object. More...
 
void SetCenter (float CenterX, float CenterY)
 Set the center of the object, in coordinates relative to the top-left of the object (take 2 values). More...
 
void SetCenter (const Vector2f &Center)
 Set the center of the object, in coordinates relative to the top-left of the object (take a 2D vector). More...
 
void SetRotation (float Rotation)
 Set the orientation of the object. More...
 
void SetColor (const Color &Col)
 Set the color of the object. More...
 
void SetBlendMode (Blend::Mode Mode)
 Set the blending mode for the object. More...
 
const Vector2fGetPosition () const
 Get the position of the object. More...
 
const Vector2fGetScale () const
 Get the current scale of the object. More...
 
const Vector2fGetCenter () const
 Get the center of the object. More...
 
float GetRotation () const
 Get the orientation of the object. More...
 
const ColorGetColor () const
 Get the color of the object. More...
 
Blend::Mode GetBlendMode () const
 Get the current blending mode. More...
 
void Move (float OffsetX, float OffsetY)
 Move the object of a given offset (take 2 values) More...
 
void Move (const Vector2f &Offset)
 Move the object of a given offset (take a 2D vector) More...
 
void Scale (float FactorX, float FactorY)
 Scale the object (take 2 values) More...
 
void Scale (const Vector2f &Factor)
 Scale the object (take a 2D vector) More...
 
void Rotate (float Angle)
 Rotate the object. More...
 
sf::Vector2f TransformToLocal (const sf::Vector2f &Point) const
 Transform a point from global coordinates into local coordinates (ie it applies the inverse of object's center, translation, rotation and scale to the point) More...
 
sf::Vector2f TransformToGlobal (const sf::Vector2f &Point) const
 Transform a point from local coordinates into global coordinates (ie it applies the object's center, translation, rotation and scale to the point) More...
 

Protected Member Functions

const Matrix3GetMatrix () const
 Get the transform matrix of the drawable. More...
 
const Matrix3GetInverseMatrix () const
 Get the inverse transform matrix of the drawable. More...
 

Friends

class RenderTarget
 

Detailed Description

Abstract base class for every object that can be drawn into a render window.

Definition at line 58 of file Drawable.hpp.

Constructor & Destructor Documentation

◆ Drawable()

sf::Drawable::Drawable ( const Vector2f Position = Vector2f(0, 0),
const Vector2f Scale = Vector2f(1, 1),
float  Rotation = 0.f,
const Color Col = Color(255, 255, 255, 255) 
)

Default constructor.

Parameters
Position: Position of the object (0, 0 by default)
Scale: Scale factor (1, 1 by default)
Rotation: Orientation, in degrees (0 by default)
Col: Color of the object (white by default)

Definition at line 39 of file Drawable.cpp.

◆ ~Drawable()

sf::Drawable::~Drawable ( )
virtual

Virtual destructor.

Definition at line 56 of file Drawable.cpp.

Member Function Documentation

◆ GetBlendMode()

Blend::Mode sf::Drawable::GetBlendMode ( ) const

Get the current blending mode.

Returns
Current blending mode

Definition at line 258 of file Drawable.cpp.

◆ GetCenter()

const Vector2f & sf::Drawable::GetCenter ( ) const

Get the center of the object.

Returns
Current position of the center

Definition at line 231 of file Drawable.cpp.

◆ GetColor()

const Color & sf::Drawable::GetColor ( ) const

Get the color of the object.

Returns
Current color

Definition at line 249 of file Drawable.cpp.

◆ GetInverseMatrix()

const Matrix3 & sf::Drawable::GetInverseMatrix ( ) const
protected

Get the inverse transform matrix of the drawable.

Returns
Inverse transform matrix

Definition at line 350 of file Drawable.cpp.

◆ GetMatrix()

const Matrix3 & sf::Drawable::GetMatrix ( ) const
protected

Get the transform matrix of the drawable.

Returns
Transform matrix

Definition at line 334 of file Drawable.cpp.

◆ GetPosition()

const Vector2f & sf::Drawable::GetPosition ( ) const

Get the position of the object.

Returns
Current position

Definition at line 213 of file Drawable.cpp.

◆ GetRotation()

float sf::Drawable::GetRotation ( ) const

Get the orientation of the object.

Rotation is always in the range [0, 360]

Returns
Current rotation, in degrees

Definition at line 240 of file Drawable.cpp.

◆ GetScale()

const Vector2f & sf::Drawable::GetScale ( ) const

Get the current scale of the object.

Returns
Current scale factor (always positive)

Definition at line 222 of file Drawable.cpp.

◆ Move() [1/2]

void sf::Drawable::Move ( float  OffsetX,
float  OffsetY 
)

Move the object of a given offset (take 2 values)

Parameters
OffsetX: X offset
OffsetY: Y offset

Definition at line 268 of file Drawable.cpp.

◆ Move() [2/2]

void sf::Drawable::Move ( const Vector2f Offset)

Move the object of a given offset (take a 2D vector)

Parameters
Offset: Amount of units to move the object of

Definition at line 278 of file Drawable.cpp.

◆ Rotate()

void sf::Drawable::Rotate ( float  Angle)

Rotate the object.

Parameters
Angle: Angle of rotation, in degrees

Definition at line 306 of file Drawable.cpp.

◆ Scale() [1/2]

void sf::Drawable::Scale ( float  FactorX,
float  FactorY 
)

Scale the object (take 2 values)

Parameters
FactorX: Scaling factor on X (must be strictly positive)
FactorY: Scaling factor on Y (must be strictly positive)

Definition at line 287 of file Drawable.cpp.

◆ Scale() [2/2]

void sf::Drawable::Scale ( const Vector2f Factor)

Scale the object (take a 2D vector)

Parameters
Factor: Scaling factors (both values must be strictly positive)

Definition at line 297 of file Drawable.cpp.

◆ SetBlendMode()

void sf::Drawable::SetBlendMode ( Blend::Mode  Mode)

Set the blending mode for the object.

The default blend mode is Blend::Alpha

Parameters
Mode: New blending mode

The default blend mode is Blend::Alpha

Definition at line 204 of file Drawable.cpp.

◆ SetCenter() [1/2]

void sf::Drawable::SetCenter ( float  CenterX,
float  CenterY 
)

Set the center of the object, in coordinates relative to the top-left of the object (take 2 values).

The default center is (0, 0)

Parameters
CenterX: X coordinate of the center
CenterY: Y coordinate of the center

The default center is (0, 0)

Definition at line 157 of file Drawable.cpp.

◆ SetCenter() [2/2]

void sf::Drawable::SetCenter ( const Vector2f Center)

Set the center of the object, in coordinates relative to the top-left of the object (take a 2D vector).

The default center is (0, 0)

Parameters
Center: New center

The default center is (0, 0)

Definition at line 171 of file Drawable.cpp.

◆ SetColor()

void sf::Drawable::SetColor ( const Color Col)

Set the color of the object.

The default color is white

Parameters
Col: New color

The default color is white

Definition at line 194 of file Drawable.cpp.

◆ SetPosition() [1/2]

void sf::Drawable::SetPosition ( float  X,
float  Y 
)

Set the position of the object (take 2 values)

Parameters
X: New X coordinate
Y: New Y coordinate

Definition at line 65 of file Drawable.cpp.

◆ SetPosition() [2/2]

void sf::Drawable::SetPosition ( const Vector2f Position)

Set the position of the object (take a 2D vector)

Parameters
Position: New position

Definition at line 75 of file Drawable.cpp.

◆ SetRotation()

void sf::Drawable::SetRotation ( float  Rotation)

Set the orientation of the object.

Parameters
Rotation: Angle of rotation, in degrees

Definition at line 180 of file Drawable.cpp.

◆ SetScale() [1/2]

void sf::Drawable::SetScale ( float  ScaleX,
float  ScaleY 
)

Set the scale of the object (take 2 values)

Parameters
ScaleX: New horizontal scale (must be strictly positive)
ScaleY: New vertical scale (must be strictly positive)

Definition at line 107 of file Drawable.cpp.

◆ SetScale() [2/2]

void sf::Drawable::SetScale ( const Vector2f Scale)

Set the scale of the object (take a 2D vector)

Parameters
Scale: New scale (both values must be strictly positive)

Definition at line 117 of file Drawable.cpp.

◆ SetScaleX()

void sf::Drawable::SetScaleX ( float  FactorX)

Set the X scale factor of the object.

Parameters
X: New X scale factor

Definition at line 127 of file Drawable.cpp.

◆ SetScaleY()

void sf::Drawable::SetScaleY ( float  FactorY)

Set the Y scale factor of the object.

Parameters
Y: New Y scale factor

Definition at line 141 of file Drawable.cpp.

◆ SetX()

void sf::Drawable::SetX ( float  X)

Set the X position of the object.

Parameters
X: New X coordinate

Definition at line 85 of file Drawable.cpp.

◆ SetY()

void sf::Drawable::SetY ( float  Y)

Set the Y position of the object.

Parameters
Y: New Y coordinate

Definition at line 96 of file Drawable.cpp.

◆ TransformToGlobal()

sf::Vector2f sf::Drawable::TransformToGlobal ( const sf::Vector2f Point) const

Transform a point from local coordinates into global coordinates (ie it applies the object's center, translation, rotation and scale to the point)

Parameters
Point: Point to transform
Returns
Transformed point

Definition at line 325 of file Drawable.cpp.

◆ TransformToLocal()

sf::Vector2f sf::Drawable::TransformToLocal ( const sf::Vector2f Point) const

Transform a point from global coordinates into local coordinates (ie it applies the inverse of object's center, translation, rotation and scale to the point)

Parameters
Point: Point to transform
Returns
Transformed point

Definition at line 316 of file Drawable.cpp.


The documentation for this class was generated from the following files: