VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtFlatPrimitiveStyle.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2011 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
14 
15 #include <vector>
16 
17 namespace makVrv
18 {
19 
20  class DtOverlayResourceProvider;
21 
25  {
26  public:
27 
30  unsigned int vertexCountPerPrimitve );
31 
33  virtual ~DtFlatPrimitiveStyle();
34 
36  virtual void add( unsigned int* index );
37 
39  virtual void remove( unsigned int index );
40 
42  virtual void render( int mode, unsigned int groupCount, bool geocentric,
43  float geocentricAlpha, const double cameraLocation[3],
44  const double positionMatrix[16],
45  const double projectionMatrix[16],
46  int offset);
47 
48 
51 
53  virtual void set3DVertexPosition( unsigned int index, unsigned int vertex,
54  float x, float y, float z, float w = 0 );
55 
57  virtual void set3DVertexQuadPositions(unsigned int index,
58  float x, float y, float z, float w);
59 
61  virtual void get3DVertexPosition( unsigned int index, unsigned int vertex,
62  float& x, float& y, float& z, float& w ) const;
63 
65  virtual void set2DVertexPosition( unsigned int index, unsigned int vertex,
66  float x, float y );
67 
69  virtual void get2DVertexPosition( unsigned int index, unsigned int vertex,
70  float& x, float& y ) const;
71 
73  virtual void set2DOffsetRotation( unsigned int index,
74  unsigned int vertIndex, float angle );
75 
77  virtual void get2DOffsetRotation( unsigned int index,
78  unsigned int vertIndex, float& angle ) const;
79 
81  virtual void setColor( unsigned int index, unsigned int vertIndex,
82  float r, float g, float b, float a );
83 
85  virtual void getColor( unsigned int index, unsigned int vertIndex,
86  float& r, float& g, float& b, float& a ) const;
87 
89  virtual void setUVCoordinates( unsigned int index,
90  unsigned int vertIndex, float u, float v );
91 
93  virtual void getUVCoordinates( unsigned int index,
94  unsigned int vertIndex, float& u, float& v ) const;
95 
97 
98 
101 
104  virtual void setFillParameters( unsigned int index, void* fill,
105  unsigned int fullStipplePattern[32] = 0 );
106 
109  virtual void getFillParameters( unsigned int index, void*& fill,
110  unsigned int fullStipplePattern[32] = 0 ) const;
111 
114  virtual void setGroup( unsigned int index, float zFactor );
115 
118  virtual float group( unsigned int index ) const;
119 
121 
122  protected:
123 
125  virtual float* vertexData() const;
126 
128  virtual unsigned int vertexDataSize() const;
129 
130  protected:
131 
132  typedef std::vector<DtOffsetColoredVertex> QuadVertexList;
136 
137  };
138 
139 }
DtOverlayResourceProvider & myResourceProvider
Definition: DtFlatPrimitiveStyle.h:133
The abstract base class for the various primitive styles.
Definition: DtPrimitiveStyle.h:21
DtProjected2DFlatEffect * myEffect
Definition: DtFlatPrimitiveStyle.h:135
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])
Contains the makVrv::DtFlat2DRenderer class declaration.
A style for rendering a 2D quad with only a flat color.
Definition: DtFlatPrimitiveStyle.h:24
std::vector< DtOffsetColoredVertex > QuadVertexList
Definition: DtFlatPrimitiveStyle.h:132
const char int mode
Definition: ioapi.h:38
QuadVertexList myVertices
Definition: DtFlatPrimitiveStyle.h:134
An effect for rendering 2D flat colored quads.
Definition: DtProjected2DFlatEffect.h:19
voidpf uLong offset
Definition: ioapi.h:42
Contains the makVrv::DtPrimitiveStyle class declaration.

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)