VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtPrimitiveStyle.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 
13 
14 namespace makVrv
15 {
16 
17  class DtBufferObject;
18 
22  {
23  public:
24 
26  DtPrimitiveStyle( unsigned int vertexCountPerPrimitive );
27 
29  virtual ~DtPrimitiveStyle();
30 
32  virtual void releaseResources();
33 
35  int numberOfPrimitives() const;
36 
38  virtual void add( unsigned int* indexToUpdate );
39 
41  virtual void remove( unsigned int index );
42 
44  virtual void render( int mode, unsigned int groupCount, bool geocentric,
45  float geocentricAlpha, const double cameraLocation[3],
46  const double positionMatrix[16],
47  const double projectionMatrix[16],
48  int offset) = 0;
49 
51  virtual void update( int renderMode );
52 
53 
56 
58  virtual void set3DVertexPosition( unsigned int index, unsigned int vertIndex,
59  float x, float y, float z, float w ) = 0;
60 
62  virtual void get3DVertexPosition( unsigned int index, unsigned int vertex,
63  float& x, float& y, float& z, float& w ) const = 0;
64 
66  virtual void set2DVertexPosition( unsigned int index, unsigned int vertIndex,
67  float x, float y ) = 0;
68 
70  virtual void get2DVertexPosition( unsigned int index, unsigned int vertIndex,
71  float& x, float& y ) const = 0;
72 
74  virtual void set2DOffsetRotation( unsigned int index, unsigned int vertIndex, float angle ) = 0;
75 
77  virtual void get2DOffsetRotation( unsigned int index, unsigned int vertIndex, float& angle ) const = 0;
78 
80  virtual void setColor( unsigned int index, unsigned int vertIndex, float r, float g, float b, float a ) = 0;
81 
83  virtual void getColor( unsigned int index, unsigned int vertIndex, float& r, float& g, float& b, float& a ) const = 0;
84 
86  virtual void setUVCoordinates( unsigned int index, unsigned int vertIndex, float u, float v ) = 0;
87 
89  virtual void getUVCoordinates( unsigned int index, unsigned int vertIndex, float& u, float& v ) const = 0;
90 
92 
93 
96 
99  virtual void setFillParameters( unsigned int index, void* fill,
100  unsigned int fullStipplePattern[32] = 0 ) = 0;
101 
104  virtual void getFillParameters( unsigned int index, void*& fill,
105  unsigned int fullStipplePattern[32] = 0 ) const = 0;
106 
109  virtual void setGroup( unsigned int index, float zFactor ) = 0;
110 
113  virtual float group( unsigned int index ) const = 0;
114 
116 
117 
119  virtual float* vertexData() const = 0;
120 
122  virtual unsigned int vertexDataSize() const = 0;
123 
125  unsigned int vertexCount() const;
126 
127  protected:
128 
130 
131  unsigned int myVertexCount;
132 
133  typedef std::vector<unsigned int*> IndexList;
135 
136  };
137 
138 }

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)