sf::Shape Class Reference

Shape defines a drawable convex shape ; it also defines helper functions to draw simple shapes like lines, rectangles, circles, etc. More...

#include <Shape.hpp>

Inheritance diagram for sf::Shape:

sf::Drawable List of all members.

Public Member Functions

 Shape ()
 Default constructor.
void AddPoint (float X, float Y, const Color &Col=Color(255, 255, 255), const Color &OutlineCol=Color(0, 0, 0))
 Add a point to the shape.
void AddPoint (const Vector2f &Position, const Color &Col=Color(255, 255, 255), const Color &OutlineCol=Color(0, 0, 0))
 Add a point to the shape.
void EnableFill (bool Enable)
 Enable or disable filling the shape.
void EnableOutline (bool Enable)
 Enable or disable drawing the shape outline.
void SetOutlineWidth (float Width)
 Change the width of the shape outline.
unsigned int GetNbPoints () const
 Get the number of points composing the shape.
const Vector2fGetPoint (unsigned int Index) const
 Get a point of the shape.
float GetOutlineWidth () const
 Get the width of the shape outline.
void SetPosition (float X, float Y)
 Set the position of the object (take 2 values).
void SetPosition (const Vector2f &Position)
 Set the position of the object (take a 2D vector).
void SetX (float X)
 Set the X position of the object.
void SetY (float Y)
 Set the Y position of the object.
void SetScale (float ScaleX, float ScaleY)
 Set the scale of the object (take 2 values).
void SetScale (const Vector2f &Scale)
 Set the scale of the object (take a 2D vector).
void SetScaleX (float FactorX)
 Set the X scale factor of the object.
void SetScaleY (float FactorY)
 Set the Y scale factor of the object.
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).
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).
void SetRotation (float Rotation)
 Set the orientation of the object.
void SetColor (const Color &Col)
 Set the color of the object.
void SetBlendMode (Blend::Mode Mode)
 Set the blending mode for the object.
const Vector2fGetPosition () const
 Get the position of the object.
const Vector2fGetScale () const
 Get the current scale of the object.
const Vector2fGetCenter () const
 Get the center of the object.
float GetRotation () const
 Get the orientation of the object.
const ColorGetColor () const
 Get the color of the object.
Blend::Mode GetBlendMode () const
 Get the current blending mode.
void Move (float OffsetX, float OffsetY)
 Move the object of a given offset (take 2 values).
void Move (const Vector2f &Offset)
 Move the object of a given offset (take a 2D vector).
void Scale (float FactorX, float FactorY)
 Scale the object (take 2 values).
void Scale (const Vector2f &Factor)
 Scale the object (take a 2D vector).
void Rotate (float Angle)
 Rotate the object.

Static Public Member Functions

static Shape Line (float P1X, float P1Y, float P2X, float P2Y, float Thickness, const Color &Col, float Outline=0.f, const Color &OutlineCol=sf::Color(0, 0, 0))
 Create a shape made of a single line.
static Shape Rectangle (float P1X, float P1Y, float P2X, float P2Y, const Color &Col, float Outline=0.f, const Color &OutlineCol=sf::Color(0, 0, 0))
 Create a shape made of a single rectangle.
static Shape Circle (float X, float Y, float Radius, const Color &Col, float Outline=0.f, const Color &OutlineCol=sf::Color(0, 0, 0))
 Create a shape made of a single circle.

Protected Member Functions

virtual void Render (const RenderWindow &Window) const
 /see Drawable::Render
const Matrix3GetMatrix () const
 Get the transform matrix of the drawable.

Classes

struct  Point
 Defines a simple 2D point.

Detailed Description

Shape defines a drawable convex shape ; it also defines helper functions to draw simple shapes like lines, rectangles, circles, etc.

Definition at line 43 of file Shape.hpp.


Constructor & Destructor Documentation

sf::Shape::Shape (  ) 

Default constructor.


Member Function Documentation

void sf::Shape::AddPoint ( float  X,
float  Y,
const Color Col = Color(255, 255, 255),
const Color OutlineCol = Color(0, 0, 0) 
)

Add a point to the shape.

Parameters:
X,Y : Position of the point
Col : Color of the point (white by default)
OutlineCol : Outline color of the point (black by default)

void sf::Shape::AddPoint ( const Vector2f Position,
const Color Col = Color(255, 255, 255),
const Color OutlineCol = Color(0, 0, 0) 
)

Add a point to the shape.

Parameters:
Position : Position of the point
Col : Color of the point (white by default)
OutlineCol : Outline color of the point (black by default)

void sf::Shape::EnableFill ( bool  Enable  ) 

Enable or disable filling the shape.

Fill is enabled by default

Parameters:
Enable : True to enable, false to disable

void sf::Shape::EnableOutline ( bool  Enable  ) 

Enable or disable drawing the shape outline.

Outline is enabled by default

Parameters:
Enable : True to enable, false to disable

void sf::Shape::SetOutlineWidth ( float  Width  ) 

Change the width of the shape outline.

Parameters:
Width : New width

unsigned int sf::Shape::GetNbPoints (  )  const

Get the number of points composing the shape.

Parameters:
Total number of points

const Vector2f& sf::Shape::GetPoint ( unsigned int  Index  )  const

