vuepress-plugin-photomap
Version:
VuePress2插件,用于在文章中插入照片地图组件,类似Apple相册的PhotoMap功能
51 lines (50 loc) • 1.37 kB
TypeScript
/**
* 坐标转换工具函数
*/
export interface CoordinateInfo {
latitude: number;
longitude: number;
altitude?: number;
}
export interface DMSCoordinate {
degrees: number;
minutes: number;
seconds: number;
direction: 'N' | 'S' | 'E' | 'W';
}
/**
* 度分秒(DMS)转十进制度(DD)
*/
export declare const dmsToDecimal: (dms: number[], direction: string) => number;
/**
* 十进制度(DD)转度分秒(DMS)
*/
export declare const decimalToDMS: (decimal: number, isLatitude?: boolean) => DMSCoordinate;
/**
* 验证经纬度坐标是否有效
*/
export declare const validateCoordinates: (lat: number, lng: number) => boolean;
/**
* 计算两点之间的距离(使用Haversine公式)
* @param coord1 起点坐标
* @param coord2 终点坐标
* @returns 距离(单位:米)
*/
export declare const calculateDistance: (coord1: CoordinateInfo, coord2: CoordinateInfo) => number;
/**
* 计算地理边界框
*/
export declare const calculateBounds: (coordinates: CoordinateInfo[]) => {
north: number;
south: number;
east: number;
west: number;
};
/**
* 计算地理中心点
*/
export declare const calculateCenter: (coordinates: CoordinateInfo[]) => CoordinateInfo;
/**
* 格式化坐标显示
*/
export declare const formatCoordinate: (coord: CoordinateInfo, format?: "decimal" | "dms") => string;