CrystalSpace

Public API Reference

iView Struct Reference

The iView class encapsulates the top-level Crystal Space renderer interface. More...

#include <ivaria/view.h>

Inheritance diagram for iView:

List of all members.

Public Member Functions

virtual void AddViewVertex (int x, int y)=0
 Add a vertex to clipping polygon (non-rectangular clipping).
virtual void ClearView ()=0
 Clear clipper in order to start building a polygon-based clipper.
virtual void Draw (iMeshWrapper *mesh=0)=0
 Draw 3D world as seen from the camera.
virtual iCameraGetCamera ()=0
 Get current camera.
virtual iClipper2DGetClipper ()=0
 Return the current clipper. This function may call UpdateClipper ().
virtual iGraphics3DGetContext ()=0
 Get Context.
virtual iEngineGetEngine ()=0
 Get engine handle.
virtual void RestrictClipperToScreen ()=0
 Clip the view clipper to the screen boundaries.
virtual void SetAutoResize (bool state)=0
 Enable / Disable automatic resizing.
virtual void SetCamera (iCamera *c)=0
 Set current camera.
virtual void SetContext (iGraphics3D *ig3d)=0
 Set Context.
virtual void SetEngine (iEngine *e)=0
 Set engine handle.
virtual void SetRectangle (int x, int y, int w, int h)=0
 Set clipping rectangle.
virtual void UpdateClipper ()=0
 Update the Clipper. This is usually called from Draw.

Detailed Description

The iView class encapsulates the top-level Crystal Space renderer interface.

It is basically a camera and a clipper.

Main creators of instances implementing this interface:

Main ways to get pointers to this interface:

Main users of this interface:

Definition at line 49 of file view.h.


Member Function Documentation

virtual void iView::AddViewVertex ( int  x,
int  y 
) [pure virtual]

Add a vertex to clipping polygon (non-rectangular clipping).

virtual void iView::ClearView (  )  [pure virtual]

Clear clipper in order to start building a polygon-based clipper.

virtual void iView::Draw ( iMeshWrapper mesh = 0  )  [pure virtual]

Draw 3D world as seen from the camera.

If a mesh is given then only that single mesh is rendered. Note that in that case the mesh will only be rendered if it is in the same sector as the camera!

virtual iCamera* iView::GetCamera (  )  [pure virtual]

Get current camera.

virtual iClipper2D* iView::GetClipper (  )  [pure virtual]

Return the current clipper. This function may call UpdateClipper ().

virtual iGraphics3D* iView::GetContext (  )  [pure virtual]

Get Context.

virtual iEngine* iView::GetEngine (  )  [pure virtual]

Get engine handle.

virtual void iView::RestrictClipperToScreen (  )  [pure virtual]

Clip the view clipper to the screen boundaries.

virtual void iView::SetAutoResize ( bool  state  )  [pure virtual]

Enable / Disable automatic resizing.

When this is true (default) then the view will detect automatically when the window size changes and adapt the view and camera automatically (i.e. it will change the view rectangle and perspective center). If you don't want that then you can disable this.

virtual void iView::SetCamera ( iCamera c  )  [pure virtual]

Set current camera.

virtual void iView::SetContext ( iGraphics3D ig3d  )  [pure virtual]

Set Context.

virtual void iView::SetEngine ( iEngine e  )  [pure virtual]

Set engine handle.

virtual void iView::SetRectangle ( int  x,
int  y,
int  w,
int  h 
) [pure virtual]

Set clipping rectangle.

Remarks:
The coordinates are vertically mirrored in comparison to screen space, i.e. y=0 is at the bottom of the viewport, y=GetHeight() at the top.
virtual void iView::UpdateClipper (  )  [pure virtual]

Update the Clipper. This is usually called from Draw.


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

Generated for Crystal Space 1.4.1 by doxygen 1.7.1