All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
HeatmapShapeCreateParams.h
1 #pragma once
2 
3 #include "HeatmapShapes.h"
4 #include "ShapeCreateParamsBase.h"
5 #include "WeightedLatLongAltitude.h"
6 
7 
8 namespace Eegeo
9 {
10  namespace Shapes
11  {
12  namespace Heatmaps
13  {
15  {
16  public:
18 
20  Eegeo::Positioning::ElevationMode::Type elevationMode,
21  double elevation,
22  const Eegeo::Resources::Interiors::InteriorId& indoorMapId,
23  int indoorMapFloorId,
24  const std::vector<Space::LatLongAltitude>& polygonVertexCoords,
25  const std::vector<int>& polygonRingVertexCounts,
26  const std::vector<Eegeo::Space::WeightedLatLongAltitude>& weightedPoints,
27  double weightMin,
28  double weightMax,
29  const v2& textureDimensions,
30  float textureBorderPercent,
31  const std::vector<float>& heatmapDensityStops,
32  const std::vector<double>& heatmapRadiiMeters,
33  const std::vector<double>& heatmapGains,
34  bool useApproximation,
35  float densityBlend,
36  bool interpolateDensityByZoom,
37  double zoomMin,
38  double zoomMax,
39  float opacity,
40  float intensityBias,
41  float intensityScale,
42  u32 occludedStencilMapLayerMask,
43  float occludedAlpha,
44  float occludedSaturation,
45  float occludedBrightness,
46  const std::vector<float>& gradientStops,
47  const std::vector<v4>& gradientColors
48  );
49 
50  const std::vector<Space::LatLongAltitude>& GetPolygonVertexCoords() const { return m_polygonVertexCoords; }
51  const std::vector<int>& GetPolygonRingVertexCounts() const { return m_polygonRingVertexCounts; }
52  const std::vector<Eegeo::Space::WeightedLatLongAltitude>& GetWeightedPoints() const { return m_weightedPoints; }
53  double GetWeightMin() const { return m_weightMin; }
54  double GetWeightMax() const { return m_weightMax; }
55  const v2& GetTextureDimensions() const { return m_textureDimensions; }
56  float GetTextureBorderPercent() const { return m_textureBorderPercent; }
57  const std::vector<float>& GetHeatmapDensityStops() const { return m_heatmapDensityStops; }
58  const std::vector<double>& GetHeatmapRadiiMeters() const { return m_heatmapRadiiMeters; }
59  const std::vector<double>& GetHeatmapGains() const { return m_heatmapGains; }
60  bool GetUseApproximation() const { return m_useApproximation; }
61  float GetDensityBlend() const { return m_densityBlend; }
62  bool GetInterpolateDensityByZoom() const { return m_interpolateDensityByZoom; }
63  double GetZoomMin() const { return m_zoomMin; }
64  double GetZoomMax() const { return m_zoomMax; }
65  float GetOpacity() const { return m_opacity; }
66  float GetIntensityBias() const { return m_intensityBias; }
67  float GetIntensityScale() const { return m_intensityScale; }
68  u32 GetOccludedStencilMapLayerMask() const { return m_occludedStencilMapLayerMask; }
69  float GetOccludedAlpha() const { return m_occludedAlpha; };
70  float GetOccludedSaturation() const { return m_occludedSaturation; }
71  float GetOccludedBrightness() const { return m_occludedBrightness; }
72  const std::vector<float>& GetGradientStops() const { return m_gradientStops; }
73  const std::vector<v4>& GetGradientColors() const { return m_gradientColors; }
74 
75  private:
76  std::vector<Space::LatLongAltitude> m_polygonVertexCoords;
77  std::vector<int> m_polygonRingVertexCounts;
78  std::vector<Eegeo::Space::WeightedLatLongAltitude> m_weightedPoints;
79  double m_weightMin;
80  double m_weightMax;
81  v2 m_textureDimensions;
82  float m_textureBorderPercent;
83  std::vector<float> m_heatmapDensityStops;
84  std::vector<double> m_heatmapRadiiMeters;
85  std::vector<double> m_heatmapGains;
86  bool m_useApproximation;
87  float m_densityBlend;
88  bool m_interpolateDensityByZoom;
89  double m_zoomMin;
90  double m_zoomMax;
91  float m_opacity;
92  float m_intensityBias;
93  float m_intensityScale;
94  u32 m_occludedStencilMapLayerMask;
95  float m_occludedAlpha;
96  float m_occludedSaturation;
97  float m_occludedBrightness;
98  const std::vector<float> m_gradientStops;
99  const std::vector<v4> m_gradientColors;
100  };
101 
102  }
103  }
104 }