VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Friends
makVrv::DtTriangleRenderer Class Reference

The triangle renderer. More...

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

Public Types

enum  Styles { Style_Flat = 0, Style_Stippled, Styles_End }
 
- Public Types inherited from makVrv::DtPrimitiveRenderer
enum  RenderModes { RenderMode_VertexBufferObject = 1, RenderMode_SortedVertexBufferObject, RenderModes_End }
 
enum  OrderModes { OrderMode_None = 0, OrderMode_Queue, OrderMode_Group, OrderModes_end }
 

Public Member Functions

 DtTriangleRenderer (DtOverlayResourceProvider &resourceProvider)
 CTOR. More...
 
virtual ~DtTriangleRenderer ()
 Virtual DTOR. More...
 
virtual int numberOfPrimitives () const
 Get the number of Primitives. More...
 
virtual void render (bool geocentric, float geocentricAlpha, const double location[3], const double positionMatrix[16], const double projectionMatrix[16])
 Render the primitives. More...
 
virtual void releaseResources ()
 Release any rendering resources. More...
 
virtual bool isRenderModeSupported (int mode)
 Check to see if render mode is supported. More...
 
DtTriangleProxyallocateProxy (Styles=Style_Flat)
 Create a new Polygon proxy. More...
 
- Public Member Functions inherited from makVrv::DtPrimitiveRenderer
 DtPrimitiveRenderer (DtOverlayResourceProvider &provider)
 
virtual ~DtPrimitiveRenderer ()
 
void setRenderMode (int mode)
 
int renderMode () const
 
int numberOfRenderModes () const
 
void setOrderMode (int mode)
 set the order mode. More...
 
int orderMode () const
 get the order mode. More...
 
void addGroupRef (unsigned int group)
 
void removeGroupRef (unsigned int group)
 
unsigned int groupCount () const
 

Protected Types

typedef std::vector
< DtTriangleProxy * > 
TriangleProxyList
 

Protected Member Functions

void add (DtTriangleProxy *toAdd)
 Add the proxy to the renderer's internal list of proxies. More...
 
void remove (const DtTriangleProxy *const proxy, bool isBeingDeleted=false)
 Remove the proxy from the renderer's internal list of proxies. More...
 
void dirty (DtTriangleProxy *proxy)
 Flags the proxy as dirty and in need of an update. More...
 
void updateRenderData ()
 Updates the proxy's render data for all dirty proxies. More...
 

Protected Attributes

DtPrimitiveStylemyStyles [Styles_End]
 
TriangleProxyList myTriangles
 
TriangleProxyList myDirtyList
 
tbb::mutex myUpdateMutex
 
- Protected Attributes inherited from makVrv::DtPrimitiveRenderer
DtOverlayResourceProvidermyProvider
 
int myRenderMode
 
int myOrderMode
 
bool myForceUpdate
 

Friends

class DtTriangleProxy
 

Detailed Description

The triangle renderer.

Member Typedef Documentation

Member Enumeration Documentation

Enumerator
Style_Flat 
Style_Stippled 

Triangle without patterns.

Styles_End 

Triangle with stippled pattern.

Constructor & Destructor Documentation

makVrv::DtTriangleRenderer::DtTriangleRenderer ( DtOverlayResourceProvider resourceProvider)

CTOR.

virtual makVrv::DtTriangleRenderer::~DtTriangleRenderer ( )
virtual

Virtual DTOR.

Member Function Documentation

virtual int makVrv::DtTriangleRenderer::numberOfPrimitives ( ) const
virtual

Get the number of Primitives.

Implements makVrv::DtPrimitiveRenderer.

virtual void makVrv::DtTriangleRenderer::render ( bool  geocentric,
float  geocentricAlpha,
const double  location[3],
const double  positionMatrix[16],
const double  projectionMatrix[16] 
)
virtual

Render the primitives.

virtual void makVrv::DtTriangleRenderer::releaseResources ( )
virtual

Release any rendering resources.

Implements makVrv::DtPrimitiveRenderer.

virtual bool makVrv::DtTriangleRenderer::isRenderModeSupported ( int  mode)
virtual

Check to see if render mode is supported.

Implements makVrv::DtPrimitiveRenderer.

DtTriangleProxy* makVrv::DtTriangleRenderer::allocateProxy ( Styles  = Style_Flat)

Create a new Polygon proxy.

void makVrv::DtTriangleRenderer::add ( DtTriangleProxy toAdd)
protected

Add the proxy to the renderer's internal list of proxies.

void makVrv::DtTriangleRenderer::remove ( const DtTriangleProxy *const  proxy,
bool  isBeingDeleted = false 
)
protected

Remove the proxy from the renderer's internal list of proxies.

void makVrv::DtTriangleRenderer::dirty ( DtTriangleProxy proxy)
protected

Flags the proxy as dirty and in need of an update.

void makVrv::DtTriangleRenderer::updateRenderData ( )
protected

Updates the proxy's render data for all dirty proxies.

Friends And Related Function Documentation

friend class DtTriangleProxy
friend

Member Data Documentation

DtPrimitiveStyle* makVrv::DtTriangleRenderer::myStyles[Styles_End]
protected
TriangleProxyList makVrv::DtTriangleRenderer::myTriangles
protected
TriangleProxyList makVrv::DtTriangleRenderer::myDirtyList
protected
tbb::mutex makVrv::DtTriangleRenderer::myUpdateMutex
protected

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

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)