6 #include "LatLongAltitude.h"
17 typedef std::string TPolyChartId;
27 , m_topHeight(topHeight)
28 , m_bottomHeight(bottomHeight)
32 const v4& GetColor()
const {
return m_color; }
33 const float GetTopHeight()
const {
return m_topHeight; }
34 const float GetBottomHeight()
const {
return m_bottomHeight; }
45 const TPolyChartId&
id,
46 const std::vector<Space::LatLongAltitude>& exteriorRingVertices,
47 const v4& polygonColor)
49 , m_exteriorRingVertices(exteriorRingVertices)
50 , m_color(polygonColor)
51 , m_altitudeOffset(0.0f)
59 const v4& polygonColor);
66 const std::string m_id;
67 std::vector<Space::LatLongAltitude> m_exteriorRingVertices;
69 std::vector<PolyChartStackSegment> m_stackParts;
70 float m_altitudeOffset;
78 const TPolyChartId&
id,
79 const dv3& ecefCellCenter,
80 const std::vector<v3>& exteriorRingVerticesLocalEcef,
81 const std::vector<u16>& triangulationIndices,
82 const v4& polygonColor)
84 , m_ecefCellCenter(ecefCellCenter)
85 , m_exteriorRingVerticesLocalEcef(exteriorRingVerticesLocalEcef)
86 , m_triangulationIndices(triangulationIndices)
87 , m_color(polygonColor)
95 const std::string m_id;
97 std::vector<v3> m_exteriorRingVerticesLocalEcef;
98 std::vector<u16> m_triangulationIndices;
100 std::vector<PolyChartStackSegment> m_stackParts;
103 const float GetScale()
const {
return m_scale; }
104 void SetScale(
float scale) { m_scale = scale; }
106 const TPolyChartId& GetId()
const {
return m_id; }
107 const dv3& GetEcefCellCenter()
const {
return m_ecefCellCenter; }
109 const v4& GetColor()
const {
return m_color; }
111 const std::vector<dv3>& GetEcefTriangleVertices()
const {
return m_ecefTriangleVerts; }
112 const std::vector<dv3>& GetExteriorEcefVertices()
const {
return m_exteriorEcefVerts; }
114 const float GetHeight()
const;
115 const size_t GetNumberOfStacks()
const {
return m_stacks.size(); }
116 const PolyChartStackSegment& GetStackByIndex(
int index)
const {
return m_stacks.at(index); }
119 PolyChartModel() { };
123 std::vector<dv3> m_ecefTriangleVerts;
124 std::vector<dv3> m_exteriorEcefVerts;
125 std::vector<PolyChartStackSegment> m_stacks;
127 dv3 m_ecefCellCenter;