+ osg::ref_ptr<osg::Texture2D> _resultTexture;
+ osg::ref_ptr<osg::Texture2D> _wxEcho;
+ osg::ref_ptr<osg::Geode> _radarGeode;
+ osg::ref_ptr<osg::Geode> _textGeode;
+ osg::Geometry *_geom;
+ osg::Vec2Array *_vertices;
+ osg::Vec2Array *_texCoords;
+ osg::Matrixf _centerTrans;
+ osg::ref_ptr<osgText::Font> _font;
+ osg::Vec4 _font_color;
+ osg::Vec4 _tcas_colors[4];
+ float _font_size;
+ float _font_spacing;
+
+// FIXME: implementation of radar echoes missing
+// list_of_SGWxRadarEcho _radarEchoBuffer;
+
+ void update_weather();
+ void update_aircraft();
+ void update_tacan();
+ void update_heading_marker();
+ void update_data(const SGPropertyNode *ac, double alt, double heading,
+ double radius, double bearing, bool selected);
+ bool update_tcas(const SGPropertyNode *model,double range,double user_alt,double alt,
+ double bearing,double radius, bool absMode);
+ void center_map();
+ void apply_map_offset();
+ void updateFont();
+ void calcRangeBearing(double lat, double lon, double lat2, double lon2,
+ double &range, double &bearing) const;
+
+ bool withinRadarHorizon(double user_alt, double alt, double range);
+ bool inRadarRange(double sigma, double range);