All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
PolylineShapeViewFactory.h
1 #pragma once
2 
3 #include "PolylineShapeArgs.h"
4 #include "Types.h"
5 #include "Rendering.h"
6 #include "VectorMath.h"
7 
8 
9 #include <vector>
10 
11 
12 namespace Eegeo
13 {
14  namespace Shapes
15  {
16  namespace Polylines
17  {
19  {
20  public:
22  PolylineRenderableFactory& polylineRenderableFactory,
23  const Rendering::VertexLayouts::VertexLayout& vertexLayout,
24  Rendering::GlBufferPool& glBufferPool);
25 
27 
28  PolylineShapeArgs::ShapeView* CreateView(const PolylineShapeArgs::ShapeModel& polyline);
29 
30  private:
31  PolylineRenderableFactory& m_polylineRenderableFactory;
32 
33  const Rendering::VertexLayouts::VertexLayout& m_vertexLayout;
34  Rendering::GlBufferPool& m_glBufferPool;
35 
36  Rendering::Mesh* CreateMesh(
37  const dv3& meshOriginEcef,
38  const std::vector<v3>& meshPoints,
39  const v4& color);
40 
41  };
42  }
43  }
44 }
45