Skip to main content

Coordinates

wemap-sdk-js


Class: Coordinates

A Coordinates position using at least latitude (lat) and longitude (lng). Optionnal fields are: altitude (alt) and level.

Basic geo methods are directly accessibles from here: distanceTo, bearingTo, toEcef...

/!\ This class has been adapted to use earth as a sphere and not as an ellipsoid /!\ So, this class does not stricly represent WGS84 coordinates anymore /!\ This modifications have been made for computational improvements.

Extended by

Constructors

Constructor

new Coordinates(lat, lng, alt?, level?): Coordinates

Parameters

lat

number

lng

number

alt?

number | null

level?

Level_t

Returns

Coordinates

Properties

autoWrap

autoWrap: boolean

Accessors

alt

Get Signature

get alt(): number | null

alt does not denote the altitude of a point but its height from the "level" field (if defined) or from the ground

Returns

number | null

Set Signature

set alt(alt): void

Parameters
alt

number | null

Returns

void


ecef

Get Signature

get ecef(): Vector3_t

https://gist.github.com/klucar/1536194 Adapted for spherical formula

Returns

Vector3_t


ecefToEnuRotation

Get Signature

get ecefToEnuRotation(): Quaternion_t

Returns

Quaternion_t


enuToEcefRotation

Get Signature

get enuToEcefRotation(): Quaternion_t

ECEF Transformations Here we used a light version of ECEF considering earth as a sphere instead of an ellipse

Returns

Quaternion_t


heightFromFloor

Get Signature

get heightFromFloor(): number | null

Returns

number | null

Set Signature

set heightFromFloor(heightFromFloor): void

Parameters
heightFromFloor

number | null

Returns

void


heightFromGround

Get Signature

get heightFromGround(): number | null

Returns

number | null

Set Signature

set heightFromGround(heightFromGround): void

Parameters
heightFromGround

number | null

Returns

void


lat

Get Signature

get lat(): number

Returns

number

Set Signature

set lat(lat): void

Parameters
lat

number

Returns

void


latitude

Get Signature

get latitude(): number

Returns

number

Set Signature

set latitude(_): void

Parameters
_

number

Returns

void


level

Get Signature

get level(): Level_t

Returns

Level_t

Set Signature

set level(level): void

Parameters
level

Level_t

Returns

void


lng

Get Signature

get lng(): number

Returns

number

Set Signature

set lng(lng): void

Parameters
lng

number

Returns

void


longitude

Get Signature

get longitude(): number

Returns

number

Set Signature

set longitude(_): void

Parameters
_

number

Returns

void

Methods

bearingTo()

bearingTo(location2): number

Parameters

location2

Coordinates

Returns

number


clone()

clone(): Coordinates

Deep clone coordinates

Returns

Coordinates


destinationPoint()

destinationPoint(distance, bearing, elevation?): Coordinates

Parameters

distance

number

bearing

number

elevation?

number | null

Returns

Coordinates

Throws

if elevation is defined and point altitude is not defined


distanceTo()

distanceTo(location2): number

Returns a distance between two points in meters

Parameters

location2

Coordinates

Returns

number


equals()

equals(other): boolean

Parameters

other

Coordinates

Returns

boolean


equalsWithoutLevel()

equalsWithoutLevel(other, eps?, epsAlt?): boolean

Parameters

other

Coordinates

eps?

number

epsAlt?

number

Returns

boolean


getSegmentProjection()

getSegmentProjection(p1, p2): Coordinates | null

https://stackoverflow.com/questions/1299567/how-to-calculate-distance-from-a-point-to-a-line-segment-on-a-sphere Adapted to ECEF

Parameters

p1

Coordinates

p2

Coordinates

Returns

Coordinates | null


move()

move(distance, bearing, elevation?): this

Source: http://www.movable-type.co.uk/scripts/latlong.html#destPoint

Parameters

distance

number

bearing

number

elevation?

number | null

Returns

this

Throws

if elevation is defined and point altitude is not defined


toCompressedJson()

toCompressedJson(): CoordinatesCompressedJson

Returns

CoordinatesCompressedJson


toJson()

toJson(): CoordinatesJson

Returns

CoordinatesJson


toString()

toString(): string

Input / Output

Returns

string


wrap()

wrap(): void

Returns

void


bearingTo()

static bearingTo(point1, point2): number

Parameters

point1

Coordinates

point2

Coordinates

Returns

number


distanceBetween()

static distanceBetween(point1, point2): number

Parameters

point1

Coordinates

point2

Coordinates

Returns

number


equals()

static equals(pos1, pos2, eps?, epsAlt?): boolean

Parameters

pos1

Coordinates | null

pos2

Coordinates | null

eps?

number

epsAlt?

number

Returns

boolean


equalsWithoutLevel()

static equalsWithoutLevel(pos1, pos2, eps?, epsAlt?): boolean

Parameters

pos1

Coordinates | null

pos2

Coordinates | null

eps?

number

epsAlt?

number

Returns

boolean


fromCompressedJson()

static fromCompressedJson(json): Coordinates

Parameters

json

CoordinatesCompressedJson

Returns

Coordinates


fromECEF()

static fromECEF(ecef): Coordinates

Parameters

ecef

Vector3_t

Returns

Coordinates


fromJson()

static fromJson(json): Coordinates

Parameters

json

CoordinatesJson

Returns

Coordinates