77 Distance(
double distanceInPixels,
double pixelsPerMeter);
87 double pixels(
double pixelsPerMeter = 1.0)
const;
88 void setPixels(
double distanceInPixels,
double pixelsPerMeter = 1.0);
108 return *
this > otherDistance || *
this == otherDistance;
121 return *
this < otherDistance || *
this == otherDistance;
double operator/(const Distance &distanceToDiv) const
Divide another distance into this distance (5m / 1m = 5).
void operator/=(const double &valueToDiv)
Divide this distance by a value and assign the result to ourself.
virtual double distance(Units distanceUnit) const
This is a helper method to access distances in a universal manner with uniform error checking...
Units
This is a list of available units to access and store Distances in.
bool operator==(const Distance &otherDistance) const
Compare two distances with the == operator.
void operator+=(const Distance &distanceToAdd)
Add and assign the given distance to ourselves.
void operator*=(const double &valueToMult)
Multiply this distance by a value and assign the result to ourself.
"Solar radius is a unit of distance used to express the size of stars in astronomy equal to the curre...
bool operator<=(const Distance &otherDistance) const
Compare two distances with the less than or equal to operator.
QString toString() const
Get a textual representation of this distance.
double m_distanceInMeters
This is the distance value that this class is encapsulating, always stored in meters.
The distance is being specified in kilometers.
bool operator<(const Distance &otherDistance) const
Compare two distances with the less than operator.
bool operator!=(const Distance &otherDistance) const
Compare two distances with the != operator.
Distance()
This initializes the distance to an invalid state.
Distance measurement, usually in meters.
void setMeters(double distanceInMeters)
Set the distance in meters.
void setPixels(double distanceInPixels, double pixelsPerMeter=1.0)
Set the distance in pixels.
double meters() const
Get the distance in meters.
virtual ~Distance()
This will free the memory allocated by this instance of the Distance class.
bool isValid() const
Test if this distance has been initialized or not.
void setKilometers(double distanceInKilometers)
Set the distance in kilometers.
void operator-=(const Distance &distanceToSub)
Subtract and assign the given distance from ourself.
Distance operator*(const double &valueToMult) const
Multiply this distance by a value (5m * 2 = 10m).
double solarRadii() const
Get the distance in solar radii (a unit of ~696,265km).
Displacement is a signed length, usually in meters.
bool operator>=(const Distance &otherDistance) const
Compare two distances with the greater than or equal to operator.
bool operator>(const Distance &otherDistance) const
Compare two distances with the greater than operator.
void setSolarRadii(double distanceInSolarRadii)
Set the distance in solar radii.
The distance is being specified in meters.
double kilometers() const
Get the distance in kilometers.
Distance operator+(const Distance &distanceToAdd) const
Add another distance to this distance (1km + 1m = 1005m)
virtual void setDistance(const double &distance, Units distanceUnit)
This is a helper method to set distances in a universal manner with uniform error checking...
The distance is being specified in pixels.
Displacement operator-(const Distance &distanceToSub) const
Subtract another distance from this distance (1km - 1m = 995m).
Distance & operator=(const Distance &distanceToCopy)
Assign this distance to the value of another distance.
double pixels(double pixelsPerMeter=1.0) const
Get the distance in pixels using the given conversion ratio.