Gamedev Framework (gf)  0.1.0
A C++11 framework for 2D games
Public Member Functions | List of all members
gf::AdaptativeView Class Referenceabstract

Adaptative view. More...

#include <gf/View.h>

Inheritance diagram for gf::AdaptativeView:
Inheritance graph
[legend]

Public Member Functions

virtual void onScreenResize (Vector2u screenSize)=0
 Callback when the screen has just been resized. More...
 
- Public Member Functions inherited from gf::View
 View ()
 Default constructor. More...
 
 View (const RectF &rect)
 Construct the view from a rectangle. More...
 
 View (Vector2f center, Vector2f size)
 Construct the view from its center and size. More...
 
virtual ~View ()
 Destructor. More...
 
void setCenter (Vector2f center)
 Set the center of the view. More...
 
Vector2f getCenter () const
 Get the center of the view. More...
 
void setSize (Vector2f size)
 Set the size of the view. More...
 
Vector2f getSize () const
 Get the size of the view. More...
 
void setRotation (float rotation)
 Set the orientation of the view. More...
 
float getRotation () const
 Get the current orientation of the view. More...
 
void setViewport (const RectF &viewport)
 Set the target viewport. More...
 
const RectFgetViewport () const
 Get the target viewport rectangle of the view. More...
 
void reset (const RectF &rect)
 Reset the view to the given rectangle. More...
 
void move (Vector2f offset)
 Move the view relatively to its current position. More...
 
void rotate (float angle)
 Rotate the view relatively to its current orientation. More...
 
void zoom (float factor)
 Resize the view rectangle relatively to its current size. More...
 
Matrix3f getTransform () const
 Get the projection transform of the view. More...
 
Matrix3f getInverseTransform () const
 Get the inverse projection transform of the view. More...
 

Additional Inherited Members

- Protected Member Functions inherited from gf::View
void setWorldSize (Vector2f size)
 Set the world size, without calling onWorldResize() More...
 
virtual void onWorldResize (Vector2f worldSize)
 Callback when the world has just been resized. More...
 

Detailed Description

Adaptative view.

An adaptative view is a view that adapts automatically to screen resolution change.

There are several kinds of adaptative views, according to the policy that is adopted when the resolution changes. In the examples below, The screen is represented by the black rectangle and the world is the red square. If red dashed lines appears, it means that the world has been modified.

Class Example
gf::StretchView
stretchview.png
gf::FitView
fitview.png
gf::FillView
fillview.png
gf::ExtendView
extendview.png
gf::ScreenView
screenview.png
See also
gf::ViewContainer

Member Function Documentation

virtual void gf::AdaptativeView::onScreenResize ( Vector2u  screenSize)
pure virtual

Callback when the screen has just been resized.

Parameters
screenSizeThe new size of the screen

Implemented in gf::ScreenView, gf::ExtendView, gf::FillView, gf::FitView, and gf::StretchView.