s2-tools
Version:
A collection of geospatial tools primarily designed for WGS84, Web Mercator, and S2.
105 lines • 3.43 kB
TypeScript
/**
* Copyright 2018 Bernie Jenny, Monash University, Melbourne, Australia.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* Equal Earth is a projection inspired by the Robinson projection, but unlike
* the Robinson projection retains the relative size of areas. The projection
* was designed in 2018 by Bojan Savric, Tom Patterson and Bernhard Jenny.
*
* Publication:
* Bojan Savric, Tom Patterson & Bernhard Jenny (2018). The Equal Earth map
* projection, International Journal of Geographical Information Science,
* DOI: 10.1080/13658816.2018.1504949
*
* Code released August 2018
* Ported to JavaScript and adapted for mapshaper-proj by Matthew Bloch August 2018
* Modified for proj4js by Andreas Hocevar by Andreas Hocevar March 2024
*/
import { ProjectionBase } from '.';
import type { VectorPoint } from '../../geometry';
import type { ProjectionParams, ProjectionTransform } from '.';
/**
* # Equal Earth
*
* **Classification**: Pseudo cylindrical
*
* **Available forms**: Forward and inverse, spherical and ellipsoidal projection
*
* **Defined area**: Global
*
* **Alias**: eqearth
*
* **Domain**: 2D
*
* **Input type**: Geodetic coordinates
*
* **Output type**: Projected coordinates
*
* ## Projection String
* ```
* +proj=eqearth
* ```
*
* ## Usage
*
* The Equal Earth projection is designed for world maps and retains the relative size of areas. It was inspired by the Robinson projection.
*
* Example:
* ```
* $ echo 122 47 | proj +proj=eqearth +R=1
* 1.55 0.89
* ```
*
* ## Parameters
*
* **Note**: All parameters for this projection are optional.
*
* ### Optional
* - `+lon_0` (Central meridian)
* - `+ellps` (Ellipsoid name)
* - `+R` (Radius of the sphere)
* - `+x_0` (False easting)
* - `+y_0` (False northing)
*
* ## Further Reading
* - [The Equal Earth map projection](https://www.researchgate.net/profile/Bojan_Savric2/publication/326879978_The_Equal_Earth_map_projection/links/5b69d0ae299bf14c6d951b77/The-Equal-Earth-map-projection.pdf) by Bojan Savric, Tom Patterson & Bernhard Jenny (2018)
*
* 
*/
export declare class EqualEarth extends ProjectionBase implements ProjectionTransform {
name: string;
static names: string[];
es: number;
A1: number;
A2: number;
A3: number;
A4: number;
M: number;
/**
* Preps an EqualEarth projection
* @param params - projection specific parameters
*/
constructor(params?: ProjectionParams);
/**
* EqualEarth forward equations--mapping lon-lat to x-y
* @param p - lon-lat WGS84 point
*/
forward(p: VectorPoint): void;
/**
* EqualEarth inverse equations--mapping x-y to lon-lat
* @param p - EqualEarth point
*/
inverse(p: VectorPoint): void;
}
//# sourceMappingURL=eqearth.d.ts.map