TurtleBrains  0.3.5
High quality, portable, C++ framework for rapid 2D game development.
TurtleBrains::Graphics::OutlinedBoxShape Class Reference

#include <tb_basic_shapes.hpp>

Inheritance diagram for TurtleBrains::Graphics::OutlinedBoxShape:
TurtleBrains::Graphics::OutlinedPolygonShape TurtleBrains::Graphics::PolygonShape TurtleBrains::Graphics::Graphic

Public Member Functions

 OutlinedBoxShape (const float width=64.0f, const float height=64.0f, const tbGraphics::Color &fillColor=tbGraphics::ColorPalette::White, const tbGraphics::Color &outlineColor=tbGraphics::ColorPalette::Black, const tbMath::Vector2 &position=tbMath::Vector2::Zero())
 
virtual ~OutlinedBoxShape (void)
 
- Public Member Functions inherited from TurtleBrains::Graphics::OutlinedPolygonShape
 OutlinedPolygonShape (void)
 
 OutlinedPolygonShape (const OutlinedPolygonShape &other)
 
virtual ~OutlinedPolygonShape (void)
 
virtual void ClearVertices (void) override
 
void SetFillColor (const tbGraphics::Color &fillColor)
 
void SetOutlineColor (const tbGraphics::Color &outlineColor)
 
- Public Member Functions inherited from TurtleBrains::Graphics::PolygonShape
 PolygonShape (void)
 
 PolygonShape (const PolygonShape &other)
 
 PolygonShape (PolygonShape &&other) noexcept
 
virtual ~PolygonShape (void)
 
PolygonShapeoperator= (const PolygonShape &other)
 
PolygonShapeoperator= (PolygonShape &&other) noexcept
 
virtual PixelSpace GetPixelWidth (void) const override
 
virtual PixelSpace GetPixelHeight (void) const override
 
void SetAsTriangles (void)
 
void SetAsTriangleFan (void)
 
void SetAsTriangleStrip (void)
 
void SetAsLines (void)
 
void SetAsLineStrip (void)
 
void SetAsLineLoop (void)
 
void SetVertexPosition (size_t vertexIndex, const tbMath::Vector2 &position)
 
void RecomputeBounds (void)
 
- Public Member Functions inherited from TurtleBrains::Graphics::Graphic
 Graphic (void)
 
 Graphic (const Graphic &other)=default
 
virtual ~Graphic (void)=default
 
Graphicoperator= (const Graphic &other)=default
 
bool IsActive (void) const
 
void SetActive (const bool isActive)
 
void Update (const float deltaTime)
 
bool IsVisible (void) const
 
void SetVisible (const bool isVisible)
 
void Render (void) const
 
const tbMath::Vector2GetPosition (void) const
 
void SetPosition (const float x, const float y)
 
void SetPosition (const tbMath::Vector2 &position)
 
const tbMath::Vector2GetOrigin (void) const
 
void SetOrigin (const AnchorLocation &anchor, const float offsetX, const float offsetY)
 
void SetOrigin (const AnchorLocation &anchor, const tbMath::Vector2 &offset=tbMath::Vector2::Zero())
 
void SetOrigin (const float originX, const float originY)
 
void SetOrigin (const tbMath::Vector2 &origin)
 
float GetDepth (void) const
 
void SetDepth (const float newDepth)
 
const tbMath::Vector2GetScale (void) const
 
void SetScale (const float scale)
 
void SetScale (const tbMath::Vector2 &scale)
 
void SetScale (const float scaleX, const float scaleY)
 
tbMath::Angle GetRotation (void) const
 
void SetRotation (const tbMath::Angle &angle)
 
void SetScroll (const float scroll)
 
void SetScroll (const float scrollX, const float scrollY)
 
bool IsRelative (void) const
 
const ColorGetColor (void) const
 
float GetWidth (void) const
 
float GetHeight (void) const
 
float GetScaledWidth (void) const
 
float GetScaledHeight (void) const
 
tbMath::Vector2 GetAnchorPosition (const tbGraphics::AnchorLocation &anchor, const float offsetX, const float offsetY) const
 
tbMath::Vector2 GetAnchorPosition (const tbGraphics::AnchorLocation &anchor, const tbMath::Vector2 &offset=tbMath::Vector2::Zero()) const
 
bool UnstableIsPointContained (const tbMath::Vector2 &point) const
 

Additional Inherited Members

- Protected Member Functions inherited from TurtleBrains::Graphics::OutlinedPolygonShape
void AddOutlineVertex (const tbMath::Vector2 &position, const tbMath::Vector2 &uv=tbMath::Vector2::Zero())
 
void AddShapeVertex (const tbMath::Vector2 &position, const tbMath::Vector2 &uv=tbMath::Vector2::Zero())
 
void AddShapeAndOutlineVertex (const tbMath::Vector2 &position, const tbMath::Vector2 &uv=tbMath::Vector2::Zero())
 
virtual void OnRender (void) const override
 
- Protected Member Functions inherited from TurtleBrains::Graphics::Graphic
virtual void OnUpdate (const float deltaTime)
 
virtual void ApplyTransform (void) const
 
virtual void PopTransform (void) const
 

Detailed Description

The OutlinedBoxShape is a special case of the OutlinedPolygonShape that creates a box with a specified width and height and color, which also has an outline.

Constructor & Destructor Documentation

◆ OutlinedBoxShape()

TurtleBrains::Graphics::OutlinedBoxShape::OutlinedBoxShape ( const float  width = 64.0f,
const float  height = 64.0f,
const tbGraphics::Color fillColor = tbGraphics::ColorPalette::White,
const tbGraphics::Color outlineColor = tbGraphics::ColorPalette::Black,
const tbMath::Vector2 position = tbMath::Vector2::Zero() 
)
explicit

Constructs an OutlinedPolygonShape in the form of a box with the given parameters, position, width, height.

Parameters
widthThe width of the box, the units are in pixels unless projection/view matrix changed.
heightThe vertical size of the box, in pixel units unless projection/view matrix changed.
fillColorWhat color the box should be when rendered, can be changed later with SetColor(), defaults to White.
outlineColorWhat color the outline of the box should be when rendered, defaults to black.
positionThe position of the top-left corner of the box... TODO: TurtleBrains: Documentation: Check this fact, it may be different depending on anchor point.

◆ ~OutlinedBoxShape()

virtual TurtleBrains::Graphics::OutlinedBoxShape::~OutlinedBoxShape ( void  )
virtual

Destroys an outlined box object.