KanoopCommonQt 2.1.1
Kanoop foundational Qt utility library
Loading...
Searching...
No Matches
GeoCircle Class Reference

A geographic circle defined by a GeoCoordinate centre and a radius in metres. More...

#include <geocircle.h>

Public Member Functions

 GeoCircle ()
 Default constructor — creates an invalid circle with zero radius.
 
 GeoCircle (const GeoCoordinate &center, double radius)
 Construct a GeoCircle from a centre coordinate and radius.
 
bool operator== (const GeoCircle &other) const
 Equality comparison.
 
bool operator!= (const GeoCircle &other) const
 Inequality comparison.
 
GeoCoordinate center () const
 Return the centre coordinate.
 
void setCenter (GeoCoordinate value)
 Set the centre coordinate.
 
double radius () const
 Return the radius in metres.
 
void setRadius (double value)
 Set the radius in metres.
 
double diameter () const
 Return the diameter in metres.
 
double area () const
 Return the area in square metres.
 
bool contains (const GeoCoordinate &point) const
 Test whether a coordinate falls within this circle.
 
bool isValid () const
 Test whether this circle has a valid centre and non-zero radius.
 
QString toString () const
 Format this circle as a human-readable string.
 

Static Public Member Functions

static GeoCircle fromString (const QString &value)
 Parse a GeoCircle from a string produced by toString().
 

Detailed Description

A geographic circle defined by a GeoCoordinate centre and a radius in metres.

Represents a circular region on the Earth's surface.

The centre is a GeoCoordinate and the radius is in metres. Use contains() to test whether another coordinate falls within the circle.

Definition at line 17 of file geocircle.h.

Constructor & Destructor Documentation

◆ GeoCircle() [1/2]

GeoCircle::GeoCircle ( )
inline

Default constructor — creates an invalid circle with zero radius.

Definition at line 21 of file geocircle.h.

◆ GeoCircle() [2/2]

GeoCircle::GeoCircle ( const GeoCoordinate center,
double  radius 
)
inline

Construct a GeoCircle from a centre coordinate and radius.

Parameters
centerCentre of the circle (geographic coordinate)
radiusRadius in metres

Definition at line 29 of file geocircle.h.

Member Function Documentation

◆ area()

double GeoCircle::area ( ) const
inline

Return the area in square metres.

Returns
Area (π × radius²)

Definition at line 76 of file geocircle.h.

◆ center()

GeoCoordinate GeoCircle::center ( ) const
inline

Return the centre coordinate.

Returns
Centre GeoCoordinate

Definition at line 46 of file geocircle.h.

◆ contains()

bool GeoCircle::contains ( const GeoCoordinate point) const

Test whether a coordinate falls within this circle.

Parameters
pointCoordinate to test
Returns
true if the great-circle distance from centre to point is ≤ radius

◆ diameter()

double GeoCircle::diameter ( ) const
inline

Return the diameter in metres.

Returns
Diameter (2 × radius)

Definition at line 70 of file geocircle.h.

◆ fromString()

static GeoCircle GeoCircle::fromString ( const QString &  value)
static

Parse a GeoCircle from a string produced by toString().

Parameters
valueString representation
Returns
Parsed GeoCircle

◆ isValid()

bool GeoCircle::isValid ( ) const
inline

Test whether this circle has a valid centre and non-zero radius.

Returns
true if centre is valid and radius != 0

Definition at line 89 of file geocircle.h.

◆ operator!=()

bool GeoCircle::operator!= ( const GeoCircle other) const
inline

Inequality comparison.

Parameters
otherCircle to compare against
Returns
true if circles are not equal

Definition at line 40 of file geocircle.h.

◆ operator==()

bool GeoCircle::operator== ( const GeoCircle other) const

Equality comparison.

Parameters
otherCircle to compare against
Returns
true if centre and radius are equal

◆ radius()

double GeoCircle::radius ( ) const
inline

Return the radius in metres.

Returns
Radius value

Definition at line 58 of file geocircle.h.

◆ setCenter()

void GeoCircle::setCenter ( GeoCoordinate  value)
inline

Set the centre coordinate.

Parameters
valueNew centre GeoCoordinate

Definition at line 52 of file geocircle.h.

◆ setRadius()

void GeoCircle::setRadius ( double  value)
inline

Set the radius in metres.

Parameters
valueNew radius value

Definition at line 64 of file geocircle.h.

◆ toString()

QString GeoCircle::toString ( ) const
inline

Format this circle as a human-readable string.

Returns
String of the form "lat, lon, radius"

Definition at line 95 of file geocircle.h.


The documentation for this class was generated from the following file: