VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties 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],
45  const double positionMatrix[16],
46  const double projectionMatrix[16],
47  int offset);
48 
50  virtual void update( int renderMode );
51 
52 
55 
57  virtual void set3DVertexPosition( unsigned int index, unsigned int vertex,
58  float x, float y, float z, float w = 0 );
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 
133  {
134  unsigned int* indexPtr;
135  unsigned int quadStipple[32];
136  };
137 
139  {
140  unsigned int key[32];
141  bool operator<(const StipplePattern& b) const;
142  };
143 
144  typedef std::vector<DtOffsetColoredVertex> VertexList;
145  typedef std::vector<StippledPrimitiveInfo> StippledPrimitiveInfoList;
146  typedef std::map< StipplePattern, std::vector<unsigned int> > StippleIndexMap;
147 
152 
154 
155  };
156 
157 }

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)