Skip to content

geodeticUtilsOperator

ESM: import * as geodeticUtilsOperator from "@arcgis/core/geometry/operators/geodeticUtilsOperator.js";
CDN: const geodeticUtilsOperator = await $arcgis.import("@arcgis/core/geometry/operators/geodeticUtilsOperator.js");
Object: @arcgis/core/geometry/operators/geodeticUtilsOperator
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.

Method Overview

Name Return Type Summary Object

Geodetically calculates the distance and direction between two points.

geodeticUtilsOperator

Indicates if all dependencies of this module have been loaded.

geodeticUtilsOperator
Promise

Loads this module's dependencies.

geodeticUtilsOperator

Geodetically calculates a point location at a defined distance and direction from a known point.

geodeticUtilsOperator

Method Details

calculateDistanceAndAzimuth

Method
calculateDistanceAndAzimuth(point1, point2, options){CalculateDistanceAndAzimuthResult}

Geodetically calculates the distance and direction between two points. Unless the unit option is set, the default is meters.

Calculate Distance and Azimuth operator

Parameters
Specification
point1 Point

The starting point.

point2 Point

The ending point.

options Object
optional

Additional options.

Specification
curveType String
optional
Default Value: "geodesic"

The type of geodetic curve along which distance will be measured. The default curveType of geodesic returns the shortest distance between point1 and point2.

Possible Values:"geodesic"|"loxodrome"|"great-elliptic"|"normal-section"

unit LengthUnit
optional
Default Value: "meters"

The length unit of the distance.

Returns
Type Description
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 } })
);

isLoaded

Method
isLoaded(){Boolean}

Indicates if all dependencies of this module have been loaded.

Returns
Type Description
Boolean Returns true if this module's dependencies have been loaded.

load

Method
load(){Promise}

Loads this module's dependencies. This method must be called first if isLoaded returns false.

Returns
Type Description
Promise Resolves when the dependencies have been loaded.
See also

pointFromDistance

Method
pointFromDistance(point, distance, azimuth, options){Point |null |undefined}

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.

Point From Distance operator

Parameters
Specification
point Point

Origin location.

distance Number

Distance from the origin point.

azimuth Number

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 Object
optional

Additional options.

Specification
curveType String
optional
Default Value: "geodesic"

The type of geodetic curve used.

Possible Values:"geodesic"|"loxodrome"|"great-elliptic"|"normal-section"

unit LengthUnit
optional
Default Value: "meters"

The length unit of the distance.

Returns
Type Description
Point | null | undefined Returns the new point or null if the point cannot be represented in the spatial reference.
Example
if (!geodeticUtilsOperator.isLoaded()) {
  await geodeticUtilsOperator.load();
}

const point = geodeticUtilsOperator.pointFromDistance(
  new Point({ x: -118.805, y: 34.027, spatialReference: { wkid: 4326 } }),
  350,
  45
);

Type Definitions

CalculateDistanceAndAzimuthResult

Type Definition
CalculateDistanceAndAzimuthResult

Object returned by the calculateDistanceAndAzimuth() method. Azimuths are in positive degrees from 0 to 360, measured clockwise from due north.

Properties
distance Number

The geodetic distance between point1 and point2.

azimuth12 Number

The azimuth in degrees from point1 to point2.

azimuth21 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.

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.