GeoDisplacement[{dist,α}]
represents a geodesic displacement of length dist and initial bearing α from a geo location.
GeoDisplacement[{dist,α},pathtype]
represents a displacement of length dist and initial bearing α along a path of type pathtype.
GeoDisplacement[loc1,loc2,pathtype]
returns the displacement needed to reach loc2 from loc1 along a path of type pathtype.
GeoDisplacement
GeoDisplacement[{dist,α}]
represents a geodesic displacement of length dist and initial bearing α from a geo location.
GeoDisplacement[{dist,α},pathtype]
represents a displacement of length dist and initial bearing α along a path of type pathtype.
GeoDisplacement[loc1,loc2,pathtype]
returns the displacement needed to reach loc2 from loc1 along a path of type pathtype.
Details
- The distance dist can be given as a Quantity length or as a number in meters.
- The bearing α is measured clockwise from true north (geodetic north). It can be given as a Quantity angle, a number in degrees, a DMS string, or a named compass point like "N" or "SouthWest".
- Locations loci in GeoDisplacement[loc1,loc2,pathtype] can be given as geographic Entity objects, {lat,lon} pairs in degrees, GeoPosition objects, or any other geodetic position specification.
- GeoDisplacement[loc1,loc2] assumes a path of type "Geodesic".
- The list of possible path types is given in the documentation of GeoPath.
- GeoDisplacement can be used with GeoDestination to compute sequences of displacements and with GeoPath to draw them.
Examples
open all close allBasic Examples (4)
Compute a destination location moving 10000 kilometers from another location:
GeoDestination[GeoPosition[{40, 30}], GeoDisplacement[{Quantity[10000, "Kilometers"], Quantity[45, "AngularDegrees"]}]]Compute a list of intermediate destinations:
GeoDestination[GeoPosition[{40, 30}], GeoDisplacement[{Range[0, 10 ^ 7, 10 ^ 6], 45}]]A random path of 70 geodesic steps of 1000 kilometers with random bearings:
GeoGraphics[GeoPath[Flatten@{GeoPosition[{0, 0}], Table[GeoDisplacement[{10 ^ 6, RandomReal[{0, 360}]}], {70}]}, VertexColors -> Table[Hue[i / 100], {i, 0, 70}]]]Compute distance and direction along a rhumb line from Tokyo to Paris:
GeoDisplacement[Entity["City", {"Tokyo", "Tokyo", "Japan"}], Entity["City", {"Paris", "IleDeFrance", "France"}], "Rhumb"]Compute distance and direction along a geodesic:
GeoDisplacement[Entity["City", {"Tokyo", "Tokyo", "Japan"}], Entity["City", {"Paris", "IleDeFrance", "France"}], "Geodesic"]Compare the rhumb line (in red) with the geodesic (in blue) in a world map:
GeoGraphics[{Red, GeoPath[{Entity["City", {"Tokyo", "Tokyo", "Japan"}], %%}], Blue, GeoPath[{Entity["City", {"Tokyo", "Tokyo", "Japan"}], %}]}, GeoRange -> "World"]Scope (9)
A relative displacement along a geodesic of initial bearing 40 degrees:
GeoDisplacement[{Quantity[100, "Kilometers"], Quantity[40, "AngularDegrees"]}]A relative displacement along a rhumb line:
GeoDisplacement[{Quantity[100, "Kilometers"], Quantity[40, "AngularDegrees"]}, "Rhumb"]A relative displacement along a great ellipse:
GeoDisplacement[{Quantity[100, "Kilometers"], Quantity[40, "AngularDegrees"]}, "GreatEllipse"]Distance can be given as a number in meters:
GeoDisplacement[{10 ^ 5, Quantity[40, "AngularDegrees"]}]Or as a Quantity length with any unit:
GeoDisplacement[{Quantity[2, "Kilometers"], Quantity[40, "AngularDegrees"]}]Results are automatically converted into meters:
GeoDisplacement[{Quantity[5000., "Feet"], Quantity[40, "AngularDegrees"]}]Bearing can be given as a number in degrees:
GeoDisplacement[{Quantity[100, "Kilometers"], 40}]Or as a Quantity angle with any unit:
GeoDisplacement[{Quantity[100., "Miles"], Quantity[40, "AngularDegrees"]}]Results are automatically converted into degrees:
GeoDisplacement[{Quantity[100., "Miles"], Quantity[2., "Radians"]}]Bearing can also be specified as a DMS string:
GeoDisplacement[{Quantity[100., "Miles"], "43d 23m 31.s"}]Or using a named compass point:
GeoDisplacement[{Quantity[100., "Miles"], "NE"}]GeoDisplacement[{Quantity[100., "Miles"], "NorthEast"}]GeoDisplacement[{Quantity[100., "Miles"], "NNW"}]GeoDisplacement[{Quantity[100., "Miles"], "North-NorthWest"}]GeoDisplacement[{Quantity[100., "Miles"], "SEbE"}]GeoDisplacement[{Quantity[100., "Miles"], "SouthEastByEast"}]Traditional names for the principal eight winds are also possible:
GeoDisplacement[{Quantity[100., "Miles"], "Levante"}]GeoDisplacement[{Quantity[100., "Miles"], "Libeccio"}]A GeoDisplacement specification of multiple relative displacements along the same geodesic:
GeoDisplacement[{Range[0, 10 ^ 7, 10 ^ 6], 40}]GeoDestination[$GeoLocation, %]The same specification using Quantity distances:
GeoDisplacement[{Quantity[Range[0, 10 ^ 7, 10 ^ 6], "Meters"], Quantity[40, "AngularDegrees"]}]GeoDestination[$GeoLocation, %]GeoGraphics[{PointSize[Large], Point[%]}]A GeoDisplacement specification of multiple destinations on a geo circle around a location:
GeoDisplacement[{10 ^ 6, Range[0, 200, 20]}]GeoDestination[$GeoLocation, %]The same specification using Quantity angles:
GeoDisplacement[{Quantity[10 ^ 6, "Meters"], Quantity[Range[0, 200, 20], "AngularDegrees"]}]GeoDestination[$GeoLocation, %]GeoGraphics[{PointSize[Large], Point[%]}]GeoDisplacement[{Range[0, 10 ^ 7, 2 10 ^ 6], Range[0, 200, 40]}]GeoDestination[$GeoLocation, %]Compute the geodesic needed to go from one location to another location:
GeoDisplacement[Entity["City", {"BuenosAires", "BuenosAires", "Argentina"}], Entity["City", {"London", "GreaterLondon", "UnitedKingdom"}]]Compute the great ellipse between the same two locations:
GeoDisplacement[Entity["City", {"BuenosAires", "BuenosAires", "Argentina"}], Entity["City", {"London", "GreaterLondon", "UnitedKingdom"}], "GreatEllipse"]Compute the rhumb line between the same two locations:
GeoDisplacement[Entity["City", {"BuenosAires", "BuenosAires", "Argentina"}], Entity["City", {"London", "GreaterLondon", "UnitedKingdom"}], "Rhumb"]Use GeoPosition specifications for the locations, or {lat,lon} pairs:
GeoDisplacement[GeoPosition[{50, -30}], GeoPosition[{50, 130}], "Geodesic"]GeoDisplacement[GeoPosition[{50, -30}], {50, 130}, "Rhumb"]Use other types of geodetic positions:
GeoDisplacement[GeoPositionENU[{-170540, 296304, -9170}, Entity["City", {"Paris", "IleDeFrance", "France"}]], GeoGridPosition[{16.37, 55.19}, "Mercator"], "Rhumb"]Applications (1)
The magnetic field of the Earth changes with time, in particular, the position of the North magnetic pole:
yesterdayLoc = GeomagneticModelData["NorthModelDipPole", Echo@Yesterday]todayLoc = GeomagneticModelData["NorthModelDipPole", Echo@Today]As of February 2019, the North magnetic pole is moving toward the west, about 118 meters per day:
GeoDisplacement[yesterdayLoc, todayLoc]Properties & Relations (3)
GeoDisplacement is the inverse of GeoDestination:
p = GeoPosition[Entity["City", {"BuenosAires", "BuenosAires", "Argentina"}]]q = GeoPosition[Entity["City", {"Johannesburg", "Gauteng", "SouthAfrica"}]]GeoDisplacement[p, q]GeoDestination[p, %] == qThe computation performed by GeoDisplacement combines GeoDistance and GeoDirection:
p = $GeoLocationq = GeoPosition[{-50, 50}]GeoDisplacement[p, q]GeoDistance[p, q, UnitSystem -> "SIBase"]GeoDirection[p, q]Take the geo displacement between two points:
p = GeoPosition[{35.1, 75.7}];
q = GeoPosition[{60.4, 130.9}];GeoDisplacement[p, q]GeoGraphics[{Arrow[GeoPath[{p, q}]], PointSize[Large], Red, Point[p], Green, Point[q]}]The geo displacement between the antipodal points has the same distance but complementary bearing:
ap = GeoAntipode[p];
aq = GeoAntipode[q];GeoDisplacement[ap, aq]GeoGraphics[{Arrow[GeoPath[{ap, aq}]], PointSize[Large], Red, Point[ap], Green, Point[aq]}]Possible Issues (1)
When any of the locations in GeoDisplacement[loc1,loc2] are extended entities, the computation is performed using some average position:
GeoDisplacement[Entity["AdministrativeDivision", {"Illinois", "UnitedStates"}], Entity["City", {"Paris", "IleDeFrance", "France"}]]Related Guides
History
Text
Wolfram Research (2014), GeoDisplacement, Wolfram Language function, https://reference.wolfram.com/language/ref/GeoDisplacement.html.
CMS
Wolfram Language. 2014. "GeoDisplacement." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/GeoDisplacement.html.
APA
Wolfram Language. (2014). GeoDisplacement. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/GeoDisplacement.html
BibTeX
@misc{reference.wolfram_2026_geodisplacement, author="Wolfram Research", title="{GeoDisplacement}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/GeoDisplacement.html}", note=[Accessed: 13-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_geodisplacement, organization={Wolfram Research}, title={GeoDisplacement}, year={2014}, url={https://reference.wolfram.com/language/ref/GeoDisplacement.html}, note=[Accessed: 13-June-2026]}