RCAIDE.Library.Methods.Geodesics.Geodesics.Distance#

class Distance(*args, **kwargs)[source]#

Bases: object

Modified to remve unit conversions to stay with RCAIDE conventions - Oct. 2024 Base class for other distance algorithms. Represents a distance.

Can be used for units conversion:

>>> from geopy.distance import Distance
>>> Distance(miles=10).km
16.09344

Distance instances have all distance properties from geopy.units, e.g.: km, m, meters, miles and so on.

Distance instances are immutable.

They support comparison:

>>> from geopy.distance import Distance
>>> Distance(kilometers=2) == Distance(meters=2000)
True
>>> Distance(kilometers=2) > Distance(miles=1)
True

String representation:

>>> from geopy.distance import Distance
>>> repr(Distance(kilometers=2))
'Distance(2.0)'
>>> str(Distance(kilometers=2))
'2.0 km'
>>> repr(Distance(miles=2))
'Distance(3.218688)'
>>> str(Distance(miles=2))
'3.218688 km'

Arithmetics:

>>> from geopy.distance import Distance
>>> -Distance(miles=2)
Distance(-3.218688)
>>> Distance(miles=2) + Distance(kilometers=1)
Distance(4.218688)
>>> Distance(miles=2) - Distance(kilometers=1)
Distance(2.218688)
>>> Distance(kilometers=6) * 5
Distance(30.0)
>>> Distance(kilometers=6) / 5
Distance(1.2)
__init__(*args, **kwargs)[source]#

There are 3 ways to create a distance:

  • From kilometers:

    >>> from geopy.distance import Distance
    >>> Distance(1.42)
    Distance(1.42)
    
  • From points (for non-abstract distances only), calculated as a sum of distances between all points:

    >>> from geopy.distance import geodesic
    >>> geodesic((40, 160), (40.1, 160.1))
    Distance(14.003702498106215)
    >>> geodesic((40, 160), (40.1, 160.1), (40.2, 160.2))
    Distance(27.999954644813478)
    

Methods

__init__(*args, **kwargs)

There are 3 ways to create a distance:

destination(point, bearing[, distance])

Calculate destination point using a starting point, bearing and a distance.

measure(a, b)

Attributes

__init__(*args, **kwargs)[source]#

There are 3 ways to create a distance:

  • From kilometers:

    >>> from geopy.distance import Distance
    >>> Distance(1.42)
    Distance(1.42)
    
  • From points (for non-abstract distances only), calculated as a sum of distances between all points:

    >>> from geopy.distance import geodesic
    >>> geodesic((40, 160), (40.1, 160.1))
    Distance(14.003702498106215)
    >>> geodesic((40, 160), (40.1, 160.1), (40.2, 160.2))
    Distance(27.999954644813478)
    
measure(a, b)[source]#
destination(point, bearing, distance=None)[source]#

Calculate destination point using a starting point, bearing and a distance. This method works for non-abstract distances only.

Example: a point 10 miles east from (34, 148):

>>> import geopy.distance
>>> geopy.distance.distance(miles=10).destination((34, 148), bearing=90)
Point(33.99987666492774, 148.17419994321995, 0.0)
Parameters:
  • point (geopy.point.Point, list or tuple of (latitude, longitude), or string as "%(latitude)s, %(longitude)s".) – Starting point.

  • bearing (float) – Bearing in degrees: 0 – North, 90 – East, 180 – South, 270 or -90 – West.

  • distance (Distance) –

    Distance, can be used to override this instance:

    >>> from geopy.distance import distance, Distance
    >>> distance(miles=10).destination((34, 148), bearing=90, \distance=Distance(100))
    Point(33.995238229104764, 149.08238904409637, 0.0)
    

Return type:

geopy.point.Point

property kilometers#
property km#