FSUIPC Client DLL
.NET interface for FSUIPC
FsLatLonQuadrilateral Struct Reference

Represents an Quadrilateral area in FS bounded by four Latitude/Longitude coordinates. Note that only Convex Quadrilateral shapes will work properly. Concave shapes will not. For concave shapes use FsLatLonPolygon instead. More...

Public Member Functions

 FsLatLonQuadrilateral (FsLatLonPoint P0, FsLatLonPoint P1, FsLatLonPoint P2, FsLatLonPoint P3)
 Creates a FsLatLonQuadrilateral from four FsLatLonPoints. Each point represents a corner of the quad. The quad must be convex. The points can be specified in any order. More...
 
bool ContainsPoint (FsLatLonPoint point)
 Calculates whether or not the given point in contained in this Quadrilateral. More...
 
override string ToString ()
 The four latitude and longitude points (corners) represented as a string in the default format of N|S|E|W dd* mm.mmmm' More...
 
string ToString (bool HemisphereAsText, string DetailLevel, short DecimalPlaces)
 The four latitude and longitude points (corners) represented as a string in the specified format More...
 

Static Public Member Functions

static FsLatLonQuadrilateral FromCenterMetres (FsLatLonPoint CenterPoint, double HeightMetres, double WidthMetres)
 Creates a new FsLatLonQuadrilateral of a given height and width, around a given centre point More...
 
static FsLatLonQuadrilateral FromCenterFeet (FsLatLonPoint CenterPoint, double HeightFeet, double WidthFeet)
 Creates a new FsLatLonQuadrilateral of a given height and width, around a given centre point More...
 
static FsLatLonQuadrilateral FromCenterNauticalMiles (FsLatLonPoint CenterPoint, double HeightNauticalMiles, double WidthNauticalMiles)
 Creates a new FsLatLonQuadrilateral of a given height and width, around a given centre point More...
 
static FsLatLonQuadrilateral ForTaxiway (FsLatLonPoint StartPoint, double StartWidth, FsLatLonPoint EndPoint, double EndWidth)
 Create a new FsLatLonQuadrilateral from one point to another. The widths at each end can be specified. More...
 
static FsLatLonQuadrilateral ForRunway (FsLatLonPoint ThresholdCentre, Double HeadingTrue, double WidthInFeet, double LengthInFeet)
 Creates a new bounding rectangle for a runway given the common information provided in MakeRunways.exe by Pete Dowson. More...
 

Properties

FsLatLonLineSegment [] LineSegments [get]
 An array of 4 FsLineSegments representing each line of the Quadrilateral. Starting at the line running NW to NE, going clockwise. More...
 
FsLatLonPoint NE [get]
 A FsLatLonPoint representing the North Eastern corner of this Quadrilateral. More...
 
FsLatLonPoint SE [get]
 A FsLatLonPoint representing the South Eastern corner of this Quadrilateral. More...
 
FsLatLonPoint SW [get]
 A FsLatLonPoint representing the South Western corner of this Quadrilateral. More...
 
FsLatLonPoint NW [get]
 A FsLatLonPoint representing the North Western corner of this Quadrilateral. More...
 
FsLatitude LatitudeMaximum [get]
 The maximum latitude covered by this Quad (most northerly) More...
 
FsLatitude LatitudeMinimum [get]
 The minimum latitude covered by this Quad (most southerly) More...
 
FsLongitude LongitudeMaximum [get]
 the maximum longitude covered by this Quad (most easterly) More...
 
FsLongitude LongitudeMinimum [get]
 The minimum longitude covered by this Quad (most westerly) More...
 

Detailed Description

Represents an Quadrilateral area in FS bounded by four Latitude/Longitude coordinates. Note that only Convex Quadrilateral shapes will work properly. Concave shapes will not. For concave shapes use FsLatLonPolygon instead.

Constructor & Destructor Documentation

◆ FsLatLonQuadrilateral()

Creates a FsLatLonQuadrilateral from four FsLatLonPoints. Each point represents a corner of the quad. The quad must be convex. The points can be specified in any order.

Member Function Documentation

◆ ContainsPoint()

bool ContainsPoint ( FsLatLonPoint  point)
inline

Calculates whether or not the given point in contained in this Quadrilateral.

Parameters
pointThe point to test
Returns
True if the given point is contained within this Quadrilateral.

◆ ForRunway()

static FsLatLonQuadrilateral ForRunway ( FsLatLonPoint  ThresholdCentre,
Double  HeadingTrue,
double  WidthInFeet,
double  LengthInFeet 
)
inlinestatic

