PixelLightAPI  .
Public Types | Public Member Functions | Protected Member Functions
PLScene::SNLineBox Class Reference

Line box scene node. More...

#include <SNLineBox.h>

Inheritance diagram for PLScene::SNLineBox:
Inheritance graph
[legend]

List of all members.

Public Types

enum  EFlags { No3DPosition = 1<<10, NoDepthTest = 1<<11 }
 Scene node flags (SceneNode flags extension) More...

Public Member Functions

PLS_API const PLMath::Vector3GetEndPosition () const
PLS_API void SetEndPosition (const PLMath::Vector3 &vValue)
PLS_API SNLineBox ()
 Default constructor.
virtual PLS_API ~SNLineBox ()
 Destructor.
virtual PLS_API void DrawSolid (PLRenderer::Renderer &cRenderer, const VisNode *pVisNode=nullptr) override
 This function is called when the solid parts of the scene are drawn.
virtual PLS_API void DrawTransparent (PLRenderer::Renderer &cRenderer, const VisNode *pVisNode=nullptr) override
 This function is called when the transparent parts of the scene are drawn.

Protected Member Functions

virtual PLS_API void UpdateAABoundingBox () override
 Updates the axis align bounding box in 'scene node space'.

Detailed Description

Line box scene node.


Member Enumeration Documentation

Scene node flags (SceneNode flags extension)

Enumerator:
No3DPosition 

The line box is not placed within 3D. If this flag is set, the node position is in 'screen space' between 0.0 and 1.0.

NoDepthTest 

Do not perform a depth test

Reimplemented from PLScene::SceneNode.


Constructor & Destructor Documentation

Default constructor.

virtual PLS_API PLScene::SNLineBox::~SNLineBox ( ) [virtual]

Destructor.


Member Function Documentation

PLS_API void PLScene::SNLineBox::SetEndPosition ( const PLMath::Vector3 vValue)
virtual PLS_API void PLScene::SNLineBox::DrawSolid ( PLRenderer::Renderer cRenderer,
const VisNode pVisNode = nullptr 
) [override, virtual]

This function is called when the solid parts of the scene are drawn.

Parameters:
[in]cRendererThe used renderer
[in]pVisNodeThe current visibility node of this scene node, can be a null pointer
Note:
  • The default implementation only emits the SignalDrawSolid signal
See also:

Reimplemented from PLScene::SceneNode.

virtual PLS_API void PLScene::SNLineBox::DrawTransparent ( PLRenderer::Renderer cRenderer,
const VisNode pVisNode = nullptr 
) [override, virtual]

This function is called when the transparent parts of the scene are drawn.

Parameters:
[in]cRendererThe used renderer
[in]pVisNodeThe current visibility node of this scene node, can be a null pointer
Note:
  • The default implementation only emits the SignalDrawTransparent signal
See also:

Reimplemented from PLScene::SceneNode.

virtual PLS_API void PLScene::SNLineBox::UpdateAABoundingBox ( ) [override, protected, virtual]

Updates the axis align bounding box in 'scene node space'.

Remarks:
This function is called when the axis align bounding box needs to be calculated. One can overwrite the default implementation to calculate the axis align bounding box in another way. The default implementation is empty. (current set axis align bounding box is still used)
Note:
  • We recommend to use 'SetAABoundingBox()' inside your own implementation to set the new axis align bounding box, this function will take care of all other required updates

Reimplemented from PLScene::SceneNode.


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


PixelLight PixelLight 0.9.11-R1
Copyright (C) 2002-2012 by The PixelLight Team
Last modified Thu Feb 23 2012 14:09:41
The content of this PixelLight document is published under the
Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported