18 #include <tbb/mutex.h>
25 class DtPrimitiveStyle;
26 class DtOverlayResourceProvider;
60 virtual int numberOfPrimitives()
const;
63 virtual void render(
bool geocentric,
float geocentricAlpha,
64 const double location[3],
double cameraAltitude
65 ,
const double positionMatrix[16]
66 ,
const double projectionMatrix[16]);
69 virtual void releaseResources();
72 virtual bool isRenderModeSupported(
int mode );
86 void remove(
const DtQuadProxy*
const proxy,
bool isBeingDeleted = false );
96 bool myStyleDirty[Styles_End];
120 void setGroup(
float order );
126 void set3DPosition(
int index,
float x,
float y,
float z,
float w);
129 void set3DPosition(
float x,
float y,
float z,
float w = 0 );
132 void get3DPosition(
float& x,
float& y,
float& z,
float& w )
const;
135 void set2DRotation(
float angle );
138 void get2DRotation(
float&
angle )
const;
141 void setPoints(
const float points[8] );
144 void getPoints(
float points[8])
const;
148 void setPointsByMinimumAltitude(
const float points[8],
double altitude);
156 void setIsForcedPointsByAltitudeEnabled(
bool isEnabled);
161 void setAltitudeForForcedPoints(
double minimumAltitudeForUse);
164 void clearAltitudeSpecificConfigurations();
167 void setBounds(
const float bounds[4] );
170 void getBounds(
float bounds[4] )
const;
173 void setStyle(
int style );
179 void setColor(
float r,
float g,
float b,
float a );
182 void getColor(
float& r,
float& g,
float& b,
float& a )
const;
185 void setStippleParameters(
unsigned int fill,
186 unsigned int fullStipplePattern[32] = 0 );
189 void setTextureParameters(
void* textureHangle,
190 float left = 0.0f,
float right = 1.0f,
191 float bottom = 0.0f,
float top = 1.0f );
194 void* textureHandle()
const;
197 unsigned int index()
const;
200 void setIndex(
unsigned int index );
205 void setLodOutAltitude(
double lodOutAltitude);
208 double lodOutAltitude()
const;
212 void setIsLodOutAltitudeEnabled(
bool isLodOutAltitudeEnabled);
215 bool isLodOutAltitudeEnabled()
const;
225 static void getBoundsFromPoints(
float bounds[4],
const float points[8]);
228 bool hasAltitudeSpecificPoints()
const;
231 void updatePointsBasedOnAltitude(
double cameraAltitude);
253 : myAltitude(altitude)
255 memcpy(myPoints, points,
sizeof(
float) * 8);
const char * creatorTypeName< DtQuadRenderer >(void)
template specialization for the creator (pass the class being created to the creatorTypeName template...
Definition: DtQuadRenderer.h:36
friend DtQuadRendererCreator
Definition: DtQuadRenderer.h:53
QuadProxyList myQuads
Definition: DtQuadRenderer.h:97
DtVirtualBaseClassCreator< DtQuadRenderer, DtOverlayResourceProvider & > DtQuadRendererCreator
creator
Definition: DtQuadRenderer.h:29
double myAltitudeToUseForForcedPoints
Definition: DtQuadRenderer.h:267
double myLodOutAltitude
Definition: DtQuadRenderer.h:269
The abstract base class for the various primitive styles.
Definition: DtPrimitiveStyle.h:21
double myAltitude
Definition: DtQuadRenderer.h:258
Stippled line effect.
Definition: DtQuadRenderer.h:48
DtAltitudeSpecificConfiguration(double altitude, const float points[8])
Definition: DtQuadRenderer.h:252
A class which allocates and draws quads.
Definition: DtQuadRenderer.h:40
Styles
Definition: DtQuadRenderer.h:44
Variadic templated creator class for defining a DtVirtualBaseClass creator that is automatically regi...
Definition: DtVirtualBaseClassCreator.h:22
The overlay resource provider class provies resources for overlay drawing classes.
Definition: DtOverlayResourceProvider.h:23
#define DT_DLL_VRVGRAPHICS
Contains DLL export macros.
Definition: vrvGraphics.h:19
DT_DLL_vrfutil double angle(double vec1[3], double vec2[3])
Abstract primitive rendering base class.
Definition: DtPrimitiveRenderer.h:19
tbb::mutex myUpdateMutex
Definition: DtQuadRenderer.h:99
A class containing altitude-specific properties for the quad proxy.
Definition: DtQuadRenderer.h:247
A flyweight class for controlling a single quad owned by the DtQuadRenderer. None of this class's mem...
Definition: DtQuadRenderer.h:111
Single textured effect.
Definition: DtQuadRenderer.h:49
bool myIsForcedPointsByMinimumAltitudeEnabled
Definition: DtQuadRenderer.h:266
DtQuadRenderer * myParent
Definition: DtQuadRenderer.h:242
const char int mode
Definition: ioapi.h:38
unsigned int myIndex
Definition: DtQuadRenderer.h:243
unsigned char myStyle
Definition: DtQuadRenderer.h:244
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
bool myIsLodOutAltitudeEnabled
Definition: DtQuadRenderer.h:270
std::vector< DtQuadProxy * > QuadProxyList
Definition: DtQuadRenderer.h:93
DtMinimumAltitudeToPointsVector myAltitudeToPointsMap
Definition: DtQuadRenderer.h:264
std::vector< DtAltitudeSpecificConfiguration > DtMinimumAltitudeToPointsVector
Definition: DtQuadRenderer.h:262
The style contains no line effects.
Definition: DtQuadRenderer.h:47