#ifndef GERMANAIRLINESVA_FILE_FSUIPC_FSLATLONQUADRILATERAL_H #define GERMANAIRLINESVA_FILE_FSUIPC_FSLATLONQUADRILATERAL_H #define _USE_MATH_DEFINES #include #include #include namespace germanairlinesva { namespace file { namespace FSUIPC { class FsLatitude; class FsLatitudeSpan; class FsLongitude; class FsLongitudeSpan; class FsLatLonPoint; class FsLatLonQuadrilateral { private: FsLatLonPoint ne; FsLatLonPoint se; FsLatLonPoint sw; FsLatLonPoint nw; public: inline FsLatLonQuadrilateral(); inline FsLatLonQuadrilateral(FsLatLonPoint P0, FsLatLonPoint P1, FsLatLonPoint P2, FsLatLonPoint P3); inline FsLatLonPoint NE() const; inline FsLatLonPoint SE() const; inline FsLatLonPoint SW() const; inline FsLatLonPoint NW() const; inline bool ContainsPoint(FsLatLonPoint point) const; inline const std::string to_string(bool HemisphereAsText, char DetailLevel) const; inline const std::string to_string() const; inline static FsLatLonQuadrilateral ForRunway(FsLatLonPoint &ThresholdCentre, double HeadingTrue, double WidthInFeet, double LengthInFeet); }; } // namespace FSUIPC } // namespace file } // namespace germanairlinesva #endif