VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtStippledPrimitiveStyle.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 #include <map>
17 
18 namespace makVrv
19 {
20 
21  class DtOverlayResourceProvider;
22 
26  {
27  public:
28 
31  unsigned int vertexCount );
32 
34  virtual ~DtStippledPrimitiveStyle();
35 
37  virtual void add( unsigned int* );
38 
40  virtual void remove( unsigned int index );
41 
43  virtual void render( int mode, unsigned int groupCount, bool geocentric,
44  float geocentricAlpha, const double cameraLocation[3] = 0,
45  const double positionMatrix[16] = 0, int offset = 0 );
46 
48  virtual void update( int renderMode );
49 
50 
53 
55  virtual void set3DVertexPosition( unsigned int index, unsigned int vertex,
56  float x, float y, float z, float w = 0 );
57 
59  virtual void get3DVertexPosition( unsigned int index, unsigned int vertex,
60  float& x, float& y, float& z, float& w ) const;
61 
63  virtual void set2DVertexPosition( unsigned int index, unsigned int vertex,
64  float x, float y );
65 
67  virtual void get2DVertexPosition( unsigned int index, unsigned int vertex,
68  float& x, float& y ) const;
69 
71  virtual void set2DOffsetRotation( unsigned int index,
72  unsigned int vertIndex, float angle );
73 
75  virtual void get2DOffsetRotation( unsigned int index,
76  unsigned int vertIndex, float& angle ) const;
77 
79  virtual void setColor( unsigned int index, unsigned int vertIndex,
80  float r, float g, float b, float a );
81 
83  virtual void getColor( unsigned int index, unsigned int vertIndex,
84  float& r, float& g, float& b, float& a ) const;
85 
87  virtual void setUVCoordinates( unsigned int index,
88  unsigned int vertIndex, float u, float v );
89 
91  virtual void getUVCoordinates( unsigned int index,
92  unsigned int vertIndex, float& u, float& v ) const;
93 
95 
96 
99 
102  virtual void setFillParameters( unsigned int index, void* fill,
103  unsigned int fullStipplePattern[32] = 0 );
104 
107  virtual void getFillParameters( unsigned int index, void*& fill,
108  unsigned int fullStipplePattern[32] = 0 ) const;
109 
112  virtual void setGroup( unsigned int index, float zFactor );
113 
116  virtual float group( unsigned int index ) const;
117 
119 
120  protected:
121 
123  virtual float* vertexData() const;
124 
126  virtual unsigned int vertexDataSize() const;
127 
128  protected:
129 
131  {
132  unsigned int* indexPtr;
133  unsigned int quadStipple[32];
134  };
135 
137  {
138  unsigned int key[32];
139  bool operator<(const StipplePattern& b) const;
140  };
141 
142  typedef std::vector<DtOffsetColoredVertex> VertexList;
143  typedef std::vector<StippledPrimitiveInfo> StippledPrimitiveInfoList;
144  typedef std::map< StipplePattern, std::vector<unsigned int> > StippleIndexMap;
145 
150 
152 
153  };
154 
155 }

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)