import { isLoaded, load, calculateDistanceAndAzimuth, pointFromDistance } from "@arcgis/core/geometry/operators/geodeticUtilsOperator.js";const { isLoaded, load, calculateDistanceAndAzimuth, pointFromDistance } = await $arcgis.import("@arcgis/core/geometry/operators/geodeticUtilsOperator.js");- Since
- ArcGIS Maps SDK for JavaScript 4.34
A set of utilities for working with geodetic calculations.
Notes
Verify that isLoaded() returns true before using this module.
Use load() to load this module's dependencies.
Type definitions
Options
curveType
- Type
- Exclude<GeodeticCurveType, "shape-preserving"> | undefined
The type of geodetic curve along which distance will be measured.
The default curveType of geodesic returns the shortest distance between point1 and point2.
- Default value
- "geodesic"
CalculateDistanceAndAzimuthResult
Object returned by the calculateDistanceAndAzimuth() method. Azimuths are in positive degrees from 0 to 360, measured clockwise from due north.
azimuth21
- Type
- number
The azimuth in degrees from point2 to point1.
For example, Berlin is almost due north of Rome. The azimuth from Rome to Berlin is 3°; close to due north (0°) but a little east. The azimuth from Berlin to Rome is 183°; close to due south (180°) but a little west.
For another example, Shanghai is almost due east of Wuhan. The azimuth from Wuhan to Shanghai is 82°; close to due east (90°) but a little north. The azimuth from Shanghai to Wuhan is 266°; close to due west (270°) but a little south.
Functions
isLoaded
Indicates if all dependencies of this module have been loaded.
- Signature
-
isLoaded (): boolean
- Returns
- boolean
Returns
trueif this module's dependencies have been loaded.
load
Loads this module's dependencies. This method must be called first if isLoaded returns false.
- See also
- Signature
-
load (): Promise<void>
calculateDistanceAndAzimuth
Geodetically calculates the distance and direction between two points.
Unless the unit option is set, the default is meters.

- Signature
-
calculateDistanceAndAzimuth (point1: Point, point2: Point, options?: Options): CalculateDistanceAndAzimuthResult
Parameters
- Returns
- CalculateDistanceAndAzimuthResult
Returns an object containing the distance and azimuths between the two points.
Example
if (!geodeticUtilsOperator.isLoaded()) { await geodeticUtilsOperator.load();}
const distanceAndAzimuthResult = geodeticUtilsOperator.calculateDistanceAndAzimuth( new Point({ x: -118.805, y: 34.027, spatialReference: { wkid: 4326 } }), new Point({ x: -118.802, y: 34.029, spatialReference: { wkid: 4326 } })); pointFromDistance
Geodetically calculates a point location at a defined distance and direction from a known point.
Unless the unit option is set, the default is meters.

- Signature
-
pointFromDistance (point: Point, distance: number, azimuth: number, options?: Options): Point | null | undefined
Parameters
| Parameter | Type | Description | Required |
|---|---|---|---|
| point | Origin location. | | |
| distance | Distance from the origin point. | | |
| azimuth | Direction in degrees (0 +/- 360) from the origin point, where both 0 and 360 degrees represent due north. A positive azimuth is measured clockwise from north. A negative azimuth is measured counter-clockwise from north. | | |
| options | Additional options. | |
Example
if (!geodeticUtilsOperator.isLoaded()) { await geodeticUtilsOperator.load();}
const point = geodeticUtilsOperator.pointFromDistance( new Point({ x: -118.805, y: 34.027, spatialReference: { wkid: 4326 } }), 350, 45);