5 #include "BuildingFootprints.h"
9 #include "CollisionVisualization.h"
10 #include "VectorMath.h"
11 #include "ICallback.h"
13 #include "BuildingFootprintSelectionModel.h"
22 namespace BuildingFootprints
39 typedef std::vector<BuildingFootprint> FootprintVector;
40 typedef BuildingFootprintSelectionModel::ModelId ModelId;
49 void OperateOnClosestGroup(
const dv3& pointEcef, Operation operation);
53 void Update(
float dt);
57 typedef std::map<ModelId, BuildingFootprintSelectionModel*> IdToModel;
58 typedef std::map<const BuildingFootprintSelectionModel*, BuildingFootprintSelectionView*> ModelToView;
62 bool IsSelected(
const ModelId& modelId)
const;
64 void SelectModel(
const ModelId& modelId,
const FootprintVector& footprints);
65 void DeselectModel(
const ModelId& modelId);
67 void RemoveAllModels();
68 void RemoveAllViews();
69 void PerformOperation(
const ModelId& modelId,
const FootprintVector& footprints, Operation operation);
72 IdToModel m_idToModel;
73 ModelToView m_modelToView;
81 float m_flashingPhase;
84 const float m_flashFrequency;
85 const float m_flashSaturateScale;
86 const float m_flashAlphaMin;
87 const float m_flashAlphaMax;