class FGRunwayBase : public FGPositioned
{
public:
- FGRunwayBase(Type aTy, const std::string& aIdent,
+ FGRunwayBase(PositionedID aGuid, Type aTy, const std::string& aIdent,
const SGGeod& aGeod,
const double heading, const double length,
const double width,
- const int surface_code,
- bool index);
+ const int surface_code);
/**
* Retrieve a position on the extended centerline. Positive values
SGGeod pointOffCenterline(double aOffset, double lateralOffset) const;
double lengthFt() const
- { return _length; }
+ { return _length * SG_METER_TO_FEET; }
double lengthM() const
- { return _length * SG_FEET_TO_METER; }
+ { return _length; }
double widthFt() const
- { return _width; }
+ { return _width * SG_METER_TO_FEET; }
double widthM() const
- { return _width * SG_FEET_TO_METER; }
+ { return _width; }
/**
* Runway heading in degrees.
*/
int surface() const
{ return _surface_code; }
+
+ /**
+ * Retrieve runway surface name, as define in Robin Peel's data
+ */
+ static const char * surfaceName( int surface_code );
+ const char * surfaceName() { return surfaceName( _surface_code ); }
protected:
class FGTaxiway : public FGRunwayBase
{
public:
- FGTaxiway(const std::string& aIdent,
+ FGTaxiway(PositionedID aGuid,
+ const std::string& aIdent,
const SGGeod& aGeod,
const double heading, const double length,
const double width,