![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /****************************************************************************** 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 ******************************************************************************/ 00005 00007 #pragma once 00008 00009 #include <vrvGraphics/vrvGraphics.h> 00010 00011 namespace makVrv 00012 { 00013 class DtLineRenderer; 00014 class DtQuadRenderer; 00015 class DtTriangleRenderer; 00016 class DtTextRenderer; 00017 class DtOverlayResourceProvider; 00018 00023 class DT_DLL_VRVGRAPHICS DtOverlayRenderer 00024 { 00025 struct RenderInfo 00026 { 00027 unsigned int channelId; 00028 00029 }; 00030 00031 public: 00032 DtOverlayRenderer(DtOverlayResourceProvider& provider); 00033 ~DtOverlayRenderer(); 00034 00036 void render(bool geocentric, float geocentricAlpha, 00037 const double location[3], 00038 const double worldToWindow[16], 00039 double viewport[4]); 00040 00042 void releaseResources(); 00043 00044 void setProjectCameraIs3D(bool is3D); 00045 bool projectCameraIs3D() const; 00046 00047 DtOverlayResourceProvider& resourceProvider(); 00048 DtLineRenderer& lineRenderer() const; 00049 DtQuadRenderer& quadRenderer() const; 00050 DtTriangleRenderer& triangleRenderer() const; 00051 DtTextRenderer& textRenderer() const; 00052 00053 protected: 00054 00055 DtOverlayResourceProvider& myProvider; 00056 DtLineRenderer* myLines; 00057 DtQuadRenderer* myQuads; 00058 DtTriangleRenderer* myTriangles; 00059 DtTextRenderer* myText; 00060 bool myProjectCameraIs3D; 00061 }; 00062 }