Geometry Library

Espacio de nombres encoding

namespace google.maps.geometry.encoding
library "geometry"

Utilidades para codificar y decodificar polilíneas

const {encoding} = await google.maps.importLibrary("geometry");
decodePath
decodePath(encodedPath)
Parámetros:
  • encodedPath: string
Valor de retorno: Array<LatLng>
Decodifica una cadena de ruta de acceso codificada en una secuencia de LatLngs.
encodePath
encodePath(path)
Valor de retorno: string
Codifica una secuencia de LatLngs en una cadena de ruta de acceso codificada.

Espacio de nombres spherical

namespace google.maps.geometry.spherical
library "geometry"

Son funciones de utilidad para calcular ángulos, distancias y áreas geodésicas. El radio predeterminado es el de la Tierra, que es de 6,378,137 metros.

const {spherical} = await google.maps.importLibrary("geometry");
computeArea
computeArea(path[, radiusOfSphere])
Valor de retorno: number
Devuelve el área sin signo de una ruta cerrada, en el rango [0, 2×pi×radio²]. El área calculada usa las mismas unidades que el radio. De forma predeterminada, el radiusOfSphere es el radio de la Tierra en metros, en cuyo caso el área se expresa en metros cuadrados. Pasar un Circle requiere que el radius se establezca en un valor no negativo. Además, el círculo no debe cubrir más del 100% de la esfera. Cuando se pasa un LatLngBounds, el LatLng del sur no puede estar más al norte que el LatLng del norte.
computeDistanceBetween
computeDistanceBetween(from, to[, radius])
Parámetros:
Valor de retorno: number
Devuelve la distancia, en metros, entre dos LatLngs. De manera opcional, puedes especificar un radio personalizado. El radio predeterminado es el radio de la Tierra.
computeHeading
computeHeading(from, to)
Parámetros:
Valor de retorno: number
Devuelve el rumbo de un LatLng a otro LatLng. Las orientaciones se expresan en grados en el sentido de las manecillas del reloj desde el norte, dentro del rango [-180,180).
computeLength
computeLength(path[, radius])
Parámetros:
Valor de retorno: number
Devuelve la longitud de la ruta de acceso determinada.
computeOffset
computeOffset(from, distance, heading[, radius])
Parámetros:
Valor de retorno: LatLng
Devuelve el LatLng que resulta de mover una distancia desde un origen en el rumbo especificado (expresado en grados en el sentido de las manecillas del reloj desde el norte).
computeOffsetOrigin
computeOffsetOrigin(to, distance, heading[, radius])
Parámetros:
Valor de retorno: LatLng|null
Muestra la ubicación de origen cuando se proporciona un destino LatLng, los metros recorridos y el rumbo original. Las orientaciones se expresan en grados en el sentido de las manecillas del reloj desde el norte. Esta función devuelve null cuando no hay ninguna solución disponible.
computeSignedArea
computeSignedArea(loop[, radius])
Parámetros:
Valor de retorno: number
Devuelve el área con signo de una ruta cerrada, en la que el sentido contrario a las manecillas del reloj es positivo, en el rango [-2×pi×radio², 2×pi×radio²]. El área calculada usa las mismas unidades que el radio. El radio predeterminado es el radio de la Tierra en metros, en cuyo caso el área se expresa en metros cuadrados.

El área se calcula con el método de transporte paralelo; el transporte paralelo alrededor de una ruta cerrada en la esfera unitaria se tuerce en un ángulo que es igual al área encerrada por la ruta. Este método es más simple, preciso y sólido que la triangulación con Girard, l'Huilier o Eriksson en cada triángulo. En particular, como no triangula, no sufre inestabilidad, excepto en el caso inevitable en el que un borde (no una diagonal) del polígono abarca 180 grados.
interpolate
interpolate(from, to, fraction)
Parámetros:
Valor de retorno: LatLng
Devuelve el LatLng que se encuentra en la fracción determinada de la ruta entre el LatLng de origen y el LatLng de destino.
AlphatraversePath
traversePath(path, fraction)
Parámetros:
Valor de retorno: LatLngLiteral
Devuelve la posición que se encuentra en la fracción determinada de la ruta de acceso especificada. Si se pasan objetos LatLngAltitude, actualmente se ignora la altitud, pero es posible que las versiones futuras la tengan en cuenta.

Espacio de nombres poly

namespace google.maps.geometry.poly
library "geometry"

Son funciones de utilidad para hacer cálculos que incluyen polígonos y polilíneas.

const {poly} = await google.maps.importLibrary("geometry");
containsLocation
containsLocation(point, polygon)
Parámetros:
Valor de retorno: boolean
Calcula si el punto determinado se encuentra dentro del polígono o círculo especificado. Pasar un Circle requiere que se establezca center y que radius se establezca en un valor no negativo.
isLocationOnEdge
isLocationOnEdge(point, poly[, tolerance])
Parámetros:
Valor de retorno: boolean
Calcula si el punto determinado se encuentra en una polilínea o cerca de ella, o en el borde de un polígono, dentro de una tolerancia especificada. Devuelve true cuando la diferencia entre la latitud y la longitud del punto proporcionado, y el punto más cercano en el borde, es menor que la tolerancia. La tolerancia predeterminada es de 10-9 grados.