VR-Forces 4.0.4 Class Documentation
Classes | Public Member Functions | Static Public Attributes | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | Friends
makVrv::DtLineRenderer Class Reference

A class responsible for rendering lines. More...

Inheritance diagram for makVrv::DtLineRenderer:
Inheritance graph
[legend]

List of all members.

Classes

struct  LineSegmentPrimitive
struct  LineSegmentSets

Public Member Functions

 DtLineRenderer (DtOverlayResourceProvider &provider)
virtual ~DtLineRenderer ()
virtual int numberOfPrimitives () const
 Get the number of Primitives.
virtual void render (bool geocentric, float geocentricAlpha, const double cameraLocation[3], const double positionMatrix[16], bool picking)
 Render the primitives.
virtual void releaseResources ()
 Release any rendering resources.
virtual bool isRenderModeSupported (int mode)
 Check to see if render mode is supported.
DtLineSegmentProxyallocateNewSegment ()
 Allocate a new segment and a proxy object to control it.

Static Public Attributes

static const unsigned short NoStipple = 0xFFFF
static const unsigned short NoLine = 0x0

Protected Member Functions

void dirty (DtLineSegmentProxy *)
void deallocateProxy (const DtLineSegmentProxy &)
int moveSegmentToOtherList (const float currentWidth, const int currentSegmentIndex, const int currentPrimativeIndex, const float desiredWidth, const int desiredSegmentIndex)

Private Types

typedef std::vector
< LineSegmentPrimitive
LineSegments
typedef std::vector
< DtLineSegmentProxy * > 
LineSegmentProxyList
typedef boost::unordered_map
< float, LineSegmentSets
LineMap

Private Member Functions

void renderUsingVertexArrays (DtFlat2DLineRenderer &renderer)
void renderStippledLineArrays (DtFlat2DLineRenderer &renderer, DtLineVertex *ptr, LineSegments &segments)
void updateRenderData ()
void sortByStipple ()

Private Attributes

LineMap myLines
DtProjected2DLineEffectmyEffect
LineSegmentProxyList myDirtyList
DtBufferObjectmyBufferObject
unsigned int myPrimativeCount

Friends

class DtLineSegmentProxy

Detailed Description

A class responsible for rendering lines.


Member Typedef Documentation

typedef boost::unordered_map<float,LineSegmentSets> makVrv::DtLineRenderer::LineMap [private]

Constructor & Destructor Documentation


Member Function Documentation

virtual int makVrv::DtLineRenderer::numberOfPrimitives ( ) const [virtual]

Get the number of Primitives.

Implements makVrv::DtPrimitiveRenderer.

virtual void makVrv::DtLineRenderer::render ( bool  geocentric,
float  geocentricAlpha,
const double  cameraLocation[3],
const double  positionMatrix[16],
bool  picking 
) [virtual]

Render the primitives.

virtual void makVrv::DtLineRenderer::releaseResources ( ) [virtual]

Release any rendering resources.

Implements makVrv::DtPrimitiveRenderer.

virtual bool makVrv::DtLineRenderer::isRenderModeSupported ( int  mode) [virtual]

Check to see if render mode is supported.

Implements makVrv::DtPrimitiveRenderer.

Allocate a new segment and a proxy object to control it.

int makVrv::DtLineRenderer::moveSegmentToOtherList ( const float  currentWidth,
const int  currentSegmentIndex,
const int  currentPrimativeIndex,
const float  desiredWidth,
const int  desiredSegmentIndex 
) [protected]
void makVrv::DtLineRenderer::renderStippledLineArrays ( DtFlat2DLineRenderer renderer,
DtLineVertex ptr,
LineSegments segments 
) [private]

Friends And Related Function Documentation

friend class DtLineSegmentProxy [friend]

Member Data Documentation

const unsigned short makVrv::DtLineRenderer::NoStipple = 0xFFFF [static]
const unsigned short makVrv::DtLineRenderer::NoLine = 0x0 [static]

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

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)