swift
|
Interface (actually more an abstract class) of coordinates and relative position to something (normally own aircraft) More...
Public Types | |
enum | ColumnIndex { IndexRelativeDistance = CPropertyIndexRef::GlobalIndexICoordinateWithRelativePosition , IndexRelativeBearing } |
Properties by index. | |
![]() | |
enum | ColumnIndex { IndexLatitude = CPropertyIndexRef::GlobalIndexICoordinateGeodetic , IndexLongitude , IndexLatitudeAsString , IndexLongitudeAsString , IndexGeodeticHeight , IndexGeodeticHeightAsString , IndexNormalVector } |
Properties by index. | |
Public Member Functions | |
const physical_quantities::CLength & | getRelativeDistance () const |
Get the distance. | |
void | setRelativeDistance (const physical_quantities::CLength &distance) |
Set relative distance. | |
const physical_quantities::CAngle & | getRelativeBearing () const |
Get the relative bearing. | |
void | setRelativeBearing (const physical_quantities::CAngle &angle) |
Set bearing to own plane. | |
bool | hasValidRelativeDistance () const |
Valid distance? | |
bool | hasValidRelativeBearing () const |
Valid bearing? | |
physical_quantities::CLength | calculcateAndUpdateRelativeDistance (const geo::ICoordinateGeodetic &position) |
Calculcate distance, set it, and return distance. | |
physical_quantities::CLength | calculcateAndUpdateRelativeDistanceAndBearing (const geo::ICoordinateGeodetic &position) |
Calculcate distance and bearing to plane, set it, and return distance. | |
QVariant | propertyByIndex (CPropertyIndexRef index) const |
Property by index. More... | |
void | setPropertyByIndex (CPropertyIndexRef index, const QVariant &variant) |
Set property by index. More... | |
int | comparePropertyByIndex (CPropertyIndexRef index, const ICoordinateWithRelativePosition &compareValue) const |
Compare for index. More... | |
QString | convertToQString (bool i18n=false) const |
Cast as QString. More... | |
![]() | |
ICoordinateGeodetic ()=default | |
Ctor. | |
virtual | ~ICoordinateGeodetic () |
Destructor. | |
ICoordinateGeodetic (const ICoordinateGeodetic &)=default | |
Copy constructor. | |
ICoordinateGeodetic & | operator= (const ICoordinateGeodetic &)=default |
Copy assignment operator. | |
virtual CLatitude | latitude () const =0 |
Latitude. | |
virtual CLongitude | longitude () const =0 |
Longitude. | |
virtual const aviation::CAltitude & | geodeticHeight () const =0 |
Height, ellipsoidal or geodetic height (used in GPS) More... | |
virtual QVector3D | normalVector () const =0 |
Normal vector. More... | |
virtual std::array< double, 3 > | normalVectorDouble () const =0 |
Normal vector with double precision. | |
bool | equalNormalVectorDouble (const std::array< double, 3 > &otherVector) const |
Is equal? Epsilon considered. | |
bool | equalNormalVectorDouble (const ICoordinateGeodetic &otherCoordinate) const |
Is equal, epsilon considered? | |
QString | latitudeAsString () const |
Latitude as string. | |
QString | longitudeAsString () const |
Longitude as string. | |
QString | geodeticHeightAsString () const |
Height as string. | |
bool | isGeodeticHeightNull () const |
Geodetic height null? | |
bool | hasMSLGeodeticHeight () const |
Geodetic height not null and aviation::CAltitude::MeanSeaLevel. | |
virtual bool | isNull () const |
Is null, means vector x, y, z == 0. More... | |
physical_quantities::CLength | calculateGreatCircleDistance (const ICoordinateGeodetic &otherCoordinate) const |
Great circle distance. | |
bool | isWithinRange (const ICoordinateGeodetic &otherCoordinate, const physical_quantities::CLength &range) const |
Object within range? | |
physical_quantities::CAngle | calculateBearing (const ICoordinateGeodetic &otherCoordinate) const |
Initial bearing. | |
QVariant | propertyByIndex (CPropertyIndexRef index) const |
Property by index. More... | |
int | comparePropertyByIndex (CPropertyIndexRef index, const ICoordinateGeodetic &compareValue) const |
Compare for index. More... | |
QString | convertToQString (bool i18n=false) const |
Cast as QString. More... | |
bool | isNaNVector () const |
Check values. | |
bool | isNaNVectorDouble () const |
Check values. | |
bool | isInfVector () const |
Check values. | |
bool | isInfVectorDouble () const |
Check values. | |
bool | isValidVectorRange () const |
Check values. | |
Protected Member Functions | |
ICoordinateWithRelativePosition () | |
Constructor. | |
Static Protected Member Functions | |
static bool | canHandleIndex (CPropertyIndexRef index) |
Can given index be handled? | |
![]() | |
static bool | canHandleIndex (CPropertyIndexRef index) |
Can given index be handled? | |
Protected Attributes | |
physical_quantities::CAngle | m_relativeBearing { 0, nullptr } |
temporary stored value | |
physical_quantities::CLength | m_relativeDistance { 0, nullptr } |
temporary stored value | |
Additional Inherited Members | |
![]() | |
static bool | isValidVector (const std::array< double, 3 > &v) |
Check values. | |
Interface (actually more an abstract class) of coordinates and relative position to something (normally own aircraft)
Definition at line 169 of file coordinategeodetic.h.
int swift::misc::geo::ICoordinateWithRelativePosition::comparePropertyByIndex | ( | CPropertyIndexRef | index, |
const ICoordinateWithRelativePosition & | compareValue | ||
) | const |
Compare for index.
Definition at line 496 of file coordinategeodetic.cpp.
QString swift::misc::geo::ICoordinateWithRelativePosition::convertToQString | ( | bool | i18n = false | ) | const |
Cast as QString.
Definition at line 524 of file coordinategeodetic.cpp.
QVariant swift::misc::geo::ICoordinateWithRelativePosition::propertyByIndex | ( | CPropertyIndexRef | index | ) | const |
Property by index.
Definition at line 459 of file coordinategeodetic.cpp.
void swift::misc::geo::ICoordinateWithRelativePosition::setPropertyByIndex | ( | CPropertyIndexRef | index, |
const QVariant & | variant | ||
) |
Set property by index.
Definition at line 477 of file coordinategeodetic.cpp.