Creates a new bounding rectangle for a runway given the common information provided in MakeRunways.exe by Pete Dowson.

Parameters
HeadingTrueThe TRUE heading of the runway in Degrees
ThresholdCentreThe Lon/Lat point of the centre of the runway threshold
WidthInFeetThe width of the runway in Feet
LengthInFeetThe length of the runway in Feet
Returns
An FsLatLonQuadrilateral representing the four corners of the runway

◆ ForTaxiway()

static FsLatLonQuadrilateral ForTaxiway ( FsLatLonPoint  StartPoint,
double  StartWidth,
FsLatLonPoint  EndPoint,
double  EndWidth 
)
inlinestatic

Create a new FsLatLonQuadrilateral from one point to another. The widths at each end can be specified.

Parameters
StartPointThe centre point of one edge of the new Quad
StartWidthThe width of the edge located at the first point
EndPointThe centre point of the second edge of the new Quad
EndWidthThe width of the edge located at the second point
Returns

◆ FromCenterFeet()

static FsLatLonQuadrilateral FromCenterFeet ( FsLatLonPoint  CenterPoint,
double  HeightFeet,
double  WidthFeet 
)
inlinestatic

Creates a new FsLatLonQuadrilateral of a given height and width, around a given centre point

Parameters
CenterPointThe centre point of the new Quad
HeightFeetThe height of the new Quad in Feet (from North to South)
WidthFeetThe Width of the new Quad in Feet (from East to West)
Returns

◆ FromCenterMetres()

static FsLatLonQuadrilateral FromCenterMetres ( FsLatLonPoint  CenterPoint,
double  HeightMetres,
double  WidthMetres 
)
inlinestatic

Creates a new FsLatLonQuadrilateral of a given height and width, around a given centre point

Parameters
CenterPointThe centre point of the new Quad
HeightMetresThe height of the new Quad in Metres (from North to South)
WidthMetresThe Width of the new Quad in Metres (from East to West)
Returns

◆ FromCenterNauticalMiles()

static FsLatLonQuadrilateral FromCenterNauticalMiles ( FsLatLonPoint  CenterPoint,
double  HeightNauticalMiles,
double  WidthNauticalMiles 
)
inlinestatic

Creates a new FsLatLonQuadrilateral of a given height and width, around a given centre point

Parameters
CenterPointThe centre point of the new Quad
HeightNauticalMilesThe height of the new Quad in Nautical Miles (from North to South)
WidthNauticalMilesThe Width of the new Quad in Nautical Miles (from East to West)
Returns

◆ ToString() [1/2]

override string ToString ( )
inline

The four latitude and longitude points (corners) represented as a string in the default format of N|S|E|W dd* mm.mmmm'

Returns
A string representation of the Longitude and Latitude of the four corners of this Quadrilateral in the default format

◆ ToString() [2/2]

string ToString ( bool  HemisphereAsText,
string  DetailLevel,
short  DecimalPlaces 
)
inline

The four latitude and longitude points (corners) represented as a string in the specified format

Parameters
HemisphereAsTextDenote hemisphere using N,S,W or E. If false, west/south is marked as -
DetailLevelSpecifies the detail level. "d" for degrees only, "m" for degrees and minutes, "s" for degrees, minutes and seconds
DecimalPlacesThe number of decimal places to show
Returns
A string representation of the Longitude and Latitude of the four corners of this Quadrilateral in the specified format

Property Documentation

◆ LatitudeMaximum

FsLatitude LatitudeMaximum
get

The maximum latitude covered by this Quad (most northerly)

◆ LatitudeMinimum

FsLatitude LatitudeMinimum
get

The minimum latitude covered by this Quad (most southerly)

◆ LineSegments

FsLatLonLineSegment [] LineSegments
get

An array of 4 FsLineSegments representing each line of the Quadrilateral. Starting at the line running NW to NE, going clockwise.

◆ LongitudeMaximum

FsLongitude LongitudeMaximum
get

the maximum longitude covered by this Quad (most easterly)

◆ LongitudeMinimum

FsLongitude LongitudeMinimum
get

The minimum longitude covered by this Quad (most westerly)

◆ NE

FsLatLonPoint NE
get

A FsLatLonPoint representing the North Eastern corner of this Quadrilateral.

◆ NW

FsLatLonPoint NW
get

A FsLatLonPoint representing the North Western corner of this Quadrilateral.

◆ SE

FsLatLonPoint SE
get

A FsLatLonPoint representing the South Eastern corner of this Quadrilateral.

◆ SW

FsLatLonPoint SW
get

A FsLatLonPoint representing the South Western corner of this Quadrilateral.