import Position from './Position'; export type CoordinateJson = { x: number; y: number; z?: number; }; export type CoordinateArray = [number, number] | [number, number, number]; export type CoordinateLike = Coordinate | CoordinateJson | CoordinateArray; /** * 坐标 `Coordinate` 的实现,例如一个地理坐标点(经度,纬度) * * @english * * Represents a coordinate point
* e.g.
* A geographical point (longitude, latitude) * @example * * ```ts * const coord = new Coordinate(0, 0); * ``` * @example * * ```ts * const coord = new Coordinate([ 0, 0 ]); * ``` * @example * * ```ts * const coord = new Coordinate({ x : 0, y : 0 }); * ``` * @category basic types */ declare class Coordinate extends Position { /** * 将一个或多个坐标对象转换为GeoJSON风格的坐标。 * * @english * * Convert one or more Coordinate objects to GeoJSON style coordinates * @param coordinates - coordinates to convert * @example * * ```ts * // result is [[100,0], [101,1]] * const numCoords = Coordinate.toNumberArrays([new Coordinate(100,0), new Coordinate(101,1)]); * ``` */ static toNumberArrays(coordinates: Coordinate): any; static toNumberArrays(coordinates: Coordinate[]): any; static toNumberArrays(coordinates: Coordinate[][]): any; static toNumberArrays(coordinates: Coordinate[][][]): any; /** * 将一个或多个GeoJSON风格的坐标转换为坐标对象。 * * @english * * Convert one or more GeoJSON style coordiantes to Coordinate objects * @param coordinates - coordinates to convert * @example * * ```ts * const coordinates = Coordinate.toCoordinates([[100,0], [101,1]]); * ``` */ static toCoordinates(coordinates: CoordinateArray | CoordinateArray[] | CoordinateArray[][] | Coordinate | Coordinate[] | Coordinate[][]): Coordinate | Coordinate[] | Coordinate[][]; /** * 使用差值与另一个坐标进行比较,判断是否临近 * * @english * * Compare with another Coordinate with a delta * @param p * @param delta */ closeTo(p: Coordinate, delta?: number): boolean; /** * 返回该坐标的经纬度绝对值的坐标对象(不会改变原始数据) * * @english * * Return abs value of the coordinate * @returns abs Coordinate */ abs(): Coordinate; /** * 类似于数学中的四舍五入,对坐标的 x 和 y 进行舍入,返回一个新 Coordinate * * @english * * Like math.round, rounding the coordinate's xy. * @returns rounded coordinate */ round(): Coordinate; /** * 对坐标的 x 和 y 向上取整,返回一个新 Coordinate * * @english * * Like math.ceil, ceil the coordinate's xy. * @returns ceiled coordinate */ ceil(): Coordinate; /** * 对坐标的 x 和 y 向下取整,返回一个新 Coordinate * * @english * * Like math.floor, floor the coordinate's xy. * @returns floored coordinate */ floor(): Coordinate; /** * 返回当前坐标的 copy * * @english * * Returns a copy of the coordinate * @returns copy */ copy(): Coordinate; /** * 坐标数字保留指定位数的小数 * * @english * * Formats coordinate number using fixed-coordinate notation. * @param n - The number of digits to appear after the decimal coordinate * @returns fixed coordinate */ toFixed(n: number): Coordinate; /** * 与传入坐标相加,返回一个新 Coordinate * * @english * * Returns the result of addition of another coordinate. * @param x - coordinate to add * @returns result */ add(x: CoordinateLike): Coordinate; /** * 与传入坐标相加,返回一个新 Coordinate * * @english * * Returns the result of addition of another coordinate. * @param x - coordinate to add * @param y - coordinate to add * @returns result */ add(x: number, y: number, z?: number): Coordinate; /** * 与传入坐标相减,返回一个新 Coordinate。 * * @english * * Returns the result of subtraction of another coordinate. * @param x - coordinate to add * @returns result */ sub(x: CoordinateLike): Coordinate; /** * 与传入坐标相减,返回一个新 Coordinate。 * * @english * * Returns the result of subtraction of another coordinate. * @param x - coordinate to add * @param y - coordinate to add * @param z - altitude to add * @returns result */ sub(x: number, y: number, z?: number): Coordinate; /** * Returns the result of multiplication of the current coordinate by the given number. * @param ratio - ratio to multi * @returns result */ multi(ratio: number): Coordinate; /** * 与另外一个 coordinate 进行比较,以查看它们是否相等 * * @english * * Compare with another coordinate to see whether they are equal. * @param c - coordinate to compare */ equals(c: Coordinate): boolean; } export default Coordinate; //# sourceMappingURL=Coordinate.d.ts.map