Get a point of the shape.

Parameters:
Index-th point

float sf::Shape::GetOutlineWidth (  )  const

Get the width of the shape outline.

Parameters:
return Current outline width

static Shape sf::Shape::Line ( float  P1X,
float  P1Y,
float  P2X,
float  P2Y,
float  Thickness,
const Color Col,
float  Outline = 0.f,
const Color OutlineCol = sf::Color(0, 0, 0) 
) [static]

Create a shape made of a single line.

Parameters:
P1X,P1Y : Position of the first point
P2X,P2Y : Position second point
Thickness : Line thickness
Col : Color used to draw the line
Outline : Outline width (0 by default)
OutlineCol : Color used to draw the outline (black by default)

static Shape sf::Shape::Rectangle ( float  P1X,
float  P1Y,
float  P2X,
float  P2Y,
const Color Col,
float  Outline = 0.f,
const Color OutlineCol = sf::Color(0, 0, 0) 
) [static]

Create a shape made of a single rectangle.

Parameters:
P1X,P1Y : Position of the first point
P2X,P2Y : Position second point
Col : Color used to fill the rectangle
Outline : Outline width (0 by default)
OutlineCol : Color used to draw the outline (black by default)

static Shape sf::Shape::Circle ( float  X,
float  Y,
float  Radius,
const Color Col,
float  Outline = 0.f,
const Color OutlineCol = sf::Color(0, 0, 0) 
) [static]

Create a shape made of a single circle.

Parameters:
X,Y : Position of the center
Radius : Radius
Col : Color used to fill the circle
Outline : Outline width (0 by default)
OutlineCol : Color used to draw the outline (black by default)

virtual void sf::Shape::Render ( const RenderWindow Window  )  const [protected, virtual]

/see Drawable::Render

Implements sf::Drawable.

void sf::Drawable::SetPosition ( float  X,
float  Y 
) [inherited]

Set the position of the object (take 2 values).

Parameters:
X : New X coordinate
Y : New Y coordinate

void sf::Drawable::SetPosition ( const Vector2f Position  )  [inherited]

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

Parameters:
Position : New position

void sf::Drawable::SetX ( float  X  )  [inherited]

Set the X position of the object.

Parameters:
X : New X coordinate

void sf::Drawable::SetY ( float  Y  )  [inherited]

Set the Y position of the object.

Parameters:
Y : New Y coordinate

void sf::Drawable::SetScale ( float  ScaleX,
float  ScaleY 
) [inherited]

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)

void sf::Drawable::SetScale ( const Vector2f Scale  )  [inherited]

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

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

void sf::Drawable::SetScaleX ( float  FactorX  )  [inherited]

Set the X scale factor of the object.

Parameters:
X : New X scale factor

void sf::Drawable::SetScaleY ( float  FactorY  )  [inherited]

Set the Y scale factor of the object.

Parameters:
Y : New Y scale factor

void sf::Drawable::SetCenter ( float  CenterX,
float  CenterY 
) [inherited]

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

void sf::Drawable::SetCenter ( const Vector2f Center  )  [inherited]

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

void sf::Drawable::SetRotation ( float  Rotation  )  [inherited]

Set the orientation of the object.

Parameters:
Rotation : Angle of rotation, in degrees

void sf::Drawable::SetColor ( const Color Col  )  [inherited]

Set the color of the object.

The default color is white

Parameters:
Col : New color

void sf::Drawable::SetBlendMode ( Blend::Mode  Mode  )  [inherited]

Set the blending mode for the object.

The default blend mode is Blend::Alpha

Parameters:
Mode : New blending mode

const Vector2f& sf::Drawable::GetPosition (  )  const [inherited]

Get the position of the object.

Returns:
Current position

const Vector2f& sf::Drawable::GetScale (  )  const [inherited]

Get the current scale of the object.

Returns:
Current scale factor (always positive)

const Vector2f& sf::Drawable::GetCenter (  )  const [inherited]

Get the center of the object.

Returns:
Current position of the center

float sf::Drawable::GetRotation (  )  const [inherited]

Get the orientation of the object.

Rotation is always in the range [0, 360]

Returns:
Current rotation, in degrees

const Color& sf::Drawable::GetColor (  )  const [inherited]

Get the color of the object.

Returns:
Current color

Blend::Mode sf::Drawable::GetBlendMode (  )  const [inherited]

Get the current blending mode.

Returns:
Current blending mode

void sf::Drawable::Move ( float  OffsetX,
float  OffsetY 
) [inherited]

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

Parameters:
OffsetX : X offset
OffsetY : Y offset

void sf::Drawable::Move ( const Vector2f Offset  )  [inherited]

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

Parameters:
Offset : Amount of units to move the object of

void sf::Drawable::Scale ( float  FactorX,
float  FactorY 
) [inherited]

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)

void sf::Drawable::Scale ( const Vector2f Factor  )  [inherited]

Scale the object (take a 2D vector).

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

void sf::Drawable::Rotate ( float  Angle  )  [inherited]

Rotate the object.

Parameters:
Angle : Angle of rotation, in degrees

const Matrix3& sf::Drawable::GetMatrix (  )  const [protected, inherited]

Get the transform matrix of the drawable.

Returns:
Transform matrix


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