18 #include <osgEarthAerodromes/AerodromeCatalog>
19 #include <osgEarthAerodromes/AerodromeFactory>
21 #include <unordered_map>
23 #include <OpenThreads/Mutex>
27 class DtRunwayDesignatorNode;
28 class DtRunwayMarkingNode;
29 class DtTextureAtlasIndexParser;
30 class DtTaxiwaySignSignaler;
31 class DtRunwaySignaler;
32 class DtLightIndicatorSignaler;
42 , centerlineStartOffset_ft(0.0f)
43 , hasCenterline(false)
44 , myFowardVector(osg::Vec3(1, 0, 0))
45 , myThreshold(osg::Vec3(0, 0, 0))
46 , useableThreshold(osg::Vec3(0, 0, 0))
64 std::vector<std::string>
rwy1;
65 std::vector<std::string>
rwy2;
85 virtual void apply(osgEarth::Aerodrome::AerodromeNode& node);
88 virtual void apply(osgEarth::Aerodrome::RunwayNode& node);
90 virtual void apply(osgEarth::Aerodrome::RunwayThresholdNode& node);
92 virtual void apply(osgEarth::Aerodrome::TaxiwaySignNode& node);
94 virtual void apply(osgEarth::Aerodrome::LightIndicatorNode& node);
96 virtual void apply(osgEarth::Aerodrome::RunwayThresholdGroup& group);
100 virtual void parseTaxiwaySignNode(osgEarth::Aerodrome::TaxiwaySignNode& node);
103 virtual void parseRunwayNode(osgEarth::Aerodrome::AerodromeFeatureNode& node);
105 virtual void parseRunwayThresholdNode(osgEarth::Aerodrome::AerodromeFeatureNode& node);
107 virtual void parseLightIndicatorNode(osgEarth::Aerodrome::AerodromeFeatureNode& node);
112 virtual void addRunwayDesignator(
const std::string& icao,
const std::string& designator,
const std::string& tag,
114 const osg::Vec3& threshold,
float offset,
float centerOffset = 0.0f);
116 virtual void addRunwayMarking(
const std::string& icao,
const std::string& designator,
const std::string& tag,
117 const osg::Vec3& threshold,
float offset,
float length,
float width,
float lateralSpacing);
119 virtual void addRunwayThresholdBar(
const std::string& icao,
const std::string& designator,
const osg::Vec3& threshold);
121 virtual void addRunwayEdgeMarking(
const std::string& icao,
const std::string& designator,
const osg::Vec3& threshold);
123 virtual void addCenterlineMarking(
const std::string& icao,
const std::string& designator1,
const std::string& designator);
125 virtual void addDesignator(
const std::string& icao,
const osg::Vec3Array& verts,
const osg::Vec2Array& texCoords);
127 virtual void addMarking(
const std::string& icao,
const osg::Vec3Array& verts,
const osg::Vec2Array& texCoords);
131 virtual void printFeatureAttributes(osgEarth::Aerodrome::AerodromeFeatureNode& node);
148 virtual void removeAerodromeFromMap(
const std::string& icao);
151 virtual void addGeode(osgEarth::Aerodrome::AerodromeNode& node, osg::Geode* geode,
const std::string& name);
161 RunwayPolygonData* getRunwayPolygonData(
const std::string& icao,
const std::string& designator);
osg::Vec3 myThreshold
Definition: DtAerodromeRenderer.h:56
osg::Vec3 useableThreshold
Definition: DtAerodromeRenderer.h:57
A class which contains the signals used by the DtLightIndicatorManager classes.
Definition: DtLightIndicatorManager.h:55
std::vector< std::string > rwy1
Definition: DtAerodromeRenderer.h:64
bool hasCenterline
Definition: DtAerodromeRenderer.h:53
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
A class which contains the signals used by the DtTaxiwaySignManager classes.
Definition: DtTaxiwaySignManager.h:62
Definition: DtTextureAtlasIndexParser.h:23
std::unordered_map< std::string, DtAerodromeData > DtAerodromeDataMap
Definition: DtAerodromeRenderer.h:71
Contains makVrv::DtDe class.
DtRunwaySignaler & myRunwaySignaler
Definition: DtAerodromeRenderer.h:167
DtAerodromeDataMap myDtAerodromeData
Definition: DtAerodromeRenderer.h:156
DtDe & myDe
Definition: DtAerodromeRenderer.h:154
std::vector< std::string > rwy2
Definition: DtAerodromeRenderer.h:65
DtRunwayMarkingNode * myRunwayMarkingNode
Definition: DtAerodromeRenderer.h:68
std::unordered_map< std::string, RunwayPolygonData > RunwayPolygonMap
Definition: DtAerodromeRenderer.h:60
osg::Vec3 myFowardVector
Definition: DtAerodromeRenderer.h:55
Definition: DtAerodromeRenderer.h:34
float myWidth
Definition: DtAerodromeRenderer.h:50
DtSignalConnectionManager myConnections
Definition: DtAerodromeRenderer.h:165
RunwayPolygonData()
Definition: DtAerodromeRenderer.h:39
DtTextureAtlasIndexParser * myTextureAtlasIndexParser
Definition: DtAerodromeRenderer.h:159
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
Definition: DtAerodromeRenderer.h:37
Definition: DtRunwayMarkingNode.h:23
OpenThreads::Mutex Mutex
Definition: DtOsgThreadingUtils.h:12
float myLength
Definition: DtAerodromeRenderer.h:51
Definition: DtAerodromeRenderer.h:62
float centerlineStartOffset_ft
Definition: DtAerodromeRenderer.h:52
DtTaxiwaySignSignaler & myTaxiwaySignSignaler
Definition: DtAerodromeRenderer.h:163
Base class to provide boost signal/slot management.
Definition: DtRunwayMarkingManager.h:124
Contains DLL export macros.
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
voidpf uLong offset
Definition: ioapi.h:42
RunwayPolygonMap myRunwayPolygonMap
Definition: DtAerodromeRenderer.h:67
DtLightIndicatorSignaler & myLightIndicatorSignaler
Definition: DtAerodromeRenderer.h:169
OpenThreads::Mutex myAerodromeDataMapMutex
Definition: DtAerodromeRenderer.h:157