igraphic 0.2.0
Contrats graphiques chargeables : IGraphic2Module / IGraphic3Module
Loading...
Searching...
No Matches
graphic::IWindow3 Interface Referenceabstract

A window that can also draw 3D. Extends IWindow2, so anything that only needs 2D can keep using it as an IWindow2 - a 3D vendor's window still draws sprites/text/polygons the same way. More...

#include <IWindow3.hpp>

Inheritance diagram for graphic::IWindow3:
Collaboration diagram for graphic::IWindow3:

Public Member Functions

virtual ~IWindow3 ()=default
 
virtual void beginMode3 (ICamera *camera)=0
 allowing to draw 3D on the window
 
virtual void drawModel (IModel *model)=0
 draw a model
 
virtual void drawText3D (IText *text, Vector3f position)=0
 draw text at a 3D world position - the same IText used by drawText(), just projected through the active camera instead of drawn at a screen-space position.
 
virtual void endMode3 ()=0
 end the 3D drawing
 
- Public Member Functions inherited from graphic::IWindow2
virtual ~IWindow2 ()=default
 
virtual void beginDraw ()=0
 allowing to draw 2D on the window
 
virtual void drawPoly (IPolygon *polygon)=0
 draw a polygon
 
virtual void drawSprite (ISprite *sprite)=0
 draw a sprite
 
virtual void drawText (IText *text)=0
 draw a text
 
virtual void endDraw ()=0
 end the 2D drawing
 
- Public Member Functions inherited from graphic::IWindow
virtual ~IWindow ()=default
 Destroy the IWindow object.
 
virtual bool isOpen ()=0
 notice if the window is open
 
virtual void close ()=0
 close the window
 
virtual Vector2f getPosition ()=0
 Where the window sits on the desktop, in pixels, origin top-left of the primary screen.
 
virtual void setPosition (Vector2f position)=0
 Move the window on the desktop.
 
virtual Vector2f getSize ()=0
 The drawable area, in pixels - NOT the desktop size. A hit-test built on IMouse::getPosition() compares against this one.
 
virtual void setSize (Vector2f size)=0
 Resize the drawable area.
 
virtual void setFrameLimit (int32_t limit)=0
 Set the Frame Limit object.
 
virtual void setMouseVisibility (bool visible)=0
 Show or hide the system cursor over THIS window.
 
virtual int32_t getDelta ()=0
 Get the Delta object.
 
virtual bool pollEvent ()=0
 Drains the whole native queue for this frame and refreshes device state. This is the frame's event pump.
 
virtual void eventClose ()=0
 notice the window that a close was requested
 

Detailed Description

A window that can also draw 3D. Extends IWindow2, so anything that only needs 2D can keep using it as an IWindow2 - a 3D vendor's window still draws sprites/text/polygons the same way.

Constructor & Destructor Documentation

◆ ~IWindow3()

virtual graphic::IWindow3::~IWindow3 ( )
virtualdefault

Member Function Documentation

◆ beginMode3()

virtual void graphic::IWindow3::beginMode3 ( ICamera camera)
pure virtual

allowing to draw 3D on the window

Parameters
camera

◆ drawModel()

virtual void graphic::IWindow3::drawModel ( IModel model)
pure virtual

draw a model

Parameters
model

◆ drawText3D()

virtual void graphic::IWindow3::drawText3D ( IText text,
Vector3f  position 
)
pure virtual

draw text at a 3D world position - the same IText used by drawText(), just projected through the active camera instead of drawn at a screen-space position.

Parameters
text
position

◆ endMode3()

virtual void graphic::IWindow3::endMode3 ( )
pure virtual

end the 3D drawing